Présentation de DevOps
Le service Oracle Cloud Infrastructure (OCI) DevOps est une plate-forme d'intégration continue et de déploiement continu de bout en bout destinée aux développeurs.
Grâce à ce service, un ingénieur DevOps peut créer, tester et déployer facilement des logiciels et des applications sur Oracle Cloud. Les pipelines de build et de déploiement DevOps réduisent les erreurs liées aux modifications et le temps passé par les clients à créer et à déployer des versions. Le service fournit également des référentiels Git privés pour stocker votre code et prend en charge les connexions aux référentiels de code externes.
Avec le service DevOps, vous pouvez effectuer les opérations suivantes :
- Créer des référentiels de code privés pour stocker et gérer le code source.
- Connectez-vous à des référentiels externes tels que GitHub, GitLab, Bitbucket Cloud, Visual Builder Studio, Bitbucket Server et GitLab Server.
- Créer et tester les dernières modifications apportées à un pipeline de build avec un programme d'exécution de build géré par le service.
- Configurer un déclencheur pour exécuter automatiquement le pipeline de build à partir d'une demande d'extraction ou de validation de code source. Exécuter éventuellement un pipeline de déploiement sur l'exécution de build réussie pour une automatisation complète de l'intégration continue et du déploiement continu.
- Orchestrer le déploiement logiciel entre des régions vers des plates-formes OCI telles que Kubernetes Engine (OKE), les instances Compute et Functions.
- Eviter les temps d'arrêt lors des déploiements grâce à des stratégies de déploiement bleu/vert et canari.
- Automatiser la mise à jour complexe d'applications. L'automatisation réduit les risques d'erreur humaine susceptible d'entraîner une vulnérabilité en matière de sécurité.
- Améliorer la sécurité et réduire les risques lors de la distribution. Comme DevOps accélère la distribution des logiciels, les bugs de sécurité peuvent être résolus rapidement en déployant une correction.
Que ce soit pour migrer des charges globales vers OCI (à partir de clouds sur site ou autres) ou pour développer de nouvelles applications sur OCI, vous pouvez utiliser le service DevOps afin de simplifier le cycle de vie de distribution des logiciels.
Avec DevOps, vous pouvez créer, tester, distribuer et déployer des instances à l'aide de la console Oracle Cloud, de l'API REST et de l'interface de ligne de commande. Reportez-vous à Accès à DevOps.
Pour commencer à utiliser le service DevOps, reportez-vous à Introduction à DevOps.
Concepts relatifs à DevOps
Consultez les termes clés pour comprendre le service DevOps.
- Projet DevOps
- Regroupement logique de ressources DevOps nécessaires pour implémenter un workflow d'intégration continue et de déploiement continu. Les ressources DevOps peuvent être des artefacts, des pipelines de build, des pipelines de déploiement, des connexions externes, des déclencheurs et des environnements.
- environnement
- Référence aux ressources de calcul vers lesquelles les artefacts sont déployés. Un environnement peut être une référence à une application de fonction, à un groupe d'instances Compute ou à un cluster OKE (Kubernetes Engine).
- groupe d'instances
- Groupe d'hôtes de calcul. Les hôtes de calcul de chaque groupe d'instances ne peuvent provenir que d'une seule région à la fois.
- artefact
- Ensemble de fichiers binaires et de manifestes de déploiement distribués à l'environnement de déploiement cible. Les artefacts DevOps peuvent être une image de conteneur, une configuration de déploiement de groupe d'instances, un manifeste Kubernetes ou un artefact générique. Les artefacts peuvent être hébergés sur des référentiels OCI Container Registry et Artifact Registry.
- artefact de configuration de déploiement
- Définit les artefacts à télécharger vers l'instance et l'emplacement où les artefacts doivent être copiés. Le fichier de configuration indique également l'ordre des commandes pour le déploiement.
- référentiel de code
- Référentiels Git privés hébergés par le service DevOps. Vous pouvez stocker, gérer et développer du code source avec les référentiels de code DevOps.
- connexion externe
- Définit l'autorisation nécessaire pour la connexion aux référentiels externes. DevOps prend en charge la connexion aux référentiels GitHub, GitLab, Bitbucket Cloud, Bitbucket Server et GitLab Server.
- phase
- Représente une étape dans le pipeline. Le service DevOps inclut des phases prédéfinies, qui sont utilisées dans un pipeline de build ou de déploiement.
- pipeline de build
- Définit un ensemble de phases pour le processus de build : création, test et compilation d'artefacts de logiciel, distribution d'artefacts aux référentiels OCI et déclenchement éventuel d'un déploiement.
- spécification de build
- Contient les étapes de build et les instructions exécutées par le programme d'exécution de build géré par le service.
- pipeline de déploiement
- Séquence d'étapes permettant de déployer un ensemble d'artefacts vers un environnement cible. Un pipeline de déploiement contient des phases qui sont exécutées de manière séquentielle ou en parallèle.
- annulation (rollback)
- Moyen permettant de gérer les problèmes identifiés lors du déploiement, notamment la publication d'une version précédente correctement déployée du logiciel.
- déclencheur
- Ressource DevOps permettant de filtrer les événements entrants à partir d'un référentiel de code source et de déclencher une action afin de démarrer une exécution de build sur une validation entrante correspondante.
Le déclencheur fait également référence à la phase de pipeline de déploiement pour déclencher le démarrage d'un déploiement.
- déploiement
- Exécution unique d'un pipeline de déploiement. Un déploiement contient l'état de toutes les phases exécutées dans un pipeline de déploiement.
- demande de travail
- Moyen permettant de suivre une tâche asynchrone en cours d'exécution pour un projet DevOps.
Accès à DevOps
Vous pouvez accéder à DevOps via la console (une interface basée sur un navigateur), l'interface de ligne de commande Oracle Cloud Infrastructure ou les API REST.
Vous trouverez des instructions relatives aux trois méthodes d'accès dans cette documentation.
- Pour utiliser la console Oracle Cloud, vous devez disposer d'un compte Oracle Cloud Infrastructure (OCI) (utilisateur, mot de passe et location). Vous devez également utiliser un navigateur pris en charge. Pour plus d'informations, reportez-vous à Informations d'identification de sécurité. Remarque
Evitez de saisir des informations confidentielles lors de l'affectation de descriptions, de balises ou de noms conviviaux aux ressources cloud via l'interface de ligne de commande, l'API ou la console. Cela s'applique lors de la création ou de la modification de ressources de projet, telles que les environnements et les pipelines. - Pour utiliser l'interface de ligne de commande OCI ou les API REST, vous pouvez configurer votre environnement ou utiliser Oracle Cloud Infrastructure Cloud Shell.
- Pour utiliser l'interface de ligne de commande ou les API REST dans Cloud Shell, connectez-vous à la console. Reportez-vous à Utilisation de Cloud Shell et à Référence des commandes de l'interface de ligne de commande.
- Pour installer l'interface de ligne de commande OCI dans votre environnement, suivez les étapes de démarrage rapide dans Installation de l'interface de ligne de commande. Reportez-vous également à la présentation de l'interface de ligne de commande.
- Lorsque vous utilisez des API REST, reportez-vous à la documentation relative aux API REST et à Adresses et référence d'API.
Si vous essayez d'effectuer une action et qu'un message indique que vous n'y êtes pas autorisé, vérifiez auprès de l'administrateur le type d'accès qui vous a été accordé.
Pour commencer à utiliser le service DevOps, reportez-vous à Introduction à DevOps.
Authentification et autorisation
Chaque service d'Oracle Cloud Infrastructure s'intègre à IAM pour l'authentification et l'autorisation, sur toutes les interfaces (consolekit SDK ou interface de ligne de commande, et API REST).
Un administrateur de votre organisation doit configurer des groupes, des compartiments et des stratégies qui déterminent les services et les ressources auxquels les utilisateurs peuvent accéder, ainsi que le type d'accès. Par exemple, les stratégies déterminent qui peut créer des utilisateurs, des groupes et des compartiments, ou qui peut créer et gérer des référentiels et des artefacts.
- Si vous êtes un nouvel administrateur, reportez-vous à Introduction aux stratégies.
- Afin d'obtenir plus de détails sur l'écriture de stratégies pour DevOps, reportez-vous à Stratégies IAM DevOps.
- Afin d'obtenir plus de détails sur l'écriture de stratégies pour d'autres services, reportez-vous à Référence de stratégie.
Si vous êtes un utilisateur standard (et non un administrateur) et que vous avez besoin des ressources Oracle Cloud Infrastructure de votre entreprise, contactez l'administrateur afin qu'il configure pour vous un ID utilisateur. L'administrateur peut confirmer les compartiments que vous devez utiliser.
Régions et domaines de disponibilité
DevOps est disponible dans toutes les régions commerciales Oracle Cloud Infrastructure. Reportez-vous à A propos des régions et des domaines de disponibilité afin d'obtenir la liste des régions disponibles pour Oracle Cloud Infrastructure, ainsi que les emplacements, identificateurs de région, clés de région et domaines de disponibilité associés.
Identificateurs de ressource
Les ressources DevOps, comme la plupart des types de ressource dans Oracle Cloud Infrastructure, possèdent un identificateur unique affecté par Oracle appelé ID Oracle Cloud (OCID).
Pour plus d'informations sur le format OCID et les autres moyens d'identifier vos ressources, reportez-vous à Identificateurs de ressource.
Limites
Prenez connaissance des limites de service DevOps pour votre région.
Une limite de service est l'allocation ou le quota défini sur une ressource.
Ressource | Nom abrégé de la limite | Crédits universels annuels | Paiement à l'utilisation | Description |
---|---|---|---|---|
Projets | devops-project-count | 1 000 | 1 000 | Nombre maximal de projets disponibles dans DevOps. |
Pipelines | build-pipeline-count | 1 000 | 1 000 | Nombre maximal de pipelines de build disponibles dans DevOps. |
Pipelines | stages-per-build-pipeline-count | 100 | 100 | Nombre maximal de phases par pipeline de build disponibles dans DevOps. |
Pipelines | deployment-pipeline-count | 1 000 | 1 000 | Nombre maximal de pipelines disponibles dans DevOps. |
Pipelines | deployment-stages-per-pipeline-count | 100 | 100 | Nombre maximal de phases par pipeline de déploiement disponibles dans DevOps. |
Exécutions de build | concurrent-build-run-count | 30 | 30 | Nombre maximal d'exécutions de build simultanées disponibles dans DevOps. |
Exécutions de build | concurrent-build-runner-count | 30 | 30 | Nombre maximal de programmes d'exécution de build simultanés fournis par le service dans DevOps. |
Déploiements | concurrent-deployment-count | 100 | 100 | Nombre maximal de déploiements simultanés disponibles dans DevOps. |
Environnements | devops-environment-count | 3 000 | 3 000 | Nombre maximal d'environnements disponibles dans DevOps. |
Artefacts | devops-artifact-count | 10 000 | 10000 (Paiement à l'utilisation ) 1000 (essai) |
Nombre maximal d'artefacts disponibles dans DevOps. |
Déclencheurs | trigger-count | 100 | 100 | Nombre maximal de déclencheurs autorisés dans DevOps. |
Connexions externes | external-connection-count | 100 | 100 | Nombre maximal de connexions externes autorisées dans DevOps. |
Référentiels de code | code-repository-count | 1 000 | 1 000 | Nombre maximal de référentiels autorisés par région et par location. |
Référentiels de code | code-repository-size-limit-mb | 1 024 | 1 024 | Taille maximale d'un référentiel en Mo. |
Référentiels de code | receive-pack-size-limit-mb | 1 024 | 1 024 | Taille maximale d'un fichier de package en Mo. |
Demandes d'extraction | pull-request-count-per-month | 2 000 | 2 000 | Nombre maximum de demandes d'extraction créées en un mois. |
Afin de vérifier les limites pour DevOps, procédez comme suit :
Pour augmenter les limites de service, procédez comme suit :
- Dans la console, ouvrez le menu de navigation et cliquez sur Gouvernance et administration. Sous Gouvernance, cliquez sur Limites, quotas et utilisation.
- Cliquez sur le lien Demander une augmentation de limite de service. Seuls les administrateurs peuvent effectuer cette demande.
Pour plus d'informations, reportez-vous à Limites de service.