Déployer le moteur Kubernetes pour OCI avec Autonomous Transaction Processing dans Oracle Cloud
Déployez Moteur Kubernetes pour OCI (OKE) avec la base de données Oracle Autonomous Transaction Processing (ATP) pour créer, déployer et gérer de manière fiable des applications en nuage natives à l'aide de la technologie de base de données Oracle sur Oracle Cloud Infrastructure.
Architecture
Déployez Oracle Cloud Infrastructure Kubernetes Engine (OKE) avec la base de données Oracle Autonomous Transaction Processing (ATP) pour créer, déployer et gérer de manière fiable des applications en nuage natives à l'aide de la technologie de base de données Oracle sur Oracle Cloud Infrastructure.
Le diagramme suivant présente l'architecture.
déployer-oke-atp-oci-oracle.zip
L'architecture comprend les composants suivants :
- Régions
Une région Oracle Cloud Infrastructure est une zone géographique localisée qui contient un ou plusieurs centres de données, appelés domaines de disponibilité. Les régions sont indépendantes les unes des autres, et de grandes distances peuvent les séparer (dans différents pays ou continents).
- Domaines de disponibilité
Les domaines de disponibilité sont des centres de données indépendants et autonomes dans une région. Les ressources physiques de chaque domaine de disponibilité sont isolées des ressources des autres domaines de disponibilité, ce qui garantit la tolérance aux pannes. Les domaines de disponibilité ne partagent pas les éléments d'infrastructure (alimentation ou refroidissement, par exemple) ni le réseau de domaines de disponibilité interne. Par conséquent, une défaillance d'un domaine de disponibilité ne devrait pas affecter les autres domaines de disponibilité de la région.
- Domaines d'erreur
Un domaine d'erreur est un regroupement de matériel et d'infrastructure au sein d'un domaine de disponibilité. Chaque domaine de disponibilité comporte trois domaines d'erreur avec une puissance et un matériel indépendants. Le moteur Kubernetes pour OCI gère la répartition des noeuds de la grappe entre plusieurs domaines d'erreur. Ainsi, votre application conteneurisée est protégée contre les pannes physiques de serveur, la maintenance du système et la panne d'alimentation au sein d'un domaine d'erreur.
- Réseau en nuage virtuel (VCN) et sous-réseau
Un VCN est un réseau défini par logiciel personnalisable que vous avez configuré dans une région Oracle Cloud Infrastructure. Comme les réseaux en nuage virtuels traditionnels, ils vous offrent un contrôle sur votre environnement de réseau. Un VCN peut disposer de plusieurs blocs CIDR sans chevauchement que vous pouvez modifier après avoir créé le VCN. Vous pouvez segmenter un VCN en sous-réseaux, dont la portée peut concerner une région ou un domaine de disponibilité. Un sous-réseau est constitué d'un intervalle contigu d'adresses qui ne chevauchent pas les autres sous-réseaux dans le réseau en nuage virtuel. Vous pouvez modifier la taille d'un sous-réseau après sa création. Un sous-réseau peut être public ou privé.
- Équilibreur de charge
L'équilibreur de charge fourni par le moteur Kubernetes pour OCI (OKE) assure la répartition automatisée du trafic d'un point d'entrée unique vers les ressources de la grappe.
- Autonomous Transaction Processing
Oracle Autonomous Transaction Processing est un service de base de données à gestion automatisée, à sécurité autonome et à autoréparation qui est optimisé pour les charges de travail de traitement de transactions. Il n'est pas nécessaire de configurer ou de gérer du matériel ni d'installer des logiciels. Oracle Cloud Infrastructure gère la création de la base de données, ainsi que la sauvegarde, l'application de correctifs, la mise à niveau et le réglage de la base de données.
- Moteur Kubernetes pour OCI
Oracle Cloud Infrastructure Kubernetes Engine (Kubernetes Engine ou OKE) est un service entièrement géré, évolutif et hautement disponible que vous pouvez utiliser pour déployer vos applications conteneurisées dans le nuage. Vous indiquez les ressources de calcul dont vos applications ont besoin et Kubernetes Engine les provisionne sur Oracle Cloud Infrastructure dans une location existante. OKE utilise Kubernetes pour automatiser le déploiement, l'ajustement et la gestion des applications conteneurisées sur les grappes d'hôtes.
Recommandations
Utilisez les recommandations suivantes comme point de départ. Vos exigences peuvent différer de l'architecture décrite ici.
- VCN
Lorsque vous créez un VCN, déterminez le nombre de blocs CIDR requis et la taille de chaque bloc en fonction du nombre de ressources que vous prévoyez d'attacher aux sous-réseaux du VCN. Utilisez des blocs CIDR qui se trouvent dans l'espace d'adresses IP privées standard.
Sélectionnez les blocs CIDR qui ne chevauchent aucun autre réseau (dans Oracle Cloud Infrastructure, votre centre de données sur place ou un autre fournisseur de nuage) auquel vous voulez configurer des connexions privées.
Après avoir créé un VCN, vous pouvez modifier, ajouter et supprimer ses blocs CIDR.
Lorsque vous concevez les sous-réseaux, tenez compte de vos exigences en matière de flux de trafic et de sécurité. Attachez toutes les ressources d'un niveau ou d'un rôle spécifique au même sous-réseau, qui peut servir de limite de sécurité.
Utilisez des sous-réseaux régionaux.
Pour simplifier, cette architecture utilise un sous-réseau public pour héberger Oracle Cloud Infrastructure Kubernetes Engine(OKE). Vous pouvez également utiliser un sous-réseau privé. Dans ce cas, utilisez une passerelle NAT pour autoriser l'accès à l'Internet public à partir de la grappe.
- Moteur Kubernetes pour OCI
Dans cette architecture, les noeuds de travail de la grappe Kubernetes utilisent la forme VM.Standard2.1 et ils s'exécutent sur Oracle Linux. Vous pouvez créer jusqu'à 1000 noeuds dans une grappe.
- Base de données autonome
Dans cette architecture, l'application stocke les données relationnelles dans une base de données Oracle Autonomous Transaction Processing. Nous vous recommandons d'utiliser la dernière version.
Points à considérer
Lors de l'implémentation de cette architecture, tenez compte de vos exigences pour les paramètres suivants :
- Évolutivité de la base de données autonome
À tout moment, vous pouvez ajuster le nombre de base de coeurs d'UC de la base de données, à la hausse ou à la baisse. La fonction d'ajustement automatique d'Autonomous Transaction Processing permet à votre base de données d'utiliser jusqu'à trois fois le nombre de coeurs d'UC de base courant à tout moment. À mesure que la demande augmente, la mise à l'échelle automatique augmente le nombre de cœurs utilisés. Autonomous Transaction Processing vous permet d'augmenter la capacité de stockage de la base de données à tout moment, sans aucune incidence sur la disponibilité ou la performance.
- Sauvegardes de base de données autonome
Oracle Cloud Infrastructure sauvegarde automatiquement vos bases de données autonomes et les conserve pendant 60 jours. Vous pouvez restaurer et récupérer votre base de données à tout point dans le temps pendant cette période. Vous pouvez également créer des sauvegardes manuelles pour compléter vos sauvegardes automatiques. Les sauvegardes manuelles sont stockées dans un seau Oracle Cloud Infrastructure Object Storage que vous créez et conservées pendant 60 jours.
- Évolutivité de Kubernetes
Vous pouvez augmenter votre application en mettant à jour le nombre de noeuds de travail dans la grappe Kubernetes, selon la charge. De même, vous pouvez réduire le nombre de noeuds de travail dans la grappe. Lorsque vous créez un service sur la grappe Kubernetes, vous pouvez créer un équilibreur de charge pour distribuer le trafic du service entre les noeuds affectés à celui-ci.
- Disponibilité d'application
Les domaines d'erreur assurent la meilleure résilience au sein d'un seul domaine de disponibilité. Vous pouvez également déployer des instances ou des noeuds qui effectuent les mêmes tâches dans plusieurs domaines de disponibilité. Cette conception élimine un point de défaillance unique en introduisant la redondance.
- Sécurité
Utilisez des politiques qui limitent l'accès aux ressources Oracle Cloud Infrastructure et la façon dont elles peuvent y accéder.
Le moteur Kubernetes pour OCI est intégré à Oracle Cloud Infrastructure Identity and Access Management (IAM). Le service IAM facilite l'authentification grâce à la fonctionnalité d'identité native d'Oracle Cloud Infrastructure.
Déployez
Le code requis pour déployer cette architecture de référence est disponible dans GitHub. Vous pouvez extraire le code dans Oracle Cloud Infrastructure Resource Manager en un seul clic, créer la pile et le déployer. Vous pouvez également télécharger le code de GitHub sur votre ordinateur, personnaliser le code et déployer l'architecture à l'aide de l'interface de ligne de commande Terraform.
- Déployer à l'aide d'Oracle Cloud Infrastructure Resource Manager :
- Cliquez sur
Si vous n'êtes pas déjà connecté, entrez la location et les données d'identification de l'utilisateur.
- Réviser et accepter les conditions générales.
- Sélectionnez la région dans laquelle déployer la pile.
- Suivez les invites à l'écran et les instructions pour créer la pile.
- Après avoir créé la pile, cliquez sur Actions Terraform et sélectionnez Planifier.
- Attendez que la tâche soit terminée et vérifiez le plan.
Pour apporter des modifications, retournez à la page Détails de la pile, cliquez sur Modifier la pile et apportez les modifications requises. Ensuite, exécutez de nouveau l'action Planifier.
- Si aucune autre modification n'est nécessaire, retournez à la page Détails de la pile, cliquez sur Actions Terraform et sélectionnez Appliquer.
- Cliquez sur
- Déployer à l'aide de l'interface de ligne de commande Terraform :
- Allez à GitHub.
- Téléchargez ou clonez le code sur votre ordinateur local.
- Suivez les instructions dans
deploy/complete/README.md
.
Informations complémentaires
Cliquez sur le lien pour en savoir plus sur le déploiement d'applications basées sur des microservices en conteneur dans des grappes Kubernetes en nuage.