Déployer Oracle WebLogic Server pour OKE à l'aide d'une pile Marketplace
Déployez rapidement un domaine Oracle WebLogic Server dans un cluster Kubernetes provisionné dans Oracle Cloud Infrastructure, avec un contrôleur Jenkins configuré pour les travaux de pipeline d'intégration continue et de déploiement continu afin de prendre en charge les opérations de gestion du cycle de vie du serveur WebLogic.
La fourniture d'Oracle WebLogic Server en tant qu'ensemble d'applications pour Oracle Cloud Infrastructure Kubernetes Engine (OKE) via Oracle Cloud Marketplace facilite et accélère la configuration d'Oracle Oracle WebLogic Server for OKE. Il génère une configuration de WebLogic Server sur OKE en quelques minutes, avec un contrôleur Jenkins configuré pour les tâches de pipeline OKE et d'intégration continue et de distribution continue (CI/CD) afin de prendre en charge les opérations de gestion du cycle de vie du serveur WebLogic.
L'utilisation d'Oracle Cloud Marketplace pour provisionner Oracle WebLogic Server pour OKE fournit les éléments suivants :
- Un équilibre entre l'automatisation, la portabilité et la possibilité de personnaliser plusieurs domaines
- Opérations de gestion du cycle de vie avec un pipeline d'intégration continue et de déploiement continu à l'aide de Jenkins
- Gestion flexible des licences avec modèle de crédits universels (UCM) ou Bring Your Own License (BYOL)
Architecture
Oracle WebLogic Server for OCI est entièrement intégré à l'infrastructure sous-jacente. Cette intégration facilite le provisionnement d'un cluster WebLogic, la création et la configuration de l'infrastructure requise, ainsi que la fourniture des services requis, tels que les équilibreurs de charge et le stockage de fichiers.
L'architecture utilise une région avec un domaine de disponibilité et des sous-réseaux régionaux. La même architecture de référence peut être utilisée dans une région comportant plusieurs domaines de disponibilité. Nous vous recommandons d'utiliser un sous-réseau régional pour votre déploiement, quel que soit le nombre de domaines de disponibilité.
Lorsqu'elle est provisionnée, cette architecture de référence inclut les éléments suivants :
- Un cluster OCI Kubernetes Engine (OKE) déployé dans un sous-réseau privé avec deux pools de noeuds
- Service de stockage de fichiers partagé entre les pods
- Hôte d'administration déployé dans un sous-réseau privé pour accéder facilement aux zones suivantes :
- Cluster OCI Kubernetes Engine
- Journaux pour le domaine Oracle WebLogic Server
- Configuration du répertoire de base Jenkins
- Scripts d'aide pour gérer votre domaine
- Le service de stockage de fichiers
- Bastion d'hôte déployé dans un sous-réseau public pour accéder aux ressources déployées dans le sous-réseau privé
- n équilibreur de charge privé permettant d'accéder à la console Jenkins et à la console d'administration Oracle WebLogic Server
- Equilibreur de charge public permettant d'accéder au cluster Oracle WebLogic Server
Le schéma suivant illustre cette architecture de référence :
wls-oke-marketplace-oracle.zip
Cette architecture comprend les composants suivants :
- Région
Une région Oracle Cloud Infrastructure est une zone géographique localisée contenant des centres de données hébergeant des domaines de disponibilité. Les régions sont indépendantes les unes des autres et de grandes distances peuvent les séparer (entre les pays ou même les continents).
- Domaine de disponibilité
Les domaines de disponibilité sont des centres de données autonomes indépendants au sein d'une région. Les ressources physiques de chaque domaine de disponibilité sont isolées de celles des autres, ce qui garantit la tolérance aux pannes. Les domaines de disponibilité ne partagent ni infrastructure (par exemple, alimentation, système de refroidissement), ni réseau de domaine de disponibilité interne. Par conséquent, une panne sur un domaine de disponibilité ne doit pas affecter les autres domaines de disponibilité de la région.
- Réseau cloud virtuel (VCN) et sous-réseau
Un VCN est un réseau personnalisable défini par logiciel que vous configurez dans une région Oracle Cloud Infrastructure. Comme les réseaux de centre de données traditionnels, les réseaux cloud virtuels vous donnent le contrôle sur l'environnement réseau. Un réseau cloud virtuel peut comporter plusieurs blocs CIDR qui ne se chevauchent pas et que vous pouvez modifier après l'avoir créé. Vous pouvez segmenter un réseau cloud virtuel en plusieurs sous-réseaux ciblant une région ou un domaine de disponibilité. Chaque sous-réseau est composé d'une plage contiguë d'adresses qui ne chevauchent pas celles des autres sous-réseaux du réseau cloud 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é.
- Passerelle de service
Une passerelle de service fournit un accès à partir d'un VCN à d'autres services, tels qu'Oracle Cloud Infrastructure Object Storage. Le trafic entre le VCN et le service Oracle passe par la structure du réseau Oracle et ne traverse pas Internet.
- Equilibreur de charge
Oracle Cloud Infrastructure Load Balancing fournit une distribution automatisée du trafic à partir d'un point d'entrée unique vers plusieurs serveurs.
- File Storage
Oracle Cloud Infrastructure File Storage offre un système de fichiers réseau durable, évolutif, sécurisé et adapté à l'entreprise. Vous pouvez vous connecter à OCI File Storage à partir de n'importe quelle instance Bare Metal, de machine virtuelle ou de conteneur dans un VCN. Vous pouvez également accéder à OCI File Storage à partir de l'extérieur du VCN à l'aide d'Oracle Cloud Infrastructure FastConnect et du VPN IPSec.
- Kubernetes Engine
Oracle Cloud Infrastructure Kubernetes Engine (OCI Kubernetes Engine ou 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. Indiquez les ressources de calcul requises par vos applications et Kubernetes Engine les provisionne sur Oracle Cloud Infrastructure dans une location existante. OKE utilise Kubernetes pour automatiser le déploiement, le redimensionnement et la gestion des applications en conteneur dans les clusters d'hôtes.
- Oracle Cloud Infrastructure Registry
Oracle Cloud Infrastructure Registry est un service géré par Oracle qui vous permet de simplifier votre workflow du développement jusqu'à la production. Le registre facilite le stockage, le partage et la gestion des artefacts de développement, tels que des images Docker.
- Domaine WebLogic
Un domaine WebLogic est un groupe d'applications et de ressources associées, ainsi que les informations de configuration nécessaires à leur exécution. Le domaine se compose d'un serveur d'administration et d'un ou plusieurs serveurs gérés pour héberger vos déploiements d'applications Java. Les instances de serveur géré peuvent être clusterisées, non clusterisées ou une combinaison d'instances clusterisées et non clusterisées. Tous les clusters du domaine utilisent le même serveur d'administration.
- Composants du cluster WebLogic
Les composants d'un cluster peuvent tirer parti des options de basculement et d'équilibrage de la charge. Les types d'objet suivants peuvent être inclus dans un cluster dans un déploiement Oracle WebLogic Server :
- Servlets
- Pages JSP (JavaServer Pages)
- Enterprise Java Beans (EJB)
- Objets RMI
- Destinations JMS (Java Messaging Service)
- Connexions JDBC (Java Database Connectivity)
- Opérateur Kubernetes Oracle WebLogic Server
Le domaine Oracle WebLogic Server pour OKE inclut l'opérateur Kubernetes Oracle WebLogic Server open source, qui dispose de plusieurs fonctionnalités clés pour faciliter la gestion des domaines dans un environnement Kubernetes. Un domaine de serveur WebLogic est modélisé en tant que ressource personnalisée dans le fichier de configuration Kubernetes. L'opérateur utilise cette configuration et l'API Kubernetes pour automatiser les opérations de serveur WebLogic, telles que le provisionnement, le démarrage ou l'arrêt des serveurs, l'application de patches, le redimensionnement et la sécurité.
- Jenkins
Oracle WebLogic Server pour OKE utilise Jenkins pour automatiser la création d'images personnalisées pour votre domaine Oracle WebLogic Server et déployer ces images vers le cluster Kubernetes. Jenkins est un moteur d'automatisation open source qui facilite un workflow de développement basé sur l'intégration continue et la livraison continue (CI/CD). Vous créez des projets qui effectuent une série d'étapes, telles que l'extraction de fichiers à partir d'un système de contrôle source, la compilation de code ou l'exécution d'un script. Les pipelines sont un type de projet qui organise des activités complexes en différentes étapes, telles que la création, le test et le déploiement d'applications.
Recommandations
Utilisez les recommandations suivantes comme point de départ. Vos exigences peuvent différer.
- 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 à des sous-réseaux dans le VCN. Utilisez des blocs CIDR qui se trouvent dans l'espace d'adresse IP privée standard.
Sélectionnez les blocs CIDR qui ne chevauchent aucun autre réseau (dans Oracle Cloud Infrastructure, votre centre de données sur site ou un autre fournisseur cloud) auquel vous avez l'intention de configurer des connexions privées.
Après avoir créé un VCN, vous pouvez modifier, ajouter et supprimer ses blocs CIDR.
Dans cette architecture, Oracle WebLogic Server for OKE crée un réseau cloud virtuel (VCN) et des sous-réseaux dans Oracle Cloud Infrastructure pour prendre en charge Oracle WebLogic Server, Kubernetes et les équilibreurs de charge. Mais si vous le souhaitez, vous pouvez également utiliser un VCN existant et des sous-réseaux existants. Oracle WebLogic Server pour OKE crée des sous-réseaux privés pour l'instance de calcul de l'hôte d'administration, pour les composants Kubernetes et pour le stockage de fichiers. Elle crée des sous-réseaux publics pour l'équilibreur de charge public et les instances de calcul de bastion. Nous vous recommandons de suivre la même architecture lorsque vous utilisez des sous-réseaux existants.
- Equilibreur de charge
Lorsque vous créez un domaine, Oracle WebLogic Server pour OKE crée et configure les équilibreurs de charge suivants dans Oracle Cloud Infrastructure :
- Un équilibreur de charge public distribue le trafic entre les serveurs gérés de votre domaine
- Un équilibreur de charge privé permet d'accéder à la console d'administration Oracle WebLogic Server et à la console Jenkins
Un équilibreur de charge est constitué d'instances principale et de secours, mais il est accessible à partir d'une seule adresse IP. Si l'instance principale échoue, le trafic est automatiquement acheminé vers l'instance de secours.
Aucune adresse IP publique n'est affectée à un équilibreur de charge privé. Vous ne pouvez pas y accéder à partir d'une instance Oracle Cloud Infrastructure externe. Vous pouvez utiliser l'instance de calcul de bastion pour accéder à l'équilibreur de charge privé de votre domaine.
Oracle WebLogic Server pour OKE crée également un contrôleur d'entrée Nginx dans le cluster Kubernetes. Nginx est un service proxy inverse open source qui contrôle le flux de trafic vers les pods au sein du cluster Kubernetes.
- Domaine WebLogic
Lors de la création du domaine, l'instance de calcul d'administration est également utilisée pour configurer le nouveau cluster Kubernetes et déployer les pods pour le domaine. Par défaut, cette architecture provisionne un domaine clusterisé. Vous pouvez personnaliser le domaine pour qu'il ne soit pas clusterisé après le provisionnement.
Les domaines créés avec Oracle WebLogic Server pour OKE n'utilisent pas le gestionnaire de noeuds. L'opérateur Kubernetes Oracle WebLogic Server effectue des opérations de surveillance de l'état du serveur et de cycle de vie.
Oracle WebLogic Server pour OKE installe le client Helm sur l'instance de calcul d'administration et utilise Helm pour installer le graphique de l'opérateur Kubernetes Oracle WebLogic Server. Helm est un gestionnaire de packages pour Kubernetes que vous pouvez utiliser pour installer et gérer rapidement des applications, des outils et des services Kubernetes pour un cluster Kubernetes. Les applications installées dans le cluster Kubernetes à l'aide de Helm incluent Jenkins CI, Nginx et WebLogic Kubernetes Operator.
Oracle WebLogic Server pour OKE installe et configure l'opérateur dans le cluster Kubernetes. Vous pouvez utiliser l'opérateur avec
kubectl
sur l'instance de calcul d'administration.Oracle WebLogic Server pour OKE utilise Jenkins pour automatiser la création d'images personnalisées pour le domaine de serveur WebLogic et le déploiement de ces images vers le cluster Kubernetes.
- OCI Kubernetes Engine
Lorsque vous créez un domaine avec Oracle WebLogic Server pour OKE, il provisionne automatiquement deux pools de noeuds : le pool de noeuds WebLogic et le pool de noeuds non WebLogic. Par défaut, chaque pool de noeuds est créé avec un noeud de processus actif. Toutefois, lors du provisionnement, vous pouvez indiquer le nombre de noeuds de processus actif à inclure dans chaque pool de noeuds.
Les pods suivants sont déployés vers le cluster Kubernetes dans le cadre de l'architecture :
- Pool de noeuds WebLogic :
- Pod exécutant le serveur d'administration du domaine
- Un pod exécutant chaque serveur géré dans le domaine
- Pod exécutant l'agent Jenkins
- Pool de noeuds autre que WebLogic :
- Pod exécutant le contrôleur Jenkins
- Pod exécutant un contrôleur d'entrée Nginx
Lorsque vous créez un domaine, Oracle WebLogic Server for OKE propage une image par défaut vers le registre, qui est utilisé pour provisionner les pods de votre domaine. A partir de l'instance de calcul d'administration, vous pouvez mettre à jour cette image par défaut, puis appliquer ces modifications à l'aide de Kubernetes.
Oracle WebLogic Server pour OKE provisionne le serveur principal Jenkins sur un pod dans le cluster Kubernetes. Jenkins est également configuré pour utiliser le module d'extension Kubernetes. Lorsque vous lancez ou planifiez un travail, le serveur Jenkins crée un autre pod dans le cluster Kubernetes et ce pod d'agent exécute le travail.
- Pool de noeuds WebLogic :
Points à prendre en compte
Tenez compte des points suivants lors du déploiement de cette architecture de référence.
- Stockage
Les fichiers de votre domaine sont stockés localement dans chaque pod du cluster Kubernetes, mais Oracle WebLogic Server pour OKE utilise également Oracle Cloud Infrastructure File Storage pour prendre en charge certains cas d'utilisation de l'administration. Oracle WebLogic Server pour OKE exporte le système de fichiers vers une cible de montage dans un domaine de disponibilité indiqué, qui peut être un domaine de disponibilité différent de celui utilisé pour les instances de calcul du domaine.
Cette architecture crée une configuration de domaine Oracle WebLogic Server de base, qui ne nécessite pas de base de données. Si vous voulez créer des applications avec Oracle Application Development Framework (ADF), Oracle WebLogic Server for OCI peut également être utilisé pour créer un domaine compatible JRF (Java require files). Envisagez d'utiliser une base de données Oracle Autonomous Transaction Processing ou un système Oracle Cloud Infrastructure Database existant, requis pour provisionner un domaine compatible JRF.
- Sécurité
Le provisionnement d'un domaine dans Oracle WebLogic Server pour OKE nécessite des clés secrètes dans Oracle Cloud Infrastructure Vault. Chaque clé secrète ne stocke qu'un seul mot de passe. Le mot de passe est requis lorsque vous créez un cluster Oracle WebLogic Server. Cette architecture utilise un coffre standard, hébergé sur une partition de module de sécurité matériel (HSM) avec plusieurs locataires, et utilise une mesure basée sur des clés plus rentable à des fins de facturation. Un coffre privé virtuel offre une meilleure isolation et de meilleures performances en allouant une partition dédiée sur un HSM. Chaque type de coffre a une limite de service distincte dans votre location Oracle Cloud Infrastructure.
- Facilité de gestion
Oracle WebLogic Server for OKE est accessible en tant qu'ensemble d'applications dans Oracle Cloud Marketplace.
Oracle Cloud Marketplace est une boutique en ligne disponible dans la console Oracle Cloud Infrastructure. Lorsque vous lancez une application Oracle WebLogic Server pour OKE à partir d'Oracle Cloud Marketplace, elle vous invite à fournir des informations de base, puis vous dirige vers Resource Manager pour terminer la configuration de votre domaine Oracle WebLogic Server et des ressources cloud prises en charge. Resource Manager est un service Oracle Cloud Infrastructure qui utilise Terraform pour provisionner, mettre à jour et détruire un ensemble de ressources cloud associées en tant qu'unité unique appelée pile.
Choisissez une application Oracle WebLogic Server for OKE qui répond à vos exigences fonctionnelles et de licence.
- Coût
Voici la liste des éditions de Bring Your Own License (BYOL) et de crédits universels (UCM) disponibles pour Oracle WebLogic Server for Oracle Cloud Infrastructure Kubernetes Engine avec une compatibilité totale avec les logiciels sur site Oracle WebLogic Server :
- Oracle WebLogic Server Enterprise Edition pour OKE (UCM)
- Oracle WebLogic Suite pour OKE (UCM)
- Oracle WebLogic Server Enterprise Edition pour OKE (BYOL)
- Oracle WebLogic Suite pour OKE (BYOL)
Déployez
Les piles Terraform avec différentes options de licence pour déployer cette architecture de référence sont disponibles sur Oracle Cloud Marketplace.
Pour déployer la pile appropriée, reportez-vous à Introduction à Oracle WebLogic Server pour OKE.