5.6. Canaux


5.6.1. Chaînes et abonnements

Les canaux sont des ressources personnalisées qui définissent une couche unique de transmission et de persistance des événements. Une fois que des événements ont été envoyés à un canal à partir d'une source ou d'un producteur d'événements, ces événements peuvent être envoyés à plusieurs services Knative ou à d'autres puits à l'aide d'un abonnement.

Channel workflow overview

Vous pouvez créer des canaux en instanciant un objet Channel pris en charge et configurer les tentatives de re-livraison en modifiant la spécification delivery dans un objet Subscription.

Après avoir créé un objet Channel, un webhook d'admission à la mutation ajoute un ensemble de propriétés spec.channelTemplate pour l'objet Channel en fonction de l'implémentation du canal par défaut. Par exemple, pour une implémentation par défaut de InMemoryChannel, l'objet Channel se présente comme suit :

apiVersion: messaging.knative.dev/v1
kind: Channel
metadata:
  name: example-channel
  namespace: default
spec:
  channelTemplate:
    apiVersion: messaging.knative.dev/v1
    kind: InMemoryChannel

Le contrôleur de canal crée ensuite l'instance de canal d'appui sur la base de la configuration spec.channelTemplate.

Note

Les propriétés de spec.channelTemplate ne peuvent pas être modifiées après la création, car elles sont définies par le mécanisme de canal par défaut et non par l'utilisateur.

Lorsque ce mécanisme est utilisé dans l'exemple précédent, deux objets sont créés : un canal générique de soutien et un canal InMemoryChannel. Si vous utilisez une implémentation de canal par défaut différente, le canal InMemoryChannel est remplacé par un canal spécifique à votre implémentation. Par exemple, avec le courtier Knative pour Apache Kafka, le canal KafkaChannel est créé.

Le canal d'appui agit comme un proxy qui copie ses abonnements sur l'objet canal créé par l'utilisateur et définit le statut de l'objet canal créé par l'utilisateur pour refléter le statut du canal d'appui.

5.6.1.1. Types de mise en œuvre des canaux

InMemoryChannel et KafkaChannel peuvent être utilisés avec OpenShift Serverless pour le développement.

Les limitations des canaux de type InMemoryChannel sont les suivantes :

  • Aucune persistance des événements n'est disponible. Si un pod tombe en panne, les événements relatifs à ce pod sont perdus.
  • InMemoryChannel les canaux n'implémentent pas l'ordre des événements, de sorte que deux événements reçus simultanément dans le canal peuvent être transmis à un abonné dans n'importe quel ordre.
  • Si un abonné rejette un événement, il n'y a pas de tentative de re-livraison par défaut. Vous pouvez configurer les tentatives de re-livraison en modifiant la spécification delivery dans l'objet Subscription.

5.6.2. Création de canaux

Les canaux sont des ressources personnalisées qui définissent une couche unique de transmission et de persistance des événements. Une fois que des événements ont été envoyés à un canal à partir d'une source ou d'un producteur d'événements, ces événements peuvent être envoyés à plusieurs services Knative ou à d'autres puits à l'aide d'un abonnement.

Channel workflow overview

Vous pouvez créer des canaux en instanciant un objet Channel pris en charge et configurer les tentatives de re-livraison en modifiant la spécification delivery dans un objet Subscription.

5.6.2.1. Créer un canal en utilisant la perspective de l'administrateur

Une fois Knative Eventing installé sur votre cluster, vous pouvez créer un canal en utilisant la perspective Administrateur.

Conditions préalables

  • OpenShift Serverless Operator et Knative Eventing sont installés sur votre cluster OpenShift Container Platform.
  • Vous vous êtes connecté à la console web et vous vous trouvez dans la perspective Administrator.
  • Vous disposez des droits d'administrateur de cluster pour OpenShift Container Platform.

Procédure

  1. Dans la perspective Administrator de la console web OpenShift Container Platform, naviguez vers Serverless Eventing.
  2. Dans la liste Create, sélectionnez Channel. Vous serez dirigé vers la page Channel.
  3. Sélectionnez le type d'objet Channel que vous souhaitez créer dans la liste Type.

    Note

    Actuellement, seuls les objets de canal InMemoryChannel sont pris en charge par défaut. Les canaux Knative pour Apache Kafka sont disponibles si vous avez installé l'implémentation du courtier Knative pour Apache Kafka sur OpenShift Serverless.

  4. Cliquez sur Create.

5.6.2.2. Créer un canal en utilisant la perspective du développeur

L'utilisation de la console web d'OpenShift Container Platform offre une interface utilisateur rationalisée et intuitive pour créer un canal. Une fois Knative Eventing installé sur votre cluster, vous pouvez créer un canal en utilisant la console web.

Conditions préalables

  • Vous vous êtes connecté à la console web de OpenShift Container Platform.
  • OpenShift Serverless Operator et Knative Eventing sont installés sur votre cluster OpenShift Container Platform.
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.

Procédure

  1. Dans la perspective Developer, naviguez vers Add Channel.
  2. Sélectionnez le type d'objet Channel que vous souhaitez créer dans la liste Type.
  3. Cliquez sur Create.

Vérification

  • Confirmez l'existence du canal en vous rendant sur la page Topology.

    View the channel in the Topology view

5.6.2.3. Créer un canal en utilisant le CLI Knative

L'utilisation de la CLI Knative (kn) pour créer des canaux offre une interface utilisateur plus rationnelle et intuitive que la modification directe des fichiers YAML. Vous pouvez utiliser la commande kn channel create pour créer un canal.

Conditions préalables

  • OpenShift Serverless Operator et Knative Eventing sont installés sur le cluster.
  • Vous avez installé le CLI Knative (kn).
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.

Procédure

  • Créer un canal :

    kn channel create <channel_name> --type <channel_type> $ kn channel create <channel_name>

    Le type de canal est facultatif, mais lorsqu'il est spécifié, il doit être donné dans le format Group:Version:Kind. Par exemple, vous pouvez créer un objet InMemoryChannel:

    $ kn channel create mychannel --type messaging.knative.dev:v1:InMemoryChannel

    Exemple de sortie

    Channel 'mychannel' created in namespace 'default'.

Vérification

  • Pour confirmer que le canal existe désormais, dressez la liste des canaux existants et examinez les résultats :

    $ kn channel list

    Exemple de sortie

    kn channel list
    NAME        TYPE              URL                                                     AGE   READY   REASON
    mychannel   InMemoryChannel   http://mychannel-kn-channel.default.svc.cluster.local   93s   True

Suppression d'un canal

  • Supprimer un canal :

    kn channel delete <nom_du_canal>

5.6.2.4. Création d'un canal de mise en œuvre par défaut à l'aide de YAML

La création de ressources Knative à l'aide de fichiers YAML utilise une API déclarative, qui vous permet de décrire les canaux de manière déclarative et reproductible. Pour créer un canal sans serveur à l'aide de YAML, vous devez créer un fichier YAML qui définit un objet Channel, puis l'appliquer à l'aide de la commande oc apply.

Conditions préalables

  • OpenShift Serverless Operator et Knative Eventing sont installés sur le cluster.
  • Installez le CLI OpenShift (oc).
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.

Procédure

  1. Créer un objet Channel sous la forme d'un fichier YAML :

    apiVersion: messaging.knative.dev/v1
    kind: Channel
    metadata:
      name: example-channel
      namespace: default
  2. Appliquer le fichier YAML :

    $ oc apply -f <filename>

5.6.2.5. Créer un canal pour Apache Kafka en utilisant YAML

La création de ressources Knative à l'aide de fichiers YAML utilise une API déclarative, qui vous permet de décrire les canaux de manière déclarative et reproductible. Vous pouvez créer un canal Knative Eventing soutenu par des sujets Kafka en créant un canal Kafka. Pour créer un canal Kafka à l'aide de YAML, vous devez créer un fichier YAML qui définit un objet KafkaChannel, puis l'appliquer à l'aide de la commande oc apply.

Conditions préalables

  • OpenShift Serverless Operator, Knative Eventing et la ressource personnalisée KnativeKafka sont installés sur votre cluster OpenShift Container Platform.
  • Installez le CLI OpenShift (oc).
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.

