Answers: <h1>Upstream Answer -- Networking Problem.</h1>
  <p>Though I'm getting this on a fresh install I was guided to this which indicates a bigger problem,</p>
  <pre><code>kubectl -n kubeapps exec deployment/kubeapps -- curl -sI https://charts.bitnami.com/bitnami/index.yaml
  </code></pre>
  <p>this returns &quot;command terminated with exit code 6&quot;.</p>
  <p>I can further identify the problem with <code>nslookup</code>, without using Kube Apps by following the [k3s tutorial on troubleshooting dns]<a href="https://rancher.com/docs/rancher/v2.5/en/troubleshooting/dns/" rel="nofollow noreferrer">https://rancher.com/docs/rancher/v2.5/en/troubleshooting/dns/</a>)</p>
  <pre><code>kubectl run -it --rm --restart=Never busybox --image=busybox:1.28 -- nslookup www.google.com
  </code></pre>
  <h2>Follow up</h2>
  <p>Now that I know what this problem is (with external DNS resolution), I've asked this question for more information <a href="https://devops.stackexchange.com/questions/16161/newly-installed-k3s-cluster-on-fresh-os-install-can-not-resolve-external-domains">Newly installed k3s cluster on fresh OS install can not resolve external domains, when the host can?</a></p>
  
Answers: CC BY-SA 4.0
Answers: 2022-06-14T16:01:15.327Z
Answers: 2022-06-16T08:11:24.470Z
Answers: 2022-06-16T08:11:24.470Z
Answers: Evan Carroll
Body: <p>I followed the <a href="https://devops.stackexchange.com/a/16109/18965">setup instructions for <code>k3s</code>, and <code>kubectl</code> in this answer</a>. I'm getting this error when I boot into KubeApps</p>
  <blockquote>
  <p>An error occurred while fetching the catalog: Invalid GetAvailablePackageSummaries response from the plugin helm.packages: rpc error: code = Internal desc = Unable to fetch chart categories: pq: relation &quot;charts&quot; does not exist.</p>
  </blockquote>
  <p>How can I resolve this error?</p>
  <p><a href="https://i.sstatic.net/wHUaI.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/wHUaI.png" alt="Picture of the Error" /></a></p>
  <p>When I pull the logs, I see,</p>
  <blockquote>
  <p>I0608 21:01:12.935502       1 root.go:32] asset-syncer has been configured with: <code>server.Config{DatabaseURL:&quot;kubeapps-postgresql:5432&quot;, DatabaseName:&quot;assets&quot;, DatabaseUser:&quot;postgres&quot;, DatabasePassword:&quot;E0mn56sa5d&quot;, Debug:false, Namespace:&quot;kubeapps&quot;, OciRepositories:[]string{}, TlsInsecureSkipVerify:false, FilterRules:&quot;&quot;, PassCredentials:false, UserAgent:&quot;asset-syncer/2.4.5 (kubeapps/2.4.5)&quot;, UserAgentComment:&quot;kubeapps/2.4.5&quot;, GlobalReposNamespace:&quot;kubeapps&quot;, KubeappsNamespace:&quot;&quot;, AuthorizationHeader:&quot;&quot;, DockerConfigJson:&quot;&quot;}</code></p>
  </blockquote>
  <p>Followed by,</p>
  <pre><code>Usage:
    asset-syncer sync [REPO NAME] [REPO URL] [REPO TYPE] [flags]
  
  Flags:
    -h, --help                       help for sync
        --oci-repositories strings   List of OCI Repositories in case the type is OCI
        --version                    version for sync
  
  Global Flags:
        --add_dir_header                   If true, adds the file directory to the header of the log messages
        --alsologtostderr                  log to standard error as well as files
        --database-name string             Name of the database to use (default &quot;charts&quot;)
        --database-url string              Database URL (default &quot;localhost:5432&quot;)
        --database-user string             Database user
        --debug                            verbose logging
        --filter-rules string              JSON blob with the rules to filter assets
        --global-repos-namespace string    Namespace for global repos (default &quot;kubeapps&quot;)
        --log_backtrace_at traceLocation   when logging hits line file:N, emit a stack trace (default :0)
        --log_dir string                   If non-empty, write log files in this directory
        --log_file string                  If non-empty, use this log file
        --log_file_max_size uint           Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
        --logtostderr                      log to standard error instead of files (default true)
        --namespace string                 Namespace of the repository being synced
        --one_output                       If true, only write logs to their native severity level (vs also writing to each lower severity level)
        --pass-credentials                 pass credentials to all domains
        --skip_headers                     If true, avoid header prefixes in the log messages
        --skip_log_headers                 If true, avoid headers when opening log files
        --stderrthreshold severity         logs at or above this threshold go to stderr (default 2)
        --tls-insecure-skip-verify         Skip TLS verification
        --user-agent-comment string        UserAgent comment used during outbound requests
    -v, --v Level                          number for the log level verbosity (default 3)
        --vmodule moduleSpec               comma-separated list of pattern=N settings for file-filtered logging
  </code></pre>
  <p>As well as this errors,</p>
  <blockquote>
  <p>Error: Error: Get <code>https://charts.bitnami.com/bitnami/index.yaml</code>: dial tcp: lookup charts.bitnami.com on 10.43.0.10:53: server misbehaving</p>
  </blockquote>
  <hr />
  <p>I filed a bug upstream, but I'm not sure if this is a bug or a misconfiguration:</p>
  <ul>
  <li><a href="https://github.com/vmware-tanzu/kubeapps/issues/4882#issue-1265184794" rel="nofollow noreferrer">https://github.com/vmware-tanzu/kubeapps/issues/4882#issue-1265184794</a></li>
  </ul>
  
