Create a Kafka service
Apply the following object on your namespace, as specified by its YAML description.
Example to create a Kafka instance
apiVersion: exoscale.appcat.vshn.io/v1
kind: ExoscaleKafka
metadata:
  name: my-kafka-example (1)
  namespace: my-namespace (2)
spec:
  parameters:
    service:
      kafkaSettings:
        connections_max_idle_ms: 60000 (3)
      zone: ch-dk-2 (4)
    size:
      plan: startup-2 (5)
  writeConnectionSecretToRef:
    name: kafka-creds (6)| 1 | Instance name | 
| 2 | The namespace where the object will be created. | 
| 3 | Specify custom Kafka settings [optional] | 
| 4 | The Exoscale zone to use, see list of regions | 
| 5 | See reference for a list of plans | 
| 6 | Secret where the connection details are provisioned. This secret shouldn’t exist before creation. | 
| To get more information about all available configuration options, please see the API Reference | 
Inspect your new Kafka service
$ oc get exoscalekafka
NAME               PLAN         ZONE      VERSION   READY   CONNECTION-SECRET   AGE
my-kafka-example   startup-2    ch-dk-2   3.2       True    kafka-creds         15mWhen you see True in the READY column, it means the instance is provisioned and ready to use.
| The provisioning time of Kafka can be quite long, and it might take up to 15 minutes for the instance to be ready. | 
Find the connection details
The connection details are stored in a secret. You can retrieve them with the following command:
$ oc get secrets kafka-creds -o yamlThe output of the command above is a secret specification with the following structure:
apiVersion: v1
kind: Secret
metadata:
  name: kafka-creds
stringData:
  KAFKA_HOST: my-kafka.my-cloud.com (1)
  KAFKA_NODES: 127.0.0.1:21701 127.0.0.2:21701 127.0.0.3:21701 (2)
  KAFKA_PORT: 21701 (3)
  KAFKA_URI: my-kafka.my-cloud.com:21701 (4)
  ca.crt: | (5)
    -----BEGIN CERTIFICATE-----
    HexValues
    -----END CERTIFICATE-----
  service.cert: | (6)
    -----BEGIN CERTIFICATE-----
    HexValues
    -----END CERTIFICATE-----
  service.key: | (7)
    -----BEGIN CERTIFICATE-----
    HexValues
    -----END CERTIFICATE-----| 1 | Hostname for the Kafka instance | 
| 2 | List of Kafka Node IPs | 
| 3 | Port the Kafka instance listens on | 
| 4 | Full URI including port number | 
| 5 | Certificate Authority to verify the Kafka instance certificate | 
| 6 | Client certificate to authenticate to the instance | 
| 7 | Client key to authenticate to the instance | 
| Not all fields apply to all providers |