10.2. Installation du stockage des journaux
Il est possible d’utiliser OpenShift CLI (oc) ou Red Hat OpenShift Service sur la console web AWS pour déployer un log store sur votre Red Hat OpenShift Service sur le cluster AWS.
La version Logging 5.9 ne contient pas une version mise à jour de l’opérateur OpenShift Elasticsearch. Actuellement, si vous utilisez l’opérateur OpenShift Elasticsearch publié avec Logging 5.8, il continuera à fonctionner avec Logging jusqu’à ce que l’EOL de Logging 5.8. Comme alternative à l’utilisation de l’opérateur OpenShift Elasticsearch pour gérer le stockage de journaux par défaut, vous pouvez utiliser l’opérateur Loki. Consultez Platform Agnostic Operators pour plus d’informations sur les dates du cycle de vie de l’enregistrement.
10.2.1. Déploiement d’un log store Loki Copier lienLien copié sur presse-papiers!
Il est possible d’utiliser l’opérateur Loki pour déployer un log store interne sur votre Red Hat OpenShift Service sur AWS cluster. Après avoir installé l’opérateur Loki, vous devez configurer le stockage d’objets Loki en créant un secret et créer une ressource personnalisée LokiStack (CR).
10.2.1.1. Dimensionnement du déploiement de Loki Copier lienLien copié sur presse-papiers!
Le dimensionnement pour Loki suit le format de 1x.<size> où la valeur 1x est le nombre d’instances et <size> spécifie les capacités de performance.
Il n’est pas possible de modifier le nombre 1x pour la taille du déploiement.
1x.demo | 1x.extra-petit | 1x.petit | 1x.médium | |
---|---|---|---|---|
Le transfert de données | Démo utiliser uniquement | 100 Go/jour | 500 Go/jour | 2 To/jour |
Requêtes par seconde (QPS) | Démo utiliser uniquement | 1-25 QPS à 200ms | 25-50 QPS à 200ms | 25-75 QPS à 200ms |
Facteur de réplication | Aucune. | 2 | 2 | 2 |
Demandes totales de CPU | Aucune. | 14 vCPUs | 34 vCPUs | 54 vCPUs |
Demandes CPU totales si vous utilisez la règle | Aucune. | 16 vCPUs | 42 vCPUs | 70 vCPUs |
Demandes totales de mémoire | Aucune. | 31GI | 67GI | 139GI |
Demandes totales de mémoire si vous utilisez la règle | Aucune. | 35GI | 83GI | 171GI |
Demandes totales de disque | 40GI | 430GI | 430GI | 590GI |
Demandes totales de disque si l’utilisation de la règle | 80GI | 750GI | 750GI | 910GI |
10.2.1.2. Installation de logging et de l’opérateur Loki à l’aide de la console Web Copier lienLien copié sur presse-papiers!
Afin d’installer et de configurer la connexion de votre Red Hat OpenShift Service sur le cluster AWS, un opérateur tel que Loki Operator pour le stockage des journaux doit être installé en premier. Cela peut être fait à partir de OperatorHub dans la console Web.
Conditions préalables
- Accès à un magasin d’objets pris en charge (AWS S3, Google Cloud Storage, Azure, Swift, Minio, OpenShift Data Foundation).
- Il y a des autorisations d’administrateur.
- Accès au service Red Hat OpenShift sur la console web AWS.
Procédure
-
Dans le Red Hat OpenShift Service sur AWS Web console Administrator perspective, allez à Opérateurs
OperatorHub. Entrez Loki Opérateur dans le champ Filtrer par mot-clé. Cliquez sur l’opérateur Loki dans la liste des opérateurs disponibles, puis cliquez sur Installer.
ImportantL’opérateur Loki communautaire n’est pas soutenu par Red Hat.
Choisissez stable ou stable-x.y comme canal de mise à jour.
NoteLe canal stable ne fournit que des mises à jour de la version la plus récente de l’enregistrement. Afin de continuer à recevoir des mises à jour pour les versions antérieures, vous devez changer votre canal d’abonnement en stable-x.y, où x.y représente la version majeure et mineure de la journalisation que vous avez installée. À titre d’exemple, stable-5.7.
L’opérateur Loki doit être déployé dans l’espace de noms du groupe d’opérateur mondial openshift-operators-redhat, de sorte que le mode Installation et Namespace installé sont déjà sélectionnés. Lorsque cet espace de noms n’existe pas déjà, il est créé pour vous.
Activez la surveillance des clusters recommandée par l’opérateur sur cet espace de noms.
Cette option définit l’étiquette openshift.io/cluster-monitoring: "vrai" étiquette dans l’objet Namespace. Il faut sélectionner cette option pour s’assurer que la surveillance des clusters gratte l’espace de noms openshift-operators-redhat.
Dans le cas de l’approbation de mise à jour, sélectionnez Automatique, puis cliquez sur Installer.
Lorsque la stratégie d’approbation de l’abonnement est définie sur Automatique, le processus de mise à jour démarre dès qu’une nouvelle version de l’opérateur est disponible dans le canal sélectionné. Lorsque la stratégie d’approbation est définie sur Manuel, vous devez approuver manuellement les mises à jour en attente.
Installez l’opérateur de journalisation Red Hat OpenShift:
-
Dans le Red Hat OpenShift Service sur la console web AWS, cliquez sur Opérateurs
OperatorHub. - Choisissez Red Hat OpenShift Logging dans la liste des opérateurs disponibles, puis cliquez sur Installer.
- Assurez-vous que l’espace de noms A spécifique sur le cluster est sélectionné sous Mode d’installation.
- Assurez-vous que l’espace de noms recommandé par l’opérateur est ouvert de connexion sous Namespace installé.
Activer l’opérateur recommande la surveillance des clusters sur cet espace de noms.
Cette option définit l’étiquette openshift.io/cluster-monitoring: "vrai" étiquette dans l’objet Namespace. Il faut sélectionner cette option pour s’assurer que la surveillance des clusters gratte l’espace de noms openshift-logging.
- Choisissez stable-5.y comme canal de mise à jour.
Choisissez une stratégie d’approbation.
- La stratégie automatique permet au gestionnaire de cycle de vie de l’opérateur (OLM) de mettre à jour automatiquement l’opérateur lorsqu’une nouvelle version est disponible.
- La stratégie du Manuel exige qu’un utilisateur ayant les informations d’identification appropriées approuve la mise à jour de l’opérateur.
- Cliquez sur Install.
-
Dans le Red Hat OpenShift Service sur la console web AWS, cliquez sur Opérateurs
-
Accédez à la page Opérateurs installés
Opérateurs installés. Cliquez sur l’onglet Toutes les instances. - Dans la liste déroulante Créer une nouvelle liste déroulante, sélectionnez LokiStack.
Choisissez la vue YAML, puis utilisez le modèle suivant pour créer un LokiStack CR:
Exemple LokiStack CR
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- J’utilise le nom logging-loki.
- 2
- Il faut spécifier l’espace de noms openshift-logging.
- 3
- Indiquez la taille du déploiement. Dans l’enregistrement 5.8 et les versions ultérieures, les options de taille prises en charge pour les instances de production de Loki sont 1x.extra-petit, 1x.petit, ou 1x.medium.
- 4
- Indiquez le nom de votre log store secret.
- 5
- Indiquez le type de stockage correspondant.
- 6
- Champ optionnel, journalisation 5.9 et ultérieure. Les valeurs configurées par l’utilisateur pris en charge sont les suivantes: statique est le mode d’authentification par défaut disponible pour tous les types de stockage d’objet pris en charge à l’aide d’informations d’identification stockées dans un jeton Secret. Dans ce mode, la configuration statique ne contient pas d’informations d’identification nécessaires au stockage d’objets. Au lieu de cela, ils sont générés pendant l’exécution à l’aide d’un service, ce qui permet des informations d’identification plus courtes et un contrôle beaucoup plus granulaire. Ce mode d’authentification n’est pas pris en charge pour tous les types de stockage d’objets. token-cco est la valeur par défaut lorsque Loki s’exécute en mode STS géré et utilise CCO sur les clusters STS/WIF.
- 7
- Indiquez le nom d’une classe de stockage pour le stockage temporaire. Afin d’obtenir des performances optimales, spécifiez une classe de stockage qui alloue le stockage en bloc. Les classes de stockage disponibles pour votre cluster peuvent être répertoriées à l’aide de la commande oc get storageclasses.
- 8
- LokiStack par défaut s’exécute en mode multi-locataires, qui ne peut pas être modifié. Il y a un locataire pour chaque type de journal : audit, infrastructure et journaux d’applications. Cela permet le contrôle d’accès pour les utilisateurs individuels et les groupes d’utilisateurs à différents flux de journaux.
ImportantIl n’est pas possible de modifier le nombre 1x pour la taille du déploiement.
- Cliquez sur Create.
Créer une instance OpenShift Logging:
-
Basculez à la page Administration
Définitions de ressources personnalisées. - Dans la page Définitions de ressources personnalisées, cliquez sur ClusterLogging.
- Dans la page Détails de la définition des ressources personnalisées, sélectionnez Afficher les instances dans le menu Actions.
Dans la page ClusterLoggings, cliquez sur Créer ClusterLogging.
Il vous faudra peut-être actualiser la page pour charger les données.
Dans le champ YAML, remplacer le code par ce qui suit:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
Basculez à la page Administration
La vérification
-
Allez à Opérateurs
Opérateurs installés. - Assurez-vous que le projet openshift-logging est sélectionné.
- Dans la colonne État, vérifiez que vous voyez des cocheries vertes avec InstallSucceeded et le texte à jour.
L’opérateur peut afficher un état d’échec avant la fin de l’installation. Lorsque l’opérateur installe avec un message InstallSucceeded, actualisez la page.
10.2.1.3. Créer un secret pour le stockage d’objets Loki en utilisant la console Web Copier lienLien copié sur presse-papiers!
Afin de configurer le stockage d’objets Loki, vous devez créer un secret. Créez un secret en utilisant le service Red Hat OpenShift sur la console web AWS.
Conditions préalables
- Il y a des autorisations d’administrateur.
- Accès au service Red Hat OpenShift sur la console web AWS.
- J’ai installé l’opérateur Loki.
Procédure
-
Allez à Charges de travail
Secrets dans la perspective de l’administrateur du Red Hat OpenShift Service sur la console web AWS. - Dans la liste déroulante Créer, sélectionnez À partir de YAML.
Créez un secret qui utilise les champs access_key_id et access_key_secret pour spécifier vos identifiants et les champs seau, point de terminaison et région pour définir l’emplacement de stockage d’objets. AWS est utilisé dans l’exemple suivant:
Exemple d’objet secret
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.1.4. Fédération d’identité de la charge de travail Copier lienLien copié sur presse-papiers!
La fédération d’identité de charge de travail permet l’authentification des magasins de journaux basés sur le cloud à l’aide de jetons de courte durée.
Conditions préalables
- Le Red Hat OpenShift Service sur AWS 4.14 et versions ultérieures
- Journalisation 5.9 et ultérieure
Procédure
- Lorsque vous utilisez le service Red Hat OpenShift sur la console web AWS pour installer l’opérateur Loki, les clusters qui utilisent des jetons de courte durée sont automatiquement détectés. Il vous est demandé de créer des rôles et de fournir les données nécessaires à l’opérateur Loki pour créer un objet CredentialsRequest, qui peuple un secret.
- Lorsque vous utilisez l’OpenShift CLI (oc) pour installer l’opérateur Loki, vous devez créer manuellement un objet d’abonnement en utilisant le modèle approprié pour votre fournisseur de stockage, comme indiqué dans les exemples suivants. Cette stratégie d’authentification n’est prise en charge que pour les fournisseurs de stockage indiqués.
Abonnement à l’échantillon Azure
Abonnement à l’échantillon AWS
10.2.1.5. Créer une ressource personnalisée LokiStack en utilisant la console Web Copier lienLien copié sur presse-papiers!
Il est possible de créer une ressource personnalisée LokiStack (CR) en utilisant le service Red Hat OpenShift sur la console web AWS.
Conditions préalables
- Il y a des autorisations d’administrateur.
- Accès au service Red Hat OpenShift sur la console web AWS.
- J’ai installé l’opérateur Loki.
Procédure
-
Accédez à la page Opérateurs installés
Opérateurs installés. Cliquez sur l’onglet Toutes les instances. - Dans la liste déroulante Créer une nouvelle liste déroulante, sélectionnez LokiStack.
Choisissez la vue YAML, puis utilisez le modèle suivant pour créer un LokiStack CR:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- J’utilise le nom logging-loki.
- 2
- Indiquez la taille du déploiement. Dans l’enregistrement 5.8 et les versions ultérieures, les options de taille prises en charge pour les instances de production de Loki sont 1x.extra-petit, 1x.petit, ou 1x.medium.
- 3
- Indiquez le secret utilisé pour votre stockage de journal.
- 4
- Indiquez le type de stockage correspondant.
- 5
- Champ optionnel, journalisation 5.9 et ultérieure. Les valeurs configurées par l’utilisateur pris en charge sont les suivantes: statique est le mode d’authentification par défaut disponible pour tous les types de stockage d’objet pris en charge à l’aide d’informations d’identification stockées dans un Secret. jetons pour les jetons de courte durée récupérés à partir d’une source d’identification. Dans ce mode, la configuration statique ne contient pas d’informations d’identification nécessaires au stockage d’objets. Au lieu de cela, ils sont générés pendant l’exécution à l’aide d’un service, ce qui permet des informations d’identification plus courtes et un contrôle beaucoup plus granulaire. Ce mode d’authentification n’est pas pris en charge pour tous les types de stockage d’objets. le token-cco est la valeur par défaut lorsque Loki s’exécute en mode STS géré et utilise CCO sur les clusters STS/WIF.
- 6
- Entrez le nom d’une classe de stockage pour le stockage temporaire. Afin d’obtenir des performances optimales, spécifiez une classe de stockage qui alloue le stockage en bloc. Les classes de stockage disponibles pour votre cluster peuvent être répertoriées à l’aide de la commande oc get storageclasses.
10.2.1.6. Installation de l’enregistrement et de l’opérateur Loki à l’aide du CLI Copier lienLien copié sur presse-papiers!
Afin d’installer et de configurer la connexion de votre Red Hat OpenShift Service sur le cluster AWS, un opérateur tel que Loki Operator pour le stockage des journaux doit être installé en premier. Cela peut être fait à partir du service Red Hat OpenShift sur AWS CLI.
Conditions préalables
- Il y a des autorisations d’administrateur.
- Installation de l’OpenShift CLI (oc).
- Accès à un magasin d’objets pris en charge. AWS S3, Google Cloud Storage, Azure, Swift, Minio ou OpenShift Data Foundation.
Le canal stable ne fournit que des mises à jour de la version la plus récente de l’enregistrement. Afin de continuer à recevoir des mises à jour pour les versions antérieures, vous devez changer votre canal d’abonnement en stable-x.y, où x.y représente la version majeure et mineure de la journalisation que vous avez installée. À titre d’exemple, stable-5.7.
Créer un objet Namespace pour Loki Operator:
Exemple d’objet Namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Il faut spécifier l’espace de noms openshift-operators-redhat. Afin d’éviter d’éventuels conflits avec les métriques, vous devez configurer la pile Prometheus Cluster Monitoring pour gratter les métriques de l’espace de noms openshift-operators-redhat et non de l’espace de noms openshift-operators. L’espace de noms openshift-operators peut contenir des opérateurs communautaires, qui ne sont pas fiables et pourraient publier une métrique avec le même nom qu’un service OpenShift Red Hat sur la métrique AWS, ce qui provoquerait des conflits.
- 2
- La valeur de chaîne qui spécifie l’étiquette comme indiqué pour s’assurer que la surveillance du cluster gratte l’espace de noms openshift-operators-redhat.
Appliquez l’objet Namespace en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un objet d’abonnement pour Loki Operator:
Exemple d’objet d’abonnement
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Il faut spécifier l’espace de noms openshift-operators-redhat.
- 2
- Indiquez stable, ou stable-5.<y> comme canal.
- 3
- Indiquez les redhat-operators. Lorsque votre Red Hat OpenShift Service sur AWS cluster est installé sur un réseau restreint, également appelé cluster déconnecté, spécifiez le nom de l’objet CatalogSource que vous avez créé lorsque vous avez configuré le gestionnaire de cycle de vie de l’opérateur (OLM).
Appliquer l’objet Abonnement en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un objet d’espace de noms pour l’opérateur de journalisation OpenShift Red Hat:
Exemple d’objet namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Appliquez l’objet namespace en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un objet OperatorGroup
Exemple d’objet OperatorGroup
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Il faut spécifier l’espace de noms openshift-logging.
Appliquez l’objet OperatorGroup en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un objet d’abonnement:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Il faut spécifier l’espace de noms openshift-logging.
- 2
- Indiquez stable, ou stable-5.<y> comme canal.
- 3
- Indiquez les redhat-operators. Lorsque votre Red Hat OpenShift Service sur AWS cluster est installé sur un réseau restreint, également appelé cluster déconnecté, spécifiez le nom de l’objet CatalogSource que vous avez créé lorsque vous avez configuré le gestionnaire de cycle de vie de l’opérateur (OLM).
Appliquer l’objet Abonnement en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un LokiStack CR:
Exemple LokiStack CR
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- J’utilise le nom logging-loki.
- 2
- Il faut spécifier l’espace de noms openshift-logging.
- 3
- Indiquez la taille du déploiement. Dans l’enregistrement 5.8 et les versions ultérieures, les options de taille prises en charge pour les instances de production de Loki sont 1x.extra-petit, 1x.petit, ou 1x.medium.
- 4
- Indiquez le nom de votre log store secret.
- 5
- Indiquez le type de stockage correspondant.
- 6
- Champ optionnel, journalisation 5.9 et ultérieure. Les valeurs configurées par l’utilisateur pris en charge sont les suivantes: statique est le mode d’authentification par défaut disponible pour tous les types de stockage d’objet pris en charge à l’aide d’informations d’identification stockées dans un Secret. jetons pour les jetons de courte durée récupérés à partir d’une source d’identification. Dans ce mode, la configuration statique ne contient pas d’informations d’identification nécessaires au stockage d’objets. Au lieu de cela, ils sont générés pendant l’exécution à l’aide d’un service, ce qui permet des informations d’identification plus courtes et un contrôle beaucoup plus granulaire. Ce mode d’authentification n’est pas pris en charge pour tous les types de stockage d’objets. le token-cco est la valeur par défaut lorsque Loki s’exécute en mode STS géré et utilise CCO sur les clusters STS/WIF.
- 7
- Indiquez le nom d’une classe de stockage pour le stockage temporaire. Afin d’obtenir des performances optimales, spécifiez une classe de stockage qui alloue le stockage en bloc. Les classes de stockage disponibles pour votre cluster peuvent être répertoriées à l’aide de la commande oc get storageclasses.
- 8
- LokiStack par défaut s’exécute en mode multi-locataires, qui ne peut pas être modifié. Il y a un locataire pour chaque type de journal : audit, infrastructure et journaux d’applications. Cela permet le contrôle d’accès pour les utilisateurs individuels et les groupes d’utilisateurs à différents flux de journaux.
Appliquez l’objet LokiStack CR en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un objet ClusterLogging CR:
Exemple ClusterLogging objet CR
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Appliquez l’objet ClusterLogging CR en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Contrôlez l’installation en exécutant la commande suivante:
oc get pods -n openshift-logging
$ oc get pods -n openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.1.7. Créer un secret pour le stockage d’objets Loki en utilisant le CLI Copier lienLien copié sur presse-papiers!
Afin de configurer le stockage d’objets Loki, vous devez créer un secret. Il est possible de le faire en utilisant l’OpenShift CLI (oc).
Conditions préalables
- Il y a des autorisations d’administrateur.
- J’ai installé l’opérateur Loki.
- Installation de l’OpenShift CLI (oc).
Procédure
Créez un secret dans le répertoire qui contient votre certificat et vos fichiers clés en exécutant la commande suivante:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Employez des secrets génériques ou opaques pour obtenir de meilleurs résultats.
La vérification
Assurez-vous qu’un secret a été créé en exécutant la commande suivante:
oc get secrets
$ oc get secrets
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.1.8. Créer une ressource personnalisée LokiStack en utilisant le CLI Copier lienLien copié sur presse-papiers!
Il est possible de créer une ressource personnalisée LokiStack (CR) à l’aide de l’OpenShift CLI (oc).
Conditions préalables
- Il y a des autorisations d’administrateur.
- J’ai installé l’opérateur Loki.
- Installation de l’OpenShift CLI (oc).
Procédure
- Créer un LokiStack CR:
Exemple LokiStack CR
- 1
- J’utilise le nom logging-loki.
- 2
- Indiquez la taille du déploiement. Dans l’enregistrement 5.8 et les versions ultérieures, les options de taille prises en charge pour les instances de production de Loki sont 1x.extra-petit, 1x.petit, ou 1x.medium.
- 3
- Indiquez le secret utilisé pour votre stockage de journal.
- 4
- Indiquez le type de stockage correspondant.
- 5
- Champ optionnel, journalisation 5.9 et ultérieure. Les valeurs configurées par l’utilisateur pris en charge sont les suivantes: statique est le mode d’authentification par défaut disponible pour tous les types de stockage d’objet pris en charge à l’aide d’informations d’identification stockées dans un Secret. jetons pour les jetons de courte durée récupérés à partir d’une source d’identification. Dans ce mode, la configuration statique ne contient pas d’informations d’identification nécessaires au stockage d’objets. Au lieu de cela, ils sont générés pendant l’exécution à l’aide d’un service, ce qui permet des informations d’identification plus courtes et un contrôle beaucoup plus granulaire. Ce mode d’authentification n’est pas pris en charge pour tous les types de stockage d’objets. le token-cco est la valeur par défaut lorsque Loki s’exécute en mode STS géré et utilise CCO sur les clusters STS/WIF.
- 6
- Entrez le nom d’une classe de stockage pour le stockage temporaire. Afin d’obtenir des performances optimales, spécifiez une classe de stockage qui alloue le stockage en bloc. Les classes de stockage disponibles pour votre cluster peuvent être répertoriées à l’aide de la commande oc get storageclasses.
- Appliquez le LokiStack CR en exécutant la commande suivante:
La vérification
Contrôlez l’installation en listant les pods dans le projet openshift-logging en exécutant la commande suivante et en observant la sortie:
oc get pods -n openshift-logging
$ oc get pods -n openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Confirmez que vous voyez plusieurs pods pour les composants de l’enregistrement, similaire à la liste suivante:
Exemple de sortie
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.2. Espace de stockage d’objets Loki Copier lienLien copié sur presse-papiers!
L’opérateur Loki prend en charge AWS S3, ainsi que d’autres magasins d’objets compatibles S3 tels que Minio et OpenShift Data Foundation. Azure, GCS et Swift sont également pris en charge.
La nomenclature recommandée pour le stockage Loki est logging-loki-<your_storage_provider>.
Le tableau suivant montre les valeurs de type dans la ressource personnalisée LokiStack (CR) pour chaque fournisseur de stockage. Consultez la section sur votre fournisseur de stockage pour plus d’informations.
Fournisseur de stockage | La valeur de type secret |
---|---|
AWS | a) S3 |
Azure | Azure |
Google Cloud | GCS |
À propos de Minio | a) S3 |
Fondation de données OpenShift | a) S3 |
C’est rapide | C’est rapide |
10.2.2.1. Le stockage AWS Copier lienLien copié sur presse-papiers!
Conditions préalables
- J’ai installé l’opérateur Loki.
- Installation de l’OpenShift CLI (oc).
- « vous avez créé un seau sur AWS.
- Il a créé une politique AWS IAM et un utilisateur IAM.
Procédure
Créez un secret de stockage d’objet avec le nom logging-loki-aws en exécutant la commande suivante:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.2.1.1. Le stockage AWS pour les clusters activés STS Copier lienLien copié sur presse-papiers!
Dans le cas où votre cluster est activé STS, Cloud Credential Operator (CCO) prend en charge l’authentification à court terme à l’aide de jetons AWS.
Il est possible de créer manuellement le secret de stockage d’objets Loki en exécutant la commande suivante:
oc -n openshift-logging create secret generic "logging-loki-aws" \ --from-literal=bucketnames="<s3_bucket_name>" \ --from-literal=region="<bucket_region>" \ --from-literal=audience="<oidc_audience>"
$ oc -n openshift-logging create secret generic "logging-loki-aws" \
--from-literal=bucketnames="<s3_bucket_name>" \
--from-literal=region="<bucket_region>" \
--from-literal=audience="<oidc_audience>"
- 1
- Annotation optionnelle, valeur par défaut est openshift.
10.2.2.2. Le stockage Azure Copier lienLien copié sur presse-papiers!
Conditions préalables
- J’ai installé l’opérateur Loki.
- Installation de l’OpenShift CLI (oc).
- « vous avez créé un seau sur Azure.
Procédure
Créez un secret de stockage d’objet avec le nom logging-loki-azure en exécutant la commande suivante:
oc create secret generic logging-loki-azure \ --from-literal=container="<azure_container_name>" \ --from-literal=environment="<azure_environment>" \ --from-literal=account_name="<azure_account_name>" \ --from-literal=account_key="<azure_account_key>"
$ oc create secret generic logging-loki-azure \ --from-literal=container="<azure_container_name>" \ --from-literal=environment="<azure_environment>" \
1 --from-literal=account_name="<azure_account_name>" \ --from-literal=account_key="<azure_account_key>"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Les valeurs d’environnement prises en charge sont AzureGlobal, AzureChinaCloud, Azure GermanCloud ou AzureUSGovernment.
10.2.2.2.1. Des clusters de stockage Azure pour Microsoft Entra Workload ID Copier lienLien copié sur presse-papiers!
Dans le cas où votre cluster est activé Microsoft Entra Workload ID, l’opérateur d’identification en nuage (CCO) prend en charge l’authentification à court terme à l’aide de l’ID de charge de travail.
Il est possible de créer manuellement le secret de stockage d’objets Loki en exécutant la commande suivante:
oc -n openshift-logging create secret generic logging-loki-azure \ --from-literal=environment="<azure_environment>" \ --from-literal=account_name="<storage_account_name>" \ --from-literal=container="<container_name>"
$ oc -n openshift-logging create secret generic logging-loki-azure \
--from-literal=environment="<azure_environment>" \
--from-literal=account_name="<storage_account_name>" \
--from-literal=container="<container_name>"
10.2.2.3. Google Cloud Platform stockage Copier lienLien copié sur presse-papiers!
Conditions préalables
- J’ai installé l’opérateur Loki.
- Installation de l’OpenShift CLI (oc).
- C’est sur Google Cloud Platform (GCP) que vous avez créé un projet.
- « vous avez créé un seau dans le même projet.
- Dans le même projet, vous avez créé un compte de service pour l’authentification GCP.
Procédure
- Copiez les informations d’identification de compte de service reçues de GCP dans un fichier appelé key.json.
Créez un secret de stockage d’objet avec le nom logging-loki-gcs en exécutant la commande suivante:
oc create secret generic logging-loki-gcs \ --from-literal=bucketname="<bucket_name>" \ --from-file=key.json="<path/to/key.json>"
$ oc create secret generic logging-loki-gcs \ --from-literal=bucketname="<bucket_name>" \ --from-file=key.json="<path/to/key.json>"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.2.4. Espace de stockage Minio Copier lienLien copié sur presse-papiers!
Conditions préalables
- J’ai installé l’opérateur Loki.
- Installation de l’OpenShift CLI (oc).
- Il y a Minio déployé sur votre cluster.
- C’est toi qui as créé un seau sur Minio.
Procédure
Créez un secret de stockage d’objet avec le nom logging-loki-minio en exécutant la commande suivante:
oc create secret generic logging-loki-minio \ --from-literal=bucketnames="<bucket_name>" \ --from-literal=endpoint="<minio_bucket_endpoint>" \ --from-literal=access_key_id="<minio_access_key_id>" \ --from-literal=access_key_secret="<minio_access_key_secret>"
$ oc create secret generic logging-loki-minio \ --from-literal=bucketnames="<bucket_name>" \ --from-literal=endpoint="<minio_bucket_endpoint>" \ --from-literal=access_key_id="<minio_access_key_id>" \ --from-literal=access_key_secret="<minio_access_key_secret>"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.2.5. Stockage OpenShift Data Foundation Copier lienLien copié sur presse-papiers!
Conditions préalables
- J’ai installé l’opérateur Loki.
- Installation de l’OpenShift CLI (oc).
- « vous avez déployé OpenShift Data Foundation.
- Configuration de votre cluster OpenShift Data Foundation pour le stockage d’objets.
Procédure
Créez une ressource personnalisée ObjectBucketClaim dans l’espace de noms openshift-logging:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Bénéficiez des propriétés du seau à partir de l’objet ConfigMap associé en exécutant la commande suivante:
BUCKET_HOST=$(oc get -n openshift-logging configmap loki-bucket-odf -o jsonpath='{.data.BUCKET_HOST}') BUCKET_NAME=$(oc get -n openshift-logging configmap loki-bucket-odf -o jsonpath='{.data.BUCKET_NAME}') BUCKET_PORT=$(oc get -n openshift-logging configmap loki-bucket-odf -o jsonpath='{.data.BUCKET_PORT}')
BUCKET_HOST=$(oc get -n openshift-logging configmap loki-bucket-odf -o jsonpath='{.data.BUCKET_HOST}') BUCKET_NAME=$(oc get -n openshift-logging configmap loki-bucket-odf -o jsonpath='{.data.BUCKET_NAME}') BUCKET_PORT=$(oc get -n openshift-logging configmap loki-bucket-odf -o jsonpath='{.data.BUCKET_PORT}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Bénéficiez de la clé d’accès au seau à partir du secret associé en exécutant la commande suivante:
ACCESS_KEY_ID=$(oc get -n openshift-logging secret loki-bucket-odf -o jsonpath='{.data.AWS_ACCESS_KEY_ID}' | base64 -d) SECRET_ACCESS_KEY=$(oc get -n openshift-logging secret loki-bucket-odf -o jsonpath='{.data.AWS_SECRET_ACCESS_KEY}' | base64 -d)
ACCESS_KEY_ID=$(oc get -n openshift-logging secret loki-bucket-odf -o jsonpath='{.data.AWS_ACCESS_KEY_ID}' | base64 -d) SECRET_ACCESS_KEY=$(oc get -n openshift-logging secret loki-bucket-odf -o jsonpath='{.data.AWS_SECRET_ACCESS_KEY}' | base64 -d)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créez un secret de stockage d’objet avec le nom logging-loki-odf en exécutant la commande suivante:
oc create -n openshift-logging secret generic logging-loki-odf \ --from-literal=access_key_id="<access_key_id>" \ --from-literal=access_key_secret="<secret_access_key>" \ --from-literal=bucketnames="<bucket_name>" \ --from-literal=endpoint="https://<bucket_host>:<bucket_port>"
$ oc create -n openshift-logging secret generic logging-loki-odf \ --from-literal=access_key_id="<access_key_id>" \ --from-literal=access_key_secret="<secret_access_key>" \ --from-literal=bucketnames="<bucket_name>" \ --from-literal=endpoint="https://<bucket_host>:<bucket_port>"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.2.6. Le stockage rapide Copier lienLien copié sur presse-papiers!
Conditions préalables
- J’ai installé l’opérateur Loki.
- Installation de l’OpenShift CLI (oc).
- C’est toi qui as créé un seau sur Swift.
Procédure
Créez un secret de stockage d’objet avec le nom logging-loki-swift en exécutant la commande suivante:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow En option, vous pouvez fournir des données spécifiques au projet, une région ou les deux en exécutant la commande suivante:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.3. Déploiement d’un log store Elasticsearch Copier lienLien copié sur presse-papiers!
L’opérateur Elasticsearch d’OpenShift vous permet de déployer une boutique de journal Elasticsearch interne sur votre Red Hat OpenShift Service sur AWS cluster.
La version Logging 5.9 ne contient pas une version mise à jour de l’opérateur OpenShift Elasticsearch. Actuellement, si vous utilisez l’opérateur OpenShift Elasticsearch publié avec Logging 5.8, il continuera à fonctionner avec Logging jusqu’à ce que l’EOL de Logging 5.8. Comme alternative à l’utilisation de l’opérateur OpenShift Elasticsearch pour gérer le stockage de journaux par défaut, vous pouvez utiliser l’opérateur Loki. Consultez Platform Agnostic Operators pour plus d’informations sur les dates du cycle de vie de l’enregistrement.
10.2.3.1. Considérations de stockage pour Elasticsearch Copier lienLien copié sur presse-papiers!
Il faut un volume persistant pour chaque configuration de déploiement Elasticsearch. Avec Red Hat OpenShift Service sur AWS, cela est réalisé à l’aide de revendications de volume persistantes (PVC).
Lorsque vous utilisez un volume local pour le stockage persistant, n’utilisez pas de volume de bloc brut, qui est décrit avec volumeMode: bloc dans l’objet LocalVolume. Elasticsearch ne peut pas utiliser les volumes de blocs bruts.
L’opérateur OpenShift Elasticsearch nomme les PVC en utilisant le nom de ressource Elasticsearch.
Fluentd expédie tous les journaux de journal systemd et /var/log/containers/*.log à Elasticsearch.
Elasticsearch nécessite une mémoire suffisante pour effectuer de grandes opérations de fusion. « si elle n’a pas assez de mémoire, elle devient insensible. Afin d’éviter ce problème, évaluez la quantité de données de journal d’application dont vous avez besoin et allouez environ le double de la capacité de stockage gratuite.
Lorsque la capacité de stockage est pleine de 85%, Elasticsearch cesse d’attribuer de nouvelles données au nœud. À 90%, Elasticsearch tente de déplacer des fragments existants de ce nœud vers d’autres nœuds si possible. Cependant, si les nœuds ont une capacité libre inférieure à 85 %, Elasticsearch rejette effectivement la création de nouveaux indices et devient RED.
Ces valeurs de filigrane basses et élevées sont des valeurs par défaut Elasticsearch dans la version actuelle. Ces valeurs par défaut peuvent être modifiées. Bien que les alertes utilisent les mêmes valeurs par défaut, vous ne pouvez pas modifier ces valeurs dans les alertes.
10.2.3.2. Installation de l’opérateur OpenShift Elasticsearch à l’aide de la console Web Copier lienLien copié sur presse-papiers!
L’opérateur OpenShift Elasticsearch crée et gère le cluster Elasticsearch utilisé par OpenShift Logging.
Conditions préalables
Elasticsearch est une application à forte intensité de mémoire. Chaque nœud Elasticsearch a besoin d’au moins 16 Go de mémoire pour les requêtes et les limites de mémoire, à moins que vous n’en spécifiiez autrement dans la ressource personnalisée ClusterLogging.
L’ensemble initial de Red Hat OpenShift Service sur les nœuds AWS pourrait ne pas être assez grand pour prendre en charge le cluster Elasticsearch. Il faut ajouter des nœuds supplémentaires au service Red Hat OpenShift sur AWS pour fonctionner avec la mémoire recommandée ou supérieure, jusqu’à un maximum de 64 Go pour chaque nœud Elasticsearch.
Les nœuds Elasticsearch peuvent fonctionner avec un réglage de mémoire inférieur, bien que cela ne soit pas recommandé pour les environnements de production.
Assurez-vous que vous avez le stockage persistant nécessaire pour Elasticsearch. A noter que chaque nœud Elasticsearch nécessite son propre volume de stockage.
NoteLorsque vous utilisez un volume local pour le stockage persistant, n’utilisez pas de volume de bloc brut, qui est décrit avec volumeMode: bloc dans l’objet LocalVolume. Elasticsearch ne peut pas utiliser les volumes de blocs bruts.
Procédure
-
Dans le Red Hat OpenShift Service sur la console web AWS, cliquez sur Opérateurs
OperatorHub. - Cliquez sur OpenShift Elasticsearch Operator dans la liste des opérateurs disponibles, et cliquez sur Installer.
- Assurez-vous que tous les espaces de noms du cluster sont sélectionnés sous le mode Installation.
Assurez-vous que l’openshift-operators-redhat est sélectionné sous la rubrique Installed Namespace.
Il faut spécifier l’espace de noms openshift-operators-redhat. L’espace de noms openshift-operators peut contenir des opérateurs communautaires, qui ne sont pas fiables et pourraient publier une métrique avec le même nom que Red Hat OpenShift Service sur la métrique AWS, ce qui provoquerait des conflits.
Activer la surveillance des clusters recommandé par l’opérateur sur cet espace de noms.
Cette option définit l’étiquette openshift.io/cluster-monitoring: "vrai" étiquette dans l’objet Namespace. Il faut sélectionner cette option pour s’assurer que la surveillance des clusters gratte l’espace de noms openshift-operators-redhat.
- Choisissez stable-5.x comme canal de mise à jour.
Choisissez une stratégie d’approbation de mise à jour:
- La stratégie automatique permet au gestionnaire de cycle de vie de l’opérateur (OLM) de mettre à jour automatiquement l’opérateur lorsqu’une nouvelle version est disponible.
- La stratégie du Manuel exige qu’un utilisateur ayant les informations d’identification appropriées approuve la mise à jour de l’opérateur.
- Cliquez sur Install.
La vérification
- Assurez-vous que l’opérateur OpenShift Elasticsearch est installé en passant à la page Opérateurs installés.
- Assurez-vous que l’opérateur OpenShift Elasticsearch est répertorié dans tous les projets ayant un statut de Succès.
10.2.3.3. Installation de l’opérateur OpenShift Elasticsearch en utilisant le CLI Copier lienLien copié sur presse-papiers!
Il est possible d’utiliser OpenShift CLI (oc) pour installer l’opérateur OpenShift Elasticsearch.
Conditions préalables
Assurez-vous que vous avez le stockage persistant nécessaire pour Elasticsearch. A noter que chaque nœud Elasticsearch nécessite son propre volume de stockage.
NoteLorsque vous utilisez un volume local pour le stockage persistant, n’utilisez pas de volume de bloc brut, qui est décrit avec volumeMode: bloc dans l’objet LocalVolume. Elasticsearch ne peut pas utiliser les volumes de blocs bruts.
Elasticsearch est une application à forte intensité de mémoire. Le service Red Hat OpenShift sur AWS installe par défaut trois nœuds Elasticsearch avec des requêtes de mémoire et des limites de 16 Go. Cet ensemble initial de trois Red Hat OpenShift Service sur les nœuds AWS pourrait ne pas avoir assez de mémoire pour exécuter Elasticsearch dans votre cluster. Lorsque vous rencontrez des problèmes de mémoire liés à Elasticsearch, ajoutez plus de nœuds Elasticsearch à votre cluster plutôt que d’augmenter la mémoire sur les nœuds existants.
- Il y a des autorisations d’administrateur.
- L’OpenShift CLI (oc) a été installé.
Procédure
Créer un objet Namespace comme fichier YAML:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Il faut spécifier l’espace de noms openshift-operators-redhat. Afin d’éviter d’éventuels conflits avec les métriques, configurez la pile Prometheus Cluster Monitoring pour gratter les métriques de l’espace de noms openshift-operators-redhat et non de l’espace de noms openshift-operators. L’espace de noms openshift-operators peut contenir des opérateurs communautaires, qui ne sont pas fiables et pourraient publier une métrique avec le même nom qu’une métrique ROSA, ce qui provoquerait des conflits.
- 2
- La corde. Il faut spécifier cette étiquette comme indiqué pour s’assurer que la surveillance des clusters gratte l’espace de noms openshift-operators-redhat.
Appliquez l’objet Namespace en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un objet OperatorGroup en tant que fichier YAML:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Il faut spécifier l’espace de noms openshift-operators-redhat.
Appliquez l’objet OperatorGroup en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créer un objet d’abonnement pour souscrire l’espace de noms à l’opérateur OpenShift Elasticsearch:
Exemple d’abonnement
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Il faut spécifier l’espace de noms openshift-operators-redhat.
- 2
- Indiquez stable, ou stable-x.y comme canal. Consultez la note suivante.
- 3
- Automatique permet au gestionnaire de cycle de vie de l’opérateur (OLM) de mettre à jour automatiquement l’opérateur lorsqu’une nouvelle version est disponible. Le manuel exige qu’un utilisateur avec les informations d’identification appropriées approuve la mise à jour de l’opérateur.
- 4
- Indiquez les redhat-operators. Lorsque votre Red Hat OpenShift Service sur AWS cluster est installé sur un réseau restreint, également connu sous le nom de cluster déconnecté, spécifiez le nom de l’objet CatalogSource créé lorsque vous avez configuré le gestionnaire de cycle de vie de l’opérateur (OLM).
NoteLa spécification stable installe la version actuelle de la dernière version stable. En utilisant stable avec installPlanApproval: "Automatique" met automatiquement à niveau vos opérateurs vers la dernière version majeure et mineure stable.
La spécification stable-x.y installe la version mineure actuelle d’une version majeure spécifique. En utilisant stable-x.y avec installPlanApproval: "Automatic" met automatiquement à niveau vos Opérateurs vers la dernière version mineure stable dans la version principale.
Appliquer l’abonnement en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow L’opérateur OpenShift Elasticsearch est installé dans l’espace de noms openshift-operators-redhat et copié sur chaque projet du cluster.
La vérification
Exécutez la commande suivante:
oc get csv -n --all-namespaces
$ oc get csv -n --all-namespaces
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Consultez la sortie et confirmez que les pods pour l’opérateur OpenShift Elasticsearch existent dans chaque espace de noms
Exemple de sortie
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.4. Configuration du stockage des journaux Copier lienLien copié sur presse-papiers!
Il est possible de configurer le type de stockage de journal utilisé par votre journal en modifiant la ressource personnalisée ClusterLogging (CR).
Conditions préalables
- Il y a des autorisations d’administrateur.
- L’OpenShift CLI (oc) a été installé.
- L’opérateur de journalisation Red Hat OpenShift et un log store interne sont soit le LokiStack, soit Elasticsearch.
- C’est vous qui avez créé un ClusterLogging CR.
La version Logging 5.9 ne contient pas une version mise à jour de l’opérateur OpenShift Elasticsearch. Actuellement, si vous utilisez l’opérateur OpenShift Elasticsearch publié avec Logging 5.8, il continuera à fonctionner avec Logging jusqu’à ce que l’EOL de Logging 5.8. Comme alternative à l’utilisation de l’opérateur OpenShift Elasticsearch pour gérer le stockage de journaux par défaut, vous pouvez utiliser l’opérateur Loki. Consultez Platform Agnostic Operators pour plus d’informations sur les dates du cycle de vie de l’enregistrement.
Procédure
ClusterLogging CR logStore Spécification:
Exemple de ClusterLogging CR
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Indiquez le type de log store. Cela peut être soit le lokistack ou la recherche élastique.
- 2
- Des options de configuration optionnelles pour la boutique de journal Elasticsearch.
- 3
- Indiquez le type de redondance. Cette valeur peut être ZeroRedundancy, SingleRedundancy, MultipleRedundancy ou FullRedundancy.
- 4
- Configuration optionnelle pour LokiStack.
Exemple ClusterLogging CR pour spécifier LokiStack comme log store
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Appliquez le ClusterLogging CR en exécutant la commande suivante:
oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow