Guide de l'ingénieur DevOps sur OCI
Oracle Cloud Infrastructure (OCI) fournit aux développeurs des outils permettant de créer, de gérer et d'automatiser des applications natives cloud. Ce guide présente ces outils et leur application dans le cycle de vie DevOps.
Cycle de vie DevOps
DevOps est un mode de travail qui encourage plusieurs équipes, principalement le développement et les opérations, à collaborer et à atteindre un déploiement continu dans le cycle de développement logiciel. Différents outils contribuent à différentes étapes du cycle de vie.
|
Du côté du développement, vous avez besoin d'outils pour vous aider dans les étapes suivantes :
|
Côté opérations, vous avez besoin d'outils pour vous aider dans les étapes suivantes :
|
La plupart des outils fournis par OCI pour l'utilisation de DevOps sont étroitement liés et concernent plusieurs étapes du cycle de vie. Les sections de ce guide regroupent les étapes associées et les informations en conséquence.
- Planifiez et gérez votre infrastructure à l'aide des outils de gestion de la configuration et Infrastructure-as-Code.
- Rédigez du code permettant les modifications constantes à l'aide de stratégies et d'outils de conception d'application.
- Créez, testez, publiez et déployez des ressources avec les outils d'intégration continue et de déploiement continu.
- Opérez en toute confiance à l'aide de la sécurité OCI.
- Effectuez une surveillance à l'aide d'outils d'observation.
Approche DevOps
L'automatisation est utilisée tout au long du cycle de vie DevOps. Elle réduit le recours aux tâches manuelles et les interventions, et augmente la fréquence des livraisons. La gestion de configuration et le mode "Infrastructure-as-Code" rendent une grande partie de cette automatisation possible.
La gestion de configuration consiste à appliquer des méthodes de programmation pour garantir l'implémentation, le fonctionnement et les performances d'une application.
Le mode Infrastructure-as-Code (IaC) utilise du code lisible par l'utilisateur pour définir, provisionner et gérer l'infrastructure. Il s'agit d'un composant clé du modèle de déploiement continu.
Dans OCI, Ansible et Terraform sont les outils les plus couramment utilisés pour la gestion de configuration et Infrastructure-as-Code. Ansible est principalement un outil de gestion de configuration utilisé pour la configuration d'infrastructure, l'application de patches, ainsi que le déploiement et la maintenance d'application. Terraform est un outil Infrastructure-as-Code utilisé pour le provisionnement et la mise hors service de l'infrastructure. Ils sont fréquemment utilisés ensemble.
Gestion de configuration
Le service OCI DevOps est conçu pour s'intégrer de manière transparente avec deux outils de gestion de configuration : Ansible et Chef.
Ansible
La collecte Ansible OCI permet d'automatiser le provisionnement et la configuration de l'infrastructure des ressources OCI, telles que les services de calcul, d'équilibrage de charge et de base de données.
Les modules Ansible OCI sont un ensemble d'interpréteurs qui aident Ansible à réaliser des appels sur des adresses d'API OCI. Au niveau de base, Ansible fait passer un serveur ou une liste d'hôtes à un état connu en utilisant les concepts suivants :
- Inventaire : explique où réaliser les exécutions, et peut être statique ou dynamique.
- Tâche : appel vers un module Ansible.
- Jeux : série de tâches ou de rôles Ansible mis en correspondance avec un groupe d'hôtes de l'inventaire, à exécuter dans l'ordre.
- Livres de jeux : série de jeux expliquant ce qu'il faut exécuter et comment utiliser YAML.
- Rôle : structure standard permettant de spécifier des tâches et des variables, qui permet la modularité et la réutilisation.
Chef
Chef est un outil d'automatisation pour la gestion de configuration qui se concentre sur le déploiement et la gestion de piles informatiques entières. Avec le service OCI DevOps, les utilisateurs peuvent gérer les ressources OCI à l'aide du module d'extension Chef Knife.
Puppet est un autre outil de gestion de configuration couramment utilisé pour concevoir, déployer, configurer et gérer des serveurs. Vous pouvez intégrer Puppet à OCI, mais cela nécessite un script manuel car OCI n'a pas de module d'extension direct.
Infrastructure-as-Code
OCI utilise Terraform pour le type Infrastructure-as-Code. Terraform propose un langage déclaratif qui vous permet de coder l'infrastructure, ainsi qu'un moteur qui utilise ces configurations pour gérer l'infrastructure.
Consultez un site LiveLab pour vous aider à démarrer avec Terraform sur OCI. De nombreux tutoriels, exemples, modèles et solutions sont également disponibles.
Vous pouvez utiliser le fournisseur Terraform OCI et l'interface de ligne de commande Terraform pour rédiger et appliquer des configurations à partir de votre ordinateur local qui gère l'infrastructure OCI, mais cette approche présente deux problèmes :
- Absence de contrôle de version : vous devez effectuer le suivi des différentes versions du code si vous devez effectuer une annulation ou un branchement.
- Collaboration : vous devez centraliser les configurations et les plans pour garantir la synchronisation.
Au lieu d'utiliser Terraform directement, utilisez OCI Resource Manager, un hôte Terraform cloud pour centraliser le contrôle source, la gestion des états et la mise en file d'attente des travaux. Resource Manager facilite la gestion de l'infrastructure ou des piles par le personnel DevOps en masquant Terraform dans des modèles.
Resource Manager inclut également l'automatisation basée sur Terraform, comme le repérage des ressources et la détection des dérives. Etant donné qu'il n'est pas toujours réaliste de créer d'abord des configurations Terraform, puis de provisionner l'infrastructure, vous pouvez créer des ressources dans la console, puis utiliser le repérage des ressources Resource Manager pour générer la pile et la configuration. Les rapports de détection de dérive peuvent déterminer si les ressources provisionnées présentent des états différents de ceux définis dans la dernière configuration exécutée de la pile.
Les microservices vous permettent de concevoir une application comme un ensemble de services à couplage lâche qui utilisent le modèle sans partage et s'exécutent comme des processus sans conservation de statut. Cette approche facilite le redimensionnement et la maintenance de l'application.
Dans une architecture de microservices, chaque microservice est associé à une tâche simple, et communique avec les clients ou d'autres microservices à l'aide de mécanismes de communication légers tels que les demandes d'API REST. Les applications conçues en tant que microservices présentent les caractéristiques suivantes :
- faciles à entretenir et déployables de manière indépendante,
- facilement évolutives et hautement disponibles,
- à couplage lâche avec d'autres services,
- développées à l'aide du langage et de la structure de programmation qui conviennent le mieux au problème.
La mise en conteneur est une approche commune de l'architecture de microservices. Les conteneurs utilisent la virtualisation du système d'exploitation et contiennent uniquement l'application et ses fichiers binaires associés, ce qui permet un démarrage rapide et une sécurité accrue.
Mise en conteneur et Docker
Docker est une plate-forme de mise en conteneur et de projet open source qui standardise le packaging des applications et leurs dépendances dans des conteneurs, qui partagent le même système d'exploitation hôte. Utilisez les conteneurs Docker pour une livraison rapide et cohérente de vos applications, un déploiement et une évolutivité réactifs, et pour la portabilité.
Une image Docker est un modèle en lecture seule contenant des instructions pour la création d'un conteneur Docker. Elle contient l'application que Docker doit exécuter en tant que conteneur, ainsi que les dépendances éventuelles. Pour créer une image Docker, vous devez d'abord créer un fichier Docker pour décrire cette application, puis créer l'image Docker à partir de ce fichier.
Les images Docker peuvent être stockées dans un registre tel qu'OCI Container Registry. Sans registre, il est difficile pour les équipes de développement de conserver un ensemble cohérent d'images Docker pour leurs applications en conteneur. Sans registre géré, il est difficile d'appliquer les droits d'accès et les stratégies de sécurité pour les images.
Pour consulter un tutoriel d'introduction, reportez-vous à Propagation d'une image vers Oracle Cloud Infrastructure Registry ou testez un atelier LiveLab.
Kubernetes
Le déploiement d'applications en conteneur soulève un problème : la gestion de milliers de conteneurs. Kubernetes est un outil open source qui orchestre automatiquement le cycle de vie des conteneurs, en répartissant les conteneurs sur l'ensemble de l'infrastructure d'hébergement. Kubernetes augmente ou réduit les ressources en fonction de la demande. Le système provisionne, programme, supprime et surveille l'état des conteneurs.
Qu'est-ce que Kubernetes ? aborde certains concepts clés de Kubernetes, ainsi que son historique.
Moteur Kubernetes OCI
OCI Kubernetes Engine (OKE) (parfois appelé OKE) est un service entièrement géré, évolutif et hautement disponible que vous pouvez utiliser pour déployer vos applications en conteneur vers le cloud.
Bien que vous n'ayez pas besoin d'utiliser un service Kubernetes géré, OCI Kubernetes Engine est un moyen facile d'exécuter des clusters à haute disponibilité avec le contrôle, la sécurité et les performances prévisibles d'OCI, ce qui offre aux équipes DevOps une visibilité et un contrôle accrues.
- Accédez à vos clusters à l'aide de
kubectl
, qui est inclus dans Cloud Shell, ou utilisez une installation locale dekubectl
. - Augmentez la disponibilité des applications à l'aide de clusters qui couvrent plusieurs domaines de disponibilité (centres de données) dans n'importe quelle région commerciale en tirant parti du redimensionnement automatique des pods et pools de noeuds Kubernetes.
- Mettez à niveau des clusters de conteneurs facilement et rapidement, sans temps d'inactivité, pour les maintenir à jour avec la dernière version stable de Kubernetes.
- Observation de clusters Kubernetes à l'aide de mesures, de journaux et de demandes de travail.
Lancez-vous avec les tutoriels de développement, ainsi qu'avec les ateliers et LiveLabs suivants :
Fonctions
Functions héberge des applications sans passer par des serveurs réels. L'architecture sans serveur et élastique de Functions signifie qu'aucune administration d'infrastructure ou de logiciel n'est nécessaire. Vous ne provisionnez ni ne gérez d'instances de calcul, et les mises à niveau et les patches logiciels de système d'exploitation sont appliqués automatiquement. Functions garantit la haute disponibilité, l'évolutivité, la sécurité et la surveillance de votre application. Vous pouvez écrire du code en Java, Python, Node, Go, Ruby et C# (et, pour les cas d'emploi avancés, utiliser vos propres fichier Docker et machine virtuelle Graal). Vous pouvez ensuite déployer votre code, l'appeler directement ou le déclencher en réponse à des événements.
L'intégration continue et le déploiement continu constituent des meilleures pratiques DevOps.
L'intégration continue est une pratique des développeurs, qui consiste à intégrer l'ensemble de leur travail le plus tôt possible au cours du cycle de vie. Des modifications fréquentes et incrémentielles du code sont créées, testées et révisées selon les besoins en fonction de retours permanents. Une modification du code doit automatiquement déclencher des étapes standardisées de création et de test qui garantissent que ces modifications, une fois introduites dans le référentiel, sont exemptes d'erreurs et fonctionnent avec le code existant.
L'intégration continue et le déploiement continu consiste à proposer les modifications du code aux utilisateurs très rapidement. Une fois que le code a passé les tests d'unité, d'intégration, d'acceptation et d'autres tests, il est mis en production dans le cadre d'un déploiement continu automatisé ou d'un processus de déploiement continu manuel.
OCI DevOps
Les pipelines de build et de déploiement sont au coeur du workflow d'intégration continue et de déploiement continu DevOps.
Le service OCI DevOps vous permet de créer visuellement des pipelines de build et de déploiement qui automatisent les appels vers des outils plus ciblés. DevOps peut s'intégrer à vos workflows d'intégration continue et de déploiement continu existants.
Pour explorer l'intégration continue et le déploiement continu dans OCI, vous pouvez créer un pipeline de CD à l'aide de DevOps ou développer, déboguer et déployer des applications sur Kubernetes Engine.
DevOps Projets
La première étape pour créer et déployer des applications à l'aide du service OCI DevOps consiste à créer un projet DevOps. Un projet DevOps est un regroupement logique de ressources DevOps nécessaires pour implémenter un workflow d'intégration continue et de déploiement continu. Dans le cadre de la création du projet dans la console, ou à l'aide d'une API ou de l'interface de ligne de commande, vous créez les ressources suivantes :
|
Les projets DevOps vous permettent de centraliser la gestion de vos ressources de cycle de vie de déploiement de logiciels et de les partager facilement. Lorsque vous utilisez OCI DevOps avec des référentiels d'artefact, vous êtes assuré que la version logicielle prévue pour publication est la version déployée et que vous pouvez revenir à une version précédente connue.
Code
Dans le service DevOps, vous pouvez créer vos propres référentiels de code privé dans un référentiel de code OCI, comme Git. Les validations, les mises à jour, les branchements et l'utilisation du stockage sont visibles dans la console, et un ID Oracle Cloud (OCID) est affecté au référentiel lorsque vous le créez. Vous pouvez également modifier, cloner et supprimer des référentiels.
Vous pouvez également utiliser des référentiels de code externes tels que GitHub et GitLab, ou mettre en miroir un référentiel de code externe de GitHub, GitLab ou Bitbucket Cloud vers un référentiel de code OCI. Si vous utilisez des référentiels auto-hébergés (GitLab Server et Bitbucket Server) avec des adresses IP privées, vous pouvez toujours y accéder à partir de vos pipelines.
Pour plus d'informations, reportez-vous à Gestion des référentiels de code et à Ajout d'une phase de build géré.
Artefacts
Un artefact est une référence à un fichier binaire, à un package, à un manifeste Kubernetes, à une image de conteneur ou à un autre fichier qui constitue votre application et qui sera transmis à un environnement de déploiement cible. Les artefacts générés par votre build et utilisés dans votre déploiement sont stockés dans des registres. OCI dispose de deux types de registre pour le stockage, le partage et la gestion des artefacts :
- Container Registry est un service géré, basé sur des normes et ouvert qui stocke plusieurs versions d'images de conteneur ou d'images Docker, ainsi que des fichiers associés tels que des manifestes et des charts Helm. Ces images peuvent être propagées vers un cluster Kubernetes pour déploiement à l'aide de Kubernetes Engine (OKE).
- Artifact Registry stocke les packages logiciels, les bibliothèques, les fichiers .zip et d'autres types de fichier utilisés pour le déploiement d'applications. Ces fichiers peuvent être appelés lorsque le pipeline de déploiement est déclenché.
Vous pouvez également utiliser des registres d'artefacts externes, tels que le type de sonate ou l'usine, et les mettre en miroir dans le registre d'attributs d'OCI. Cela signifie que vous pouvez continuer à utiliser votre configuration actuelle avec OCI DevOps.
Pipelines de build et de déploiement
Les pipelines de build et de déploiement OCI DevOps réduisent les erreurs liées aux modifications ainsi que le temps passé sur les builds et les déploiements. Les développeurs valident le code source dans un référentiel de code, créent et testent des artefacts logiciels avec un programme d'exécution de build, transmettent des artefacts aux référentiels OCI, puis exécutent un déploiement vers des plates-formes OCI.
Vous pouvez utiliser DevOps pour implémenter diverses stratégies de pipeline de déploiement, notamment une stratégie de type bleu/vert (qui se compose de deux environnements de production identiques), une stratégie canari et une stratégie non simultanée.
Pour obtenir des instructions détaillées sur le pipeline, reportez-vous à Gestion des pipelines de build et à Gestion des pipelines de déploiement.
Les journaux de vos exécutions de build et de vos déploiements sont stockés dans le service OCI Logging à des fins d'audit et de gouvernance. Votre équipe peut également recevoir des notifications d'événements dans vos pipelines DevOps via le service OCI Notifications.
Vous pouvez également utiliser le module d'extension Jenkins Compute pour centraliser l'automatisation de build et dimensionner les déploiements, envoyer vos artefacts vers le registre d'artefacts OCI et déclencher les pipelines de déploiement DevOps.
Un environnement est un ensemble de ressources de calcul sur lesquelles des artefacts sont déployés. Il s'agit de la plate-forme cible de votre application. Les types d'environnement d'exécution cible pris en charge dans OCI incluent les instances de calcul Bare Metal ou de machine virtuelle dans Oracle Linux, CentOS, Kubernetes Engine et Functions. L'environnement choisi pour le déploiement dépend de vos besoins en matière de flexibilité, de sécurité, de vitesse et d'autres exigences :
- Les hôtes Bare Metal offrent davantage de contrôle et de sécurité, et des coûts plus avantageux. C'est une bonne option pour les projets qui nécessitent un espace plus constant, plus volumineux, ou séparé et sécurisé. Reportez-vous à Présentation de Compute.
- Les machines virtuelles offrent davantage de polyvalence, d'évolutivité et de possibilités de partage des ressources. Les applications partagées et le matériel physique permettent de faire des économies, d'avoir une meilleure vitesse de récupération après sinistre et d'accélérer le provisionnement. Reportez-vous à Présentation de Compute.
- Kubernetes Engine est idéal pour les environnements à haute densité et pour les déploiements de petite et moyenne tailles, où vous devez faire plus avec moins de ressources. Reportez-vous à Conception d'application.
- Les fonctions sont idéales pour les charges globales dynamiques dont l'utilisation change fréquemment car vous payez uniquement pour les services que vous utilisez.
Vous devez créer le cluster, la fonction ou l'instance de calcul Kubernetes Engine avant de créer un environnement DevOps. Vous créez ensuite des références à différents environnements de destination pour le déploiement DevOps.
DevSecOps est une approche de la culture, de l'automatisation et de la conception de plate-forme qui intègre la sécurité en tant que responsabilité partagée tout au long du cycle de vie DevOps.
La sécurité continue repose sur trois éléments principaux :
- Au fur et à mesure de l'ajout de nouvelles fonctionnalités, la posture de sécurité doit être continuellement affinée et mise à jour. Des contrôles de sécurité nouveaux ou modifiés peuvent être ajoutés (ou certains peuvent être enlevés). Ces contrôles doivent être continuellement testés au cours des cycles de développement et de déploiement à l'aide de suites de tests de sécurité automatisées.
- Les applications natives cloud doivent être conçues pour la résilience. Etant donné que même les logiciels soigneusement conçus et testés peuvent contenir des failles de sécurité, un système de surveillance de la sécurité robuste doit identifier les intrusions et les infections en temps réel. Les réponses automatisées aux incidents doivent protéger les services.
- Au fur et à mesure que de nouvelles fonctionnalités sont lancées en production via le pipeline d'intégration continue et de déploiement continu, les vérificateurs de conformité de la sécurité et les systèmes d'évaluation de la vulnérabilité des applications doivent mesurer et enregistrer toute nouvelle exposition aux risques. Les risques identifiés lors de l'intégration de nouvelles fonctionnalités nécessitent une révision de la structure des contrôles de sécurité, qui doit être modifiée pour atténuer ces risques.
IAM
Vault
Il est recommandé aux ingénieurs DevOps d'utiliser le service Vault OCI pour améliorer l'état de sécurité global de leurs déploiements d'application et de service.
Vous pouvez utiliser le service Vault pour gérer de manière centralisée les clés de cryptage et les clés secrètes. Les clés secrètes sont des informations d'identification telles que des mots de passe, des jetons ou toute autre donnée confidentielle que vous devez utiliser avec d'autres services OCI, et des applications ou systèmes externes. Le stockage des clés secrètes dans un coffre permet plus de sécurité qu'un stockage dans un autre emplacement, par exemple dans des fichiers de configuration ou du code.
Vault s'intègre directement aux services OCI, aux kits SDK et aux clients d'API, et gère le cryptage des informations d'identification de mot de passe utilisées avec n'importe quelle application externe.
Meilleures pratiques de sécurité pour Kubernetes Engine
Lors de l'utilisation d'OCI Kubernetes Engine, suivez ces meilleures pratiques de sécurité :
- Contrôlez l'accès aux clusters provisionnés à l'aide des stratégies IAM et des règles de contrôle d'accès basé sur les rôles (RBAC) Kubernetes. Reportez-vous à A propos du contrôle d'accès et du moteur Kubernetes (OKE).
- Cryptez les objets de données confidentielles (tels que les jetons d'authentification et les informations d'identification) en tant que clés secrètes Kubernetes lorsqu'ils sont stockés dans etcd.
- Utilisez des stratégies de sécurité de pod pour limiter ou restreindre l'accès aux ressources. Reportez-vous à Utilisation des stratégies de sécurité de pod avec Kubernetes Engine (OKE).
- Utilisez la sécurité des pools de noeuds pour les clusters et les pods.
- Définissez les règles d'accès réseau pour les communications vers et depuis les pods.
- Définissez des modèles d'utilisation à plusieurs locations pour les clusters Kubernetes (isolement).
- Améliorez la sécurité des images de conteneur à l'aide de la vérification de signature et de l'analyse des vulnérabilités. Reportez-vous à Signature d'images à des fins de sécurité et à Analyse d'images à des fins de détection des vulnérabilités.
Lors de l'utilisation d'OCI Functions, suivez ces meilleures pratiques de sécurité :
- Contrôlez à la fois l'appel et l'accès en gestion aux fonctions et aux applications à l'aide d'IAM.
- Améliorez la sécurité des images de conteneur à l'aide de la vérification de signature et de l'analyse des vulnérabilités. Reportez-vous à Signature d'images à des fins de sécurité et à Analyse d'images à des fins de détection des vulnérabilités.
- Suivez les instructions pour contrôler l'accès.
Les outils DevOps doivent vous aider à comprendre le fonctionnement de votre système et à choisir les mesures appropriées à surveiller de manière proactive. Vous devriez repérer les problèmes assez tôt dans le processus et être en mesure de surveiller l'état constamment.
Les outils DevOps doivent également vous aider à assurer la sécurité de bout en bout des systèmes d'information, qu'il s'agisse du centre de données physique, des réseaux ou des applications.
Avec une approche d'observation adéquate, vous pouvez réduire les temps d'arrêt, accélérer le délai moyen de détection et de résolution, et améliorer la satisfaction client et la prestation de services.
Services clés d'observation OCI
Monitoring peut vous aider à obtenir des informations sur les charges globales OCI avec des mesures DevOps concernant l'état et les performances. Vous pouvez configurer des alarmes avec des seuils pour détecter les anomalies d'infrastructure et d'application, et y répondre.
Bien que les mesures d'OCI soient affichées dans des graphiques via la console, vous pouvez utiliser le module d'extension Grafana pour afficher les mesures des ressources de différents fournisseurs dans un seul tableau de bord Grafana.
Logging peut inclure des données de journal provenant de centaines de sources. Vous pouvez générer des journaux, tels que des journaux d'audit et des journaux de flux de mise en réseau, et les utiliser pour diagnostiquer les problèmes de sécurité. Les journaux DevOps émettent tous les journaux de ressources de projet DevOps.
Log Analytics est une solution cloud basée sur l'apprentissage automatique qui surveille, agrège, indexe et analyse toutes les données des journaux des environnements sur site et multicloud. Ce service vous permet de rechercher, d'explorer et de corréler ces données afin de résoudre les problèmes plus vite, d'en tirer des analyses opérationnelles et de prendre de meilleures décisions.
Notifications est un service de publication/d'abonnement hautement disponible à faible latence qui envoie des alertes et des messages aux fonctions et aux partenaires de distribution de messages et de courriels, y compris Slack et PagerDuty.
Events suit les modifications apportées aux ressources à l'aide d'événements conformes à la norme CloudEvents de la CNCF (Cloud Native Computing Foundation). Il élimine la tâche complexe de suivi manuel des modifications apportées aux ressources cloud. Les événements DevOps sont des fichiers JSON émis avec certaines opérations de service qui contiennent des informations sur l'opération concernée. Vous pouvez définir des règles qui déclenchent une action spécifique lorsqu'un événement se produit.
Services et outils DevOps
- Application Dependency Management détecte les vulnérabilités de sécurité dans les dépendances d'application.
- Application Performance Monitoring fournit un ensemble complet de fonctionnalités permettant de surveiller les applications et de diagnostiquer les problèmes de performances.
- Artifact Registry fournit des référentiels pour stocker, partager et gérer des packages de développement logiciel.
- Kubernetes Engine (OKE) vous permet de définir et de créer des clusters Kubernetes pour permettre le déploiement, la évolutivité et la gestion d'applications en conteneur.
- Container Registry vous permet de stocker, de partager et de gérer des images de conteneur (telles que des images Docker) dans un registre géré par Oracle.
- Console Dashboards vous permet de créer des tableaux de bord personnalisés dans la console afin de surveiller les ressources, les diagnostics et les mesures clés de votre location.
- DevOps est un service (intégration continue et déploiement continu) qui automatise la distribution et le déploiement de logiciels.
- Events vous aide à créer une automatisation basée sur les modifications d'état des ressources dans votre location.
- Functions est une plate-forme sans serveur qui vous permet de créer, d'exécuter et d'adapter la logique applicative sans gérer d'infrastructure.
- IAM utilise des domaines d'identité pour fournir des fonctionnalités de gestion des identités et des accès telles que l'authentification, l'accès avec connexion unique (SSO) et la gestion du cycle de vie des identités.
- Logging fournit une interface unique hautement évolutive et entièrement gérée pour tous les journaux de votre location.
- Log Analytics vous permet d'indexer, d'enrichir, d'agréger, d'explorer, de rechercher, d'analyser, de corréler, de visualiser et DE surveiller toutes les données de journal de vos applications et votre infrastructure système.
- Monitoring vous permet d'interroger des mesures et de gérer des alarmes. Les mesures et les alarmes permettent de surveiller l'état, la capacité et les performances de vos ressources cloud.
- Notifications diffuse des messages vers des composants distribués via un modèle publication-abonnement qui délivre des messages sécurisés, durables, extrêmement fiables et à faible latence.
- Resource Manager automatise le déploiement et les opérations pour toutes les ressources OCI à l'aide du modèle Infrastructure-as-Code.
- Streaming offre une solution évolutive et durable entièrement gérée permettant d'inclure et d'utiliser des flux de données volumineux en temps réel.
- Vault service est un service de gestion du cryptage qui stocke et gère les clés de cryptage ainsi que les clés secrètes afin d'accéder aux ressources en toute sécurité.
- Vulnerability Scanning aide à améliorer la posture de sécurité en examinant régulièrement les hôtes et les images de conteneur à la recherche de vulnérabilités potentielles.