Tags: <k3s><kubeapps>
Title: KubeApps: Invalid GetAvailablePackageSummaries response from the plugin helm.packages: ... Unable to fetch chart categories
UserDisplayName: Evan Carroll
ThreadText: # KubeApps: Invalid GetAvailablePackageSummaries response from the plugin helm.packages: ... Unable to fetch chart categories
  
  (Asked by: username_0 on 2022-06-08)
  
  I followed the [setup instructions for `k3s`, and `kubectl` in this answer](https://devops.stackexchange.com/a/16109/18965). I'm getting this error when I boot into KubeApps
  
  > An error occurred while fetching the catalog: Invalid GetAvailablePackageSummaries response from the plugin helm.packages: rpc error: code = Internal desc = Unable to fetch chart categories: pq: relation "charts" does not exist.
  
  How can I resolve this error?
  
  [![Picture of the Error](https://i.sstatic.net/wHUaI.png)](https://i.sstatic.net/wHUaI.png)
  
  When I pull the logs, I see,
  
  > I0608 21:01:12.935502 1 root.go:32] asset-syncer has been configured with: `server.Config{DatabaseURL:"kubeapps-postgresql:5432", DatabaseName:"assets", DatabaseUser:"postgres", DatabasePassword:"E0mn56sa5d", Debug:false, Namespace:"kubeapps", OciRepositories:[]string{}, TlsInsecureSkipVerify:false, FilterRules:"", PassCredentials:false, UserAgent:"asset-syncer/2.4.5 (kubeapps/2.4.5)", UserAgentComment:"kubeapps/2.4.5", GlobalReposNamespace:"kubeapps", KubeappsNamespace:"", AuthorizationHeader:"", DockerConfigJson:""}`
  
  Followed by,
  
  ```
  Usage:
    asset-syncer sync [REPO NAME] [REPO URL] [REPO TYPE] [flags]
  
  Flags:
    -h, --help                       help for sync
        --oci-repositories strings   List of OCI Repositories in case the type is OCI
        --version                    version for sync
  
  Global Flags:
        --add_dir_header                   If true, adds the file directory to the header of the log messages
        --alsologtostderr                  log to standard error as well as files
        --database-name string             Name of the database to use (default "charts")
        --database-url string              Database URL (default "localhost:5432")
        --database-user string             Database user
        --debug                            verbose logging
        --filter-rules string              JSON blob with the rules to filter assets
        --global-repos-namespace string    Namespace for global repos (default "kubeapps")
        --log_backtrace_at traceLocation   when logging hits line file:N, emit a stack trace (default :0)
        --log_dir string                   If non-empty, write log files in this directory
        --log_file string                  If non-empty, use this log file
        --log_file_max_size uint           Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
        --logtostderr                      log to standard error instead of files (default true)
        --namespace string                 Namespace of the repository being synced
        --one_output                       If true, only write logs to their native severity level (vs also writing to each lower severity level)
        --pass-credentials                 pass credentials to all domains
        --skip_headers                     If true, avoid header prefixes in the log messages
        --skip_log_headers                 If true, avoid headers when opening log files
        --stderrthreshold severity         logs at or above this threshold go to stderr (default 2)
        --tls-insecure-skip-verify         Skip TLS verification
        --user-agent-comment string        UserAgent comment used during outbound requests
    -v, --v Level                          number for the log level verbosity (default 3)
        --vmodule moduleSpec               comma-separated list of pattern=N settings for file-filtered logging
  
  ```
  
  As well as this errors,
  
  > Error: Error: Get `https://charts.bitnami.com/bitnami/index.yaml`: dial tcp: lookup charts.bitnami.com on 10.43.0.10:53: server misbehaving
  
  ---
  
  I filed a bug upstream, but I'm not sure if this is a bug or a misconfiguration:
  
  * <https://github.com/vmware-tanzu/kubeapps/issues/4882#issue-1265184794>
  
  **Tags:** k3s, kubeapps
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_0 on 2022-06-14. Score: 0 | Accepted answer
  
  # Upstream Answer -- Networking Problem.
  
  Though I'm getting this on a fresh install I was guided to this which indicates a bigger problem,
  
  ```
  kubectl -n kubeapps exec deployment/kubeapps -- curl -sI https://charts.bitnami.com/bitnami/index.yaml
  
  ```
  
  this returns "command terminated with exit code 6".
  
  I can further identify the problem with `nslookup`, without using Kube Apps by following the [k3s tutorial on troubleshooting dns]<https://rancher.com/docs/rancher/v2.5/en/troubleshooting/dns/>)
  
  ```
  kubectl run -it --rm --restart=Never busybox --image=busybox:1.28 -- nslookup www.google.com
  
  ```
  
  ## Follow up
  
  Now that I know what this problem is (with external DNS resolution), I've asked this question for more information [Newly installed k3s cluster on fresh OS install can not resolve external domains, when the host can?](https://devops.stackexchange.com/questions/16161/newly-installed-k3s-cluster-on-fresh-os-install-can-not-resolve-external-domains)
  
  
  ---
  
  