<a id="co-troubleshoot-deployment"></a>

# Common Deployment Issues

Resolve common deployment issues in Confluent for Kubernetes using the following steps.

## Issue: CFK Helm charts return an image pull secret error

When you install or update CFK with the `helm` command, you might get the
following error, which you can ignore.

```text
Unable to retrieve some image pull secrets (confluent-registry); attempting
to pull the image may not succeed.
```

## Issue: CFK Helm charts aren’t found

When the local cache of the CFK charts is out of date, you get a “not found”
error from the `helm` commands install or update CFK.

**Solution:** Update the latest information about the CFK charts from the Helm
repositories:

```bash
helm repo update
```

## Issue: Unable to install Kafka on Kubernetes 1.23 or later with AWS EBS

You need the EBS CSI driver to make CFK and Kafka work on Kubernetes 1.23 or
later.

**Solution:** Enable and set up the EBS-CSI add-on as described in
[Managing the Amazon EBS CSI driver as an Amazon EKS add-on](https://docs.aws.amazon.com/eks/latest/userguide/managing-ebs-csi.html).

## Issue: Errors with container process and directory permissions when deploying Confluent Platform 6.2.x

You might see a permission error when starting ZooKeeper and other Confluent Platform 6.2.x
components with CFK. For example:

```text
Error: failed to start container "zookeeper": Error response from daemon: OCI
runtime create failed: container_linux.go:367: starting container process
caused: chdir to cwd ("/home/appuser") set in config.json failed: permission
denied: unknown
```

Confluent Platform 6.2.x maps the default user `appuser` to ID `1000` with base
directory `/home/appuser`.

**Solution:** Set the Pod Security Context to match the new Confluent Platform configuration.

1. Change the `podSecurityContext` configuration for all the Confluent Platform
   component custom resources (CRs):
   ```yaml
   spec:
     podTemplate:
       podSecurityContext:
         fsGroup: 1000
         runAsUser: 1000
         runAsNonRoot: true
   ```
2. Apply the CR changes for each component:
   ```bash
   kubectl apply -f <component CR>
   ```
