Obtenir des informations sur les logs

Vous pouvez accéder aux logs d’audit de votre cluster et les gérer. Ils enregistrent toute activité via l’API Kubernetes à des fins de sécurité et de conformité. Ces logs sont stockés automatiquement dans des buckets OOS, dans la même Région que votre cluster. Pour en savoir plus sur OOS, voir À propos d’OOS.

Cette page explique comment utiliser kubectl pour obtenir des informations détaillées sur la configuration des logs de votre cluster. Elle détaille comment récupérer la ressource OOSAccess pour identifier les buckets OOS associés, l’URL endpoint, le mode d’accès et la liste des comptes autorisés à lire les logs.

La définition de ressources personnalisées (CRD) OOSAccess définit le type (kind) de ressource. L’objet oks-oos-configuration est créé automatiquement pendant le déploiement du cluster.

Obtenir des informations sur les logs avec kubectl

Récupérer la configuration actuelle

Afin d’accéder à la configuration actuelle des logs d’audit de votre cluster, utilisez la commande kubectl get pour récupérer la ressource personnalisée OOSAccess associée à votre cluster :

Exemple de requête
$ kubectl get oosaccesses oks-oos-configuration --output yaml

Cette commande contient les options suivantes que vous devez spécifier :

  • oosaccesses oks-oos-configuration: Identifie la ressource personnalisée et son nom. Celle-ci contient des informations sur le stockage des logs d’audit et des logs d’infrastructure pour votre cluster.

  • --output: Précise le format de sortie (yaml | json | wide | name).

Exemple de résultat
apiVersion: oks.dev/v1beta
kind: OOSAccess
metadata:
  name: oks-oos-configuration
spec:
  audit:
    readers:
    - "012345678901"
  iaas:
    readers:
    - "012345678901"
status:
  accessModes: read
  endpointURL: https://oos.eu-west-2.outscale.com
  lastError:
    message: None
  managedRoles: audit, iaas
  roles:
    audit:
      bucketName: audit-1233456b2a906cb2b17dfdd0000000000.eu-west-2.oks
      readers:
      - "012345678901"
       retention:
        days: 366
        enabled: true
        mode: COMPLIANCE
     iaas:
      bucketName: iaas-1233456b2a906cb2b17dfdd0000000000.eu-west-2.oks
      readers:
      - "012345678901"

La commande renvoie les éléments suivants :

  • apiVersion: La version de l’API utilisée par la définition de ressources personnalisées (CRD). Elle détermine la version du schéma pour la ressource OOSAccess (toujours oks.dev/v1beta).

  • kind: Le type de ressource Kubernetes (toujours OOSAccess).

  • metadata: Informations générales sur les metadata de la ressource :

    • name: Le nom de l’objet (toujours oks-oos-configuration).

  • spec: Spécifie la configuration désirée pour accéder aux logs.

    • readers: Liste les ID de compte OUTSCALE ayant un accès read-only aux logs stockés dans OOS :

      • Pour les logs audit: Les comptes autorisés à lire les logs d’audit.

      • Pour les logs iaas: Les comptes autorisés à lire les logs liés à l’infrastructure.

  • status: Indique l’état actuel et la configuration en place pour l’accès au logs et leur stockage.

    • accessModes: Indique le type d’accès autorisé aux buckets OOS contenant les logs. Ce champ contient toujours la valeur read, ce qui signifie que les utilisateurs peuvent uniquement voir ou télécharger les logs. La création, la modification et la suppression de logs sont gérées automatiquement par OUTSCALE et ne sont pas configurables par l’utilisateur.

    • endpointURL: L’endpoint OOS où sont stockés les logs d’audit et d’infrastructure du cluster. Chaque cluster OKS stocke ses logs dans des buckets OOS dédiés, situés dans la même Région que le cluster (https://oos.eu-west-2.outscale.com, par exemple).

    • lastError: Montre toute erreur rencontrée lors de la synchronisation de la configuration d’accès aux logs (None par défaut, quand la configuration est valide).

    • managedRoles: Les types ou rôles de log gérés par la ressource, tels que les audit logs et les iaas logs.

    • roles: Spécifie la configuration pour chaque type de logs. Les champs suivants sont précisés pour chaque rôle :

      • bucketName: Le nom du bucket OOS dans lequel sont stockés les logs du type correspondant.

      • readers: Liste les ID de compte OUTSCALE ayant un accès read-only aux logs :

        • Pour les logs audit: les comptes autorisés à lire les logs d’audit du control plane, qui enregistrent l’activité de l’OKS CLI pour le cluster.

        • Pour les logs iaas: Les comptes autorisés à lire les IaaS logs (logs d’infrastructure), ne concernant que les composants tels que les load balancers.

      • retention: La règle de rétention pour les logs d’audit, comprenant la durée de rétention (en jours), son état d’activation (toujours true), et le mode. Le mode est toujours COMPLIANCE, excepté pour les clusters plus vieux qui peuvent indiquer la valeur GOVERNANCE.

Enregistrer la configuration en local

Vous pouvez enregistrer la sortie de la commande dans un fichier yaml en local en utilisant l’opérateur de redirection > :

Exemple de requête
$ kubectl get oosaccesses oks-oos-configuration --output yaml > NAME_OF_CONFIG_FILE.yaml

Cette requête crée une copie de la ressource actuelle sur votre machine dans un fichier yaml. Vous pouvez ensuite ouvrir, réviser et éditer ce fichier lorsque vous vous accordez l’accès au logs. Pour en savoir plus sur ce processus, voir Tutoriel : S’accorder l’accès aux logs.

Pages connexes