Procédure

  1. Créer un objet KafkaChannel sous la forme d'un fichier YAML :

    apiVersion: messaging.knative.dev/v1beta1
    kind: KafkaChannel
    metadata:
      name: example-channel
      namespace: default
    spec:
      numPartitions: 3
      replicationFactor: 1
    Important

    Seule la version v1beta1 de l'API pour les objets KafkaChannel sur OpenShift Serverless est prise en charge. N'utilisez pas la version v1alpha1 de cette API, car elle est désormais obsolète.

  2. Appliquer le fichier YAML KafkaChannel:

    $ oc apply -f <filename>

5.6.2.6. Prochaines étapes

5.6.3. Raccordement des canaux aux éviers

Les événements envoyés à un canal par une source ou un producteur d'événements peuvent être transmis à un ou plusieurs puits à l'aide de subscriptions. Vous pouvez créer des abonnements en configurant un objet Subscription, qui spécifie le canal et le puits (également connu sous le nom de subscriber) qui consomme les événements envoyés à ce canal.

5.6.3.1. Créer un abonnement à l'aide de la perspective du développeur

Une fois que vous avez créé un canal et un puits d'événements, vous pouvez créer un abonnement pour activer la livraison d'événements. L'utilisation de la console web d'OpenShift Container Platform offre une interface utilisateur rationalisée et intuitive pour créer un abonnement.

Conditions préalables

  • OpenShift Serverless Operator, Knative Serving et Knative Eventing sont installés sur votre cluster OpenShift Container Platform.
  • Vous vous êtes connecté à la console web.
  • Vous avez créé un puits d'événements, tel qu'un service Knative, et un canal.
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.

Procédure

  1. Dans la perspective Developer, naviguez jusqu'à la page Topology.
  2. Créez un abonnement en utilisant l'une des méthodes suivantes :

    1. Survolez le canal pour lequel vous souhaitez créer un abonnement et faites glisser la flèche. L'option Add Subscription s'affiche.

      Create a subscription for the channel
      1. Sélectionnez votre évier dans la liste Subscriber.
      2. Cliquez sur Add.
    2. Si le service est disponible dans la vue Topology sous le même espace de noms ou projet que le canal, cliquez sur le canal pour lequel vous souhaitez créer un abonnement et faites glisser la flèche directement sur un service pour créer immédiatement un abonnement du canal à ce service.

Vérification

  • Une fois l'abonnement créé, il est représenté par une ligne reliant le canal au service dans la vue Topology:

    Subscription in the Topology view

5.6.3.2. Création d'un abonnement à l'aide de YAML

Après avoir créé un canal et un puits d'événements, vous pouvez créer un abonnement pour permettre la livraison d'événements. La création de ressources Knative à l'aide de fichiers YAML utilise une API déclarative, qui vous permet de décrire les abonnements de manière déclarative et reproductible. Pour créer un abonnement à l'aide de YAML, vous devez créer un fichier YAML qui définit un objet Subscription, puis l'appliquer à l'aide de la commande oc apply.

Conditions préalables

  • OpenShift Serverless Operator et Knative Eventing sont installés sur le cluster.
  • Installez le CLI OpenShift (oc).
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.

Procédure

  • Créer un objet Subscription:

    • Créez un fichier YAML et copiez-y l'exemple de code suivant :

      apiVersion: messaging.knative.dev/v1beta1
      kind: Subscription
      metadata:
        name: my-subscription 1
        namespace: default
      spec:
        channel: 2
          apiVersion: messaging.knative.dev/v1beta1
          kind: Channel
          name: example-channel
        delivery: 3
          deadLetterSink:
            ref:
              apiVersion: serving.knative.dev/v1
              kind: Service
              name: error-handler
        subscriber: 4
          ref:
            apiVersion: serving.knative.dev/v1
            kind: Service
            name: event-display
      1
      Nom de l'abonnement.
      2
      Paramètres de configuration pour le canal auquel l'abonnement se connecte.
      3
      Paramètres de configuration pour la livraison d'événements. Ce paramètre indique à l'abonnement ce qu'il advient des événements qui ne peuvent pas être livrés à l'abonné. Lorsque cette option est configurée, les événements qui n'ont pas pu être consommés sont envoyés à deadLetterSink. L'événement est abandonné, aucune nouvelle livraison de l'événement n'est tentée et une erreur est consignée dans le système. La valeur deadLetterSink doit être une destination.
      4
      Paramètres de configuration de l'abonné. Il s'agit du puits d'événements vers lequel les événements sont acheminés à partir du canal.
    • Appliquer le fichier YAML :

      $ oc apply -f <filename>

5.6.3.3. Créer un abonnement en utilisant le CLI Knative

Après avoir créé un canal et un puits d'événements, vous pouvez créer un abonnement pour permettre la livraison d'événements. L'utilisation de la CLI Knative (kn) pour créer des abonnements offre une interface utilisateur plus rationnelle et intuitive que la modification directe des fichiers YAML. Vous pouvez utiliser la commande kn subscription create avec les drapeaux appropriés pour créer un abonnement.

Conditions préalables

  • OpenShift Serverless Operator et Knative Eventing sont installés sur votre cluster OpenShift Container Platform.
  • Vous avez installé le CLI Knative (kn).
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.

Procédure

  • Créer un abonnement pour connecter un puits à un canal :

    $ kn subscription create <subscription_name> \
      --channel <group:version:kind>:<channel_name> \ 1
      --sink <sink_prefix>:<sink_name> \ 2
      --sink-dead-letter <sink_prefix>:<sink_name> 3
    1
    --channel spécifie la source des événements du nuage à traiter. Vous devez fournir le nom du canal. Si vous n'utilisez pas le canal par défaut InMemoryChannel qui est soutenu par la ressource personnalisée Channel, vous devez préfixer le nom du canal par <group:version:kind> pour le type de canal spécifié. Par exemple, il s'agira de messaging.knative.dev:v1beta1:KafkaChannel pour un canal soutenu par Apache Kafka.
    2
    --sink spécifie la destination cible à laquelle l'événement doit être livré. Par défaut, le site <sink_name> est interprété comme un service Knative de ce nom, dans le même espace de noms que l'abonnement. Vous pouvez spécifier le type de l'évier en utilisant l'un des préfixes suivants :
    ksvc
    Un service Knative.
    channel
    Un canal qui doit être utilisé comme destination. Seuls les types de canaux par défaut peuvent être référencés ici.
    broker
    Un courtier en concours complet.
    3
    Facultatif : --sink-dead-letter est un drapeau facultatif qui peut être utilisé pour spécifier un puits vers lequel les événements doivent être envoyés dans les cas où les événements ne sont pas livrés. Pour plus d'informations, voir la documentation OpenShift Serverless Event delivery.

    Example command

    $ kn subscription create mysubscription --channel mychannel --sink ksvc:event-display

    Exemple de sortie

    Subscription 'mysubscription' created in namespace 'default'.

Vérification

  • Pour confirmer que le canal est connecté au puits d'événements, ou subscriber, par un abonnement, dressez la liste des abonnements existants et inspectez la sortie :

    $ kn subscription list

    Exemple de sortie

    NAME            CHANNEL             SUBSCRIBER           REPLY   DEAD LETTER SINK   READY   REASON
    mysubscription   Channel:mychannel   ksvc:event-display                              True

Suppression d'un abonnement

  • Supprimer un abonnement :

    kn subscription delete <nom_de_l'abonnement>

5.6.3.4. Création d'un abonnement à l'aide de la perspective de l'administrateur

Après avoir créé un canal et un puits d'événements, également appelé subscriber, vous pouvez créer un abonnement pour permettre la livraison d'événements. Les abonnements sont créés en configurant un objet Subscription, qui spécifie le canal et l'abonné à qui livrer les événements. Vous pouvez également spécifier certaines options propres à l'abonné, telles que la manière de gérer les échecs.

Conditions préalables

  • OpenShift Serverless Operator et Knative Eventing sont installés sur votre cluster OpenShift Container Platform.
  • Vous vous êtes connecté à la console web et vous vous trouvez dans la perspective Administrator.
  • Vous disposez des droits d'administrateur de cluster pour OpenShift Container Platform.
  • Vous avez créé un canal Knative.
  • Vous avez créé un service Knative à utiliser en tant qu'abonné.

Procédure

  1. Dans la perspective Administrator de la console web OpenShift Container Platform, naviguez vers Serverless Eventing.
  2. Dans l'onglet Channel, sélectionnez le menu Options kebab pour la chaîne à laquelle vous souhaitez ajouter un abonnement.
  3. Cliquez sur Add Subscription dans la liste.
  4. Dans la boîte de dialogue Add Subscription, sélectionnez un Subscriber pour l'abonnement. L'abonné est le service Knative qui reçoit les événements du canal.
  5. Cliquez sur Add.

5.6.3.5. Prochaines étapes

5.6.4. Mise en œuvre du canal par défaut

Vous pouvez utiliser la carte de configuration default-ch-webhook pour spécifier l'implémentation du canal par défaut de Knative Eventing. Vous pouvez spécifier l'implémentation du canal par défaut pour l'ensemble du cluster ou pour un ou plusieurs espaces de noms. Actuellement, les types de canaux InMemoryChannel et KafkaChannel sont pris en charge.

5.6.4.1. Configuration de la mise en œuvre du canal par défaut

Conditions préalables

  • Vous disposez de droits d'administrateur sur OpenShift Container Platform.
  • Vous avez installé OpenShift Serverless Operator et Knative Eventing sur votre cluster.
  • Si vous souhaitez utiliser les canaux Knative pour Apache Kafka en tant qu'implémentation de canal par défaut, vous devez également installer le CR KnativeKafka sur votre cluster.

Procédure

  • Modifier la ressource personnalisée KnativeEventing pour ajouter des détails de configuration pour la carte de configuration default-ch-webhook:

    apiVersion: operator.knative.dev/v1beta1
    kind: KnativeEventing
    metadata:
      name: knative-eventing
      namespace: knative-eventing
    spec:
      config: 1
        default-ch-webhook: 2
          default-ch-config: |
            clusterDefault: 3
              apiVersion: messaging.knative.dev/v1
              kind: InMemoryChannel
              spec:
                delivery:
                  backoffDelay: PT0.5S
                  backoffPolicy: exponential
                  retry: 5
            namespaceDefaults: 4
              my-namespace:
                apiVersion: messaging.knative.dev/v1beta1
                kind: KafkaChannel
                spec:
                  numPartitions: 1
                  replicationFactor: 1
    1
    Dans spec.config, vous pouvez spécifier les cartes de configuration pour lesquelles vous souhaitez ajouter des configurations modifiées.
    2
    La carte de configuration default-ch-webhook peut être utilisée pour spécifier l'implémentation du canal par défaut pour le cluster ou pour un ou plusieurs espaces de noms.
    3
    La configuration du type de canal par défaut à l'échelle du cluster. Dans cet exemple, l'implémentation du canal par défaut pour le cluster est InMemoryChannel.
    4
    La configuration du type de canal par défaut de l'espace de noms. Dans cet exemple, l'implémentation du canal par défaut pour l'espace de noms my-namespace est KafkaChannel.
    Important

    La configuration d'une valeur par défaut spécifique à l'espace de nommage est prioritaire sur les paramètres applicables à l'ensemble du cluster.

5.6.5. Configuration de la sécurité pour les canaux

5.6.5.1. Configuration de l'authentification TLS pour les canaux Knative pour Apache Kafka

Transport Layer Security (TLS) est utilisé par les clients et les serveurs Apache Kafka pour chiffrer le trafic entre Knative et Kafka, ainsi que pour l'authentification. TLS est la seule méthode de cryptage du trafic prise en charge par l'implémentation du courtier Knative pour Apache Kafka.

Conditions préalables

  • Vous avez des permissions d'administrateur de cluster ou dédié sur OpenShift Container Platform.
  • OpenShift Serverless Operator, Knative Eventing et KnativeKafka CR sont installés sur votre cluster OpenShift Container Platform.
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.
  • Vous disposez d'un certificat d'autorité de certification pour le cluster Kafka stocké dans un fichier .pem.
  • Vous disposez d'un certificat client pour le cluster Kafka et d'une clé stockée sous forme de fichiers .pem.
  • Installez le CLI OpenShift (oc).

Procédure

  1. Créez les fichiers de certificats en tant que secrets dans l'espace de noms que vous avez choisi :

    $ oc create secret -n <namespace> generic <kafka_auth_secret> \
      --from-file=ca.crt=caroot.pem \
      --from-file=user.crt=certificate.pem \
      --from-file=user.key=key.pem
    Important

    Utilisez les noms de clés ca.crt, user.crt, et user.key. Ne les modifiez pas.

  2. Commencez à modifier la ressource personnalisée KnativeKafka:

    $ oc edit knativekafka
  3. Faites référence à votre secret et à l'espace de noms du secret :

    apiVersion: operator.serverless.openshift.io/v1alpha1
    kind: KnativeKafka
    metadata:
      namespace: knative-eventing
      name: knative-kafka
    spec:
      channel:
        authSecretName: <kafka_auth_secret>
        authSecretNamespace: <kafka_auth_secret_namespace>
        bootstrapServers: <bootstrap_servers>
        enabled: true
      source:
        enabled: true
    Note

    Veillez à spécifier le port correspondant dans le serveur d'amorçage.

    Par exemple :

    apiVersion: operator.serverless.openshift.io/v1alpha1
    kind: KnativeKafka
    metadata:
      namespace: knative-eventing
      name: knative-kafka
    spec:
      channel:
        authSecretName: tls-user
        authSecretNamespace: kafka
        bootstrapServers: eventing-kafka-bootstrap.kafka.svc:9094
        enabled: true
      source:
        enabled: true

5.6.5.2. Configuration de l'authentification SASL pour les canaux Knative pour Apache Kafka

Simple Authentication and Security Layer (SASL) est utilisé par Apache Kafka pour l'authentification. Si vous utilisez l'authentification SASL sur votre cluster, les utilisateurs doivent fournir des informations d'identification à Knative pour communiquer avec le cluster Kafka ; sinon, les événements ne peuvent pas être produits ou consommés.

Conditions préalables

  • Vous avez des permissions d'administrateur de cluster ou dédié sur OpenShift Container Platform.
  • OpenShift Serverless Operator, Knative Eventing et KnativeKafka CR sont installés sur votre cluster OpenShift Container Platform.
  • Vous avez créé un projet ou avez accès à un projet avec les rôles et autorisations appropriés pour créer des applications et d'autres charges de travail dans OpenShift Container Platform.
  • Vous disposez d'un nom d'utilisateur et d'un mot de passe pour un cluster Kafka.
  • Vous avez choisi le mécanisme SASL à utiliser, par exemple PLAIN, SCRAM-SHA-256, ou SCRAM-SHA-512.
  • Si TLS est activé, vous avez également besoin du fichier de certificat ca.crt pour le cluster Kafka.
  • Installez le CLI OpenShift (oc).

Procédure

  1. Créez les fichiers de certificats en tant que secrets dans l'espace de noms que vous avez choisi :

    $ oc create secret -n <namespace> generic <kafka_auth_secret> \
      --from-file=ca.crt=caroot.pem \
      --from-literal=password="SecretPassword" \
      --from-literal=saslType="SCRAM-SHA-512" \
      --from-literal=user="my-sasl-user"
    • Utilisez les noms de clés ca.crt, password, et sasl.mechanism. Ne les modifiez pas.
    • Si vous souhaitez utiliser SASL avec des certificats d'autorité de certification publique, vous devez utiliser l'indicateur tls.enabled=true, plutôt que l'argument ca.crt, lors de la création du secret. Par exemple :

      $ oc create secret -n <namespace> generic <kafka_auth_secret> \
        --from-literal=tls.enabled=true \
        --from-literal=password="SecretPassword" \
        --from-literal=saslType="SCRAM-SHA-512" \
        --from-literal=user="my-sasl-user"
  2. Commencez à modifier la ressource personnalisée KnativeKafka:

    $ oc edit knativekafka
  3. Faites référence à votre secret et à l'espace de noms du secret :

    apiVersion: operator.serverless.openshift.io/v1alpha1
    kind: KnativeKafka
    metadata:
      namespace: knative-eventing
      name: knative-kafka
    spec:
      channel:
        authSecretName: <kafka_auth_secret>
        authSecretNamespace: <kafka_auth_secret_namespace>
        bootstrapServers: <bootstrap_servers>
        enabled: true
      source:
        enabled: true
    Note

    Veillez à spécifier le port correspondant dans le serveur d'amorçage.

    Par exemple :

    apiVersion: operator.serverless.openshift.io/v1alpha1
    kind: KnativeKafka
    metadata:
      namespace: knative-eventing
      name: knative-kafka
    spec:
      channel:
        authSecretName: scram-user
        authSecretNamespace: kafka
        bootstrapServers: eventing-kafka-bootstrap.kafka.svc:9093
        enabled: true
      source:
        enabled: true
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.