Troubleshooting and Stopping the Demo¶
Use the following sections to troubleshoot the demo and stop it when you are finished viewing it.
Troubleshooting the scripted demo¶
If the start script does not complete successfully, go through the following troubleshooting steps.
Docker¶
Upon startup, if the output is similar to below, it is possible that the environment is not supported or
cp-demo
was not started properly. Read the pre-requisites and follow proper instructions at Module 1.WARNING: The REPOSITORY variable is not set. Defaulting to a blank string. WARNING: The SSL_CIPHER_SUITES variable is not set. Defaulting to a blank string. WARNING: The CONNECTOR_VERSION variable is not set. Defaulting to a blank string. WARNING: The CONTROL_CENTER_KSQL_WIKIPEDIA_URL variable is not set. Defaulting to a blank string. WARNING: The CONTROL_CENTER_KSQL_WIKIPEDIA_ADVERTISED_URL variable is not set. Defaulting to a blank string. Pulling zookeeper (/cp-zookeeper:6.1.0)... ERROR: invalid reference format
Verify that the status of all the Docker containers show
Up
state.docker-compose ps
In the advanced Docker preferences settings, verify the following resources are allocated to Docker:
- Memory: at least 8 GB (default is 2 GB)
- CPU cores: at least 2 cores
Verify you have not run out of disk storage needed for Docker’s “disk image” file (Docker documentation).
Logs¶
If the script errors out before completing, or if there are Docker containers that are not in
Up
state, view the container’s logs with the commanddocker-compose logs [container]
and look for error messages and exceptions.docker-compose logs
If there are any errors that indicate issues with TLS communication, verify that the TLS certificates were properly generated and that there are no errors in the following files:
ls scripts/security/*.log
Security¶
If there are any errors that indicate issues with TLS communication, force TLS certificates to be regenerated by starting the script with
CLEAN=true
:CLEAN=true ./scripts/start.sh
If a command that communicates with ZooKeeper appears to be failing with the error
org.apache.zookeeper.KeeperException$NoAuthException
, change the container you are running the command from to be eitherkafka1
orkafka2
. This is because ZooKeeper is configured for SASL/DIGEST-MD5, and any commands that communicate with ZooKeeper need properties set for ZooKeeper authentication.
Validate¶
Verify there are messages in the Kafka topics, including
wikipedia.parsed
:./scripts/consumers/listen.sh
Run the validation scripts to verify that they pass.
cd scripts/validate/
CLI login¶
If you are running
cp-demo
for a long time and issuing Confluent CLI commands on thetools
container that error out with:Your token has expired. You are now logged out. Error: You must log in to run that command.
Then run the following command, which refreshes the token by logging back in to MDS:
./scripts/helper/refresh_mds_login.sh
Stop the Confluent Platform environment¶
Stop the consumer group
app
to stop consuming from topicwikipedia.parsed
. Note that the command below stops the consumers gracefully withkill -15
, so the consumers follow the shutdown sequence../scripts/app/stop_consumer_app_group_graceful.sh
Stop the Docker environment, destroy all components and clear all Docker volumes.
./scripts/stop.sh
Stop the Confluent Cloud environment¶
If you ran the Module 2: Deploy Hybrid Confluent Platform and Confluent Cloud Environment portion of this tutorial, which included creating resources in Confluent Cloud, follow the clean up procedure below to avoid unexpected Confluent Cloud charges.
Any Confluent Cloud example uses real Confluent Cloud resources. After you are done running a Confluent Cloud example, manually verify that all Confluent Cloud resources are destroyed to avoid unexpected charges.
Make sure that you’re still using the
ccloud
CLI context.confluent context use ccloud
Delete the Confluent Cloud service account you created for the cluster link. This will also delete all API keys associated with the account.
confluent iam service-account delete ${SERVICE_ACCOUNT_ID}
Destroy your Confluent Cloud ksqlDB cluster. Go to https://confluent.cloud/environments -> Select cp-demo-cluster -> ksqlDB -> Select “delete”.
Destroy your Confluent Cloud cluster. Go to https://confluent.cloud/environments -> Select cp-demo-cluster -> Cluster Overview -> Cluster Settings -> Select “Delete cluster”.
Destroy your Confluent Cloud environment. Go to https://confluent.cloud/environments and delete the environment “cp-demo-env” that you created.
Note
The Health+ cluster will be shown in the Confluent Cloud Console until it ages out.