Préparation du niveau Web sur OCI
Provisionnez et configurez votre site secondaire sur Oracle Cloud Infrastructure (OCI) pour qu'il soit cohérent avec votre site principal sur site.
Remarque :
Vous pouvez trouver le code Terraform permettant de créer les ressources décrites dans cette section (équilibreur de charge OCI, certificat SSL, ensembles de back-ends et back-ends, stratégies de routage, processus d'écoute et ensembles de règles) dans Télécharger le code.
(Facultatif) Préparation des hôtes Oracle HTTP Server
Remarque :
La création et la configuration d'Oracle HTTP Server sont facultatives. Vous pouvez configurer le niveau Web sur OCI uniquement à l'aide de l'équilibreur de charge OCI (sans utiliser Oracle HTTP Server).
Provisionner les hôtes Oracle HTTP Server
Chaque serveur Oracle HTTP Server exécuté dans OCI doit disposer d'un contrat de licence et de support valide en plus du contrat de licence et de support utilisé pour couvrir l'instance Oracle HTTP Server exécutée sur site. Vous pouvez utiliser les images Oracle WebLogic Server for OCI pour créer des instances de calcul pour Oracle HTTP Server sur Oracle Cloud. Les instances de calcul créées avec ces images incluent l'habilitation permettant d'exécuter Oracle HTTP Server et sont facturées par OCPU/heure pour l'habilitation à exécuter le logiciel WebLogic lorsqu'elles sont en cours d'exécution. Lors de la création des instances de calcul avec Oracle WebLogic Server for OCI, vous pouvez utiliser la console d'instance de calcul ou le Marketplace. Ces images sont disponibles pour les systèmes d'exploitation Oracle Linux 7.9 et Oracle Linux 8.5.
Cet exemple utilise deux instances de calcul dans un seul domaine de disponibilité au sein du compartiment, comme indiqué dans le tableau.
Nom | Compartiment | Domaine de disponibilité | Image | Forme | VCN | Sous-réseau |
---|---|---|---|---|---|---|
hydrohs1 | HyDRCompmt | AD1 | Image UCM Oracle WebLogic Enterprise Edition (Oracle Linux 7.9) | VM.Standard2.2 | hydrvcn | webTierSubnet |
hydrohs2 | HyDRCompmt | AD1 | Image UCM Oracle WebLogic Enterprise Edition (Oracle Linux 7.9) | VM.Standard2.2 | hydrvcn | webTierSubnet |
Effectuez les opérations suivantes pour provisionner les instances de calcul à l'aide de la console d'instance de calcul :
Préparation des utilisateurs et des groupes du système d'exploitation
Les mêmes utilisateur et groupe que ceux utilisés par le logiciel Oracle sur site principal sont requis dans les instances de calcul secondaires.
Les images Oracle WebLogic Server for Oracle Cloud Infrastructure disposent déjà d'un utilisateur et d'un groupe oracle. Toutefois, ces valeurs (nom utilisateur, nom de groupe, uid
et gid
) peuvent ne pas correspondre aux valeurs de votre instance principale et vous devrez configurer les hôtes secondaires pour qu'ils correspondent aux valeurs de l'utilisateur et du groupe oracle principal. Les exemples suivants montrent comment configurer les hôtes secondaires de ce niveau pour qu'ils correspondent aux valeurs de l'utilisateur et du groupe oracle principal.
Préparation de la configuration requise pour le système d'exploitation
runinstaller
sur les hôtes secondaires. Etant donné que les images Oracle WebLogic Server for Oracle Cloud Infrastructure sont préparées pour le logiciel WebLogic, vous n'avez pas besoin d'ajouter manuellement des packages pour WebLogic. Toutefois, ces hôtes Oracle HTTP Server exécutent le produit Oracle HTTP Server. Assurez-vous que les hôtes secondaires répondent aux exigences d'Oracle HTTP Server.Préparation des alias de nom d'hôte pour Oracle HTTP Server
Cela peut être implémenté de 2 façons :
- Ajoutez les noms d'hôte en tant qu'alias aux fichiers
/etc/hosts
des instances de calcul Oracle WebLogic Server for OCI. - Utilisez une vue DNS privée dans le VCN OCI secondaire.
Utiliser des fichiers /etc/hosts
/etc/hosts
des hôtes secondaires, pointant vers les adresses IP des hôtes secondaires. Ce mode est valide dans tous les scénarios lorsque le serveur DNS est le même sur les sites principaux sur site et secondaires Oracle Cloud Infrastructure (OCI), ainsi que lorsque des serveurs DNS séparés sont utilisés sur les sites principal et secondaire. Les entrées du fichier /etc/hosts
ont la priorité sur la résolution DNS, car il s'agit de la priorité prédéfinie dans la directive "hosts" du fichier /etc/nsswitch.conf
.
Toutefois, cette méthode nécessite d'ajouter manuellement les entrées à tous les hôtes Oracle HTTP Server :
Utilisation du système de noms de domaine (DNS)
/etc/hosts
de tous les hôtes.
Ajoutez les entrées des noms d'hôte virtuel Oracle HTTP Server à la vue privée créée dans OCI à l'étape Préparation du niveau intermédiaire sur OCI :
Ouverture des ports requis dans les pare-feu de l'hôte OCI
ssh
, dhcp
). Vous devez ouvrir les ports utilisés par Oracle HTTP Server.
Création des variables d'environnement utilisateur oracle
pour Oracle HTTP Server
oracle
dans les hôtes Oracle HTTP Server. Par exemple, ORACLE_HOME
, JDK_HOME
, PATH
, WEB_DOMAIN_HOME
et autres.
Réplication du produit et de la configuration Oracle HTTP Server à partir du serveur principal
rsync
pour copier les fichiers binaires et la configuration Oracle HTTP Server à partir des noeuds Oracle HTTP Server principaux.
Vous pouvez également télécharger le logiciel Oracle HTTP Server, l'installer et le configurer à partir de zéro dans les instances de calcul Oracle HTTP Server OCI. Cette approche est hors de portée de ce document. Toutefois, vous devez utiliser cette approche lorsque les instances de calcul OCI Oracle HTTP Server ont un système d'exploitation différent de celui des hôtes Oracle HTTP Server principaux.
Les fichiers binaires et les fichiers de configuration Oracle HTTP Server résident normalement dans le stockage privé. Dans OCI, vous pouvez utiliser le volume de blocs dont dispose l'instance de calcul par défaut. Vous pouvez également créer un volume de blocs pour chaque calcul Oracle HTTP Server (comme décrit dans Préparation des volumes de blocs OCI) et les monter dans les instances de calcul Oracle HTTP Server (comme décrit dans Montage des volumes de blocs OCI).
Cet exemple utilise le volume de blocs par défaut des instances de calcul Oracle HTTP Server sans créer de volumes de blocs supplémentaires.
La configuration et les fichiers binaires d'Oracle HTTP Server ne changent pas fréquemment au fil du temps. Après cette réplication initiale, vous pouvez répéter la même réplication pendant le cycle de vie. Vous pouvez également gérer manuellement la configuration d'Oracle HTTP Server dans le serveur principal et secondaire en implémentant les modifications de configuration d'Oracle HTTP Server sur les deux sites.
Préparer l'équilibreur de charge OCI
Créez et configurez l'équilibreur de charge Oracle Cloud Infrastructure sur le cloud.
Remarque :
Vous pouvez trouver le code Terraform permettant de créer les ressources décrites dans cette section (équilibreur de charge OCI, certificat SSL, ensembles de back-ends et back-ends, stratégies de routage, processus d'écoute et ensembles de règles) dans Télécharger le code.
Provisionner l'équilibreur de charge OCI
Pour être cohérent avec le site sur site principal, provisionnez un équilibreur de charge sur votre site secondaire sur Oracle Cloud Infrastructure (OCI) en tant que point d'entrée du système.
Téléchargement des certificats
Téléchargez les certificats utilisés par l'équilibreur de charge principal.
Création des ensembles de back-ends
Un ensemble de back-ends est une entité logique qui contient la liste des serveurs back-end qui exécutent les mêmes applications. Lorsque vous définissez un ensemble de back-ends, vous devez indiquer une stratégie d'équilibrage de charge et un test de vérification de l'état. Vous pouvez ensuite ajouter la liste des serveurs back-end.
La configuration des ensembles de back-ends varie selon que vous utilisez ou non Oracle HTTP Server devant les hôtes du serveur WebLogic.
Si vous utilisez Oracle HTTP Server, l'équilibreur de charge Oracle Cloud Infrastructure (OCI) envoie les demandes aux serveurs HTTPS. Créez un ensemble de back-ends pour chaque port exposé par les serveurs HTTPS. Par exemple, créez un ensemble de back-ends pour le processus d'écoute Oracle HTTP Server qui fournit l'accès aux applications, et un autre ensemble de back-ends pour le processus d'écoute Oracle HTTP Server qui fournit l'accès à chaque console d'administration Oracle WebLogic Server.
Si vous n'utilisez pas Oracle HTTP Server, l'équilibreur de charge OCI envoie les demandes directement aux serveurs WebLogic. Créez un ensemble de back-ends pour chaque cluster Oracle WebLogic Server et un autre ensemble de back-ends pour le serveur d'administration.
- Connectez-vous à la console OCI.
- Sélectionnez la région et le compartiment appropriés.
- Dans le menu de navigation, cliquez sur Networking, puis sur Equilibreurs de charge.
- Cliquez sur l'équilibreur de charge auquel vous souhaitez ajouter un back-end.
- Cliquez sur Ensembles de back-ends dans le menu Ressources, puis sur Créer un ensemble de back-ends.
- Entrez les informations suivantes dans la boîte de dialogue Créer un ensemble de back-ends :
- Cliquez sur Créer.
Si Oracle HTTP Server écoute des ports supplémentaires pour d'autres services, créez un ensemble de back-ends pour chaque service de la même manière.
Voici un exemple d'ensembles de back-ends lorsque vous utilisez Oracle HTTP Server.
Composant | Nom d'ensemble de back-ends | Stratégie de répartition du trafic | Persistance de session | Nom de cookie (exemple) | Attribut : sécurisé | Vérification de l'état |
---|---|---|---|---|---|---|
Serveur Admin | OHS_Admin_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-ADMIN-Backendset |
Non cochée | TCP ou HTTP |
Tous les composants SOA
|
OHS_HTTP_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-OHS-HTTP-Backendset |
Case cochée | TCP ou HTTP |
Oracle Web Services Manager | OHS_HTTP_internal_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-OHS-Internal-HTTP-Backendset |
Non cochée | TCP ou HTTP |
Si Oracle HTTP Server écoute des ports supplémentaires pour d'autres services, créez un ensemble de back-ends pour chaque service de la même manière.
Voici un exemple d'ensembles de back-ends lorsque vous n'utilisez pas Oracle HTTP Server.
Composant | Nom d'ensemble de back-ends | Stratégie de répartition du trafic | Persistance de session | Nom du cookie (exemple) | Attribut : sécurisé | Vérification de l'état |
---|---|---|---|---|---|---|
Tous les produits (admin) | Admin_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-ADMIN-Backendset |
Non vérifié | TCP ou HTTP |
Oracle Web Services Manager | WSM_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-WSM-Backendset |
Non vérifié | TCP ou HTTP |
Oracle SOA Suite, Business Process Management et Oracle B2B | SOA_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-SOA-Backendset |
Case cochée | TCP ou HTTP |
Oracle Service Bus | OSB_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-OSB-Backendset |
Case cochée | TCP ou HTTP |
Oracle Enterprise Scheduler (ESS) | ESS_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-ESS-Backendset |
Case cochée | TCP ou HTTP |
Surveillance de l'activité commerciale (BAM) | BAM_backendset |
Tour de rôle pondéré | Activer la persistance de cookie d'équilibreur de charge | X-Oracle-LBR-BAM-Backendset |
Case cochée | TCP ou HTTP |
Si vous disposez de clusters WebLogic supplémentaires, créez un ensemble de back-ends pour chaque cluster de la même manière.
Définition des back-ends pour chaque ensemble de back-ends
Définissez les back-ends pour chaque ensemble de back-ends dans l'équilibreur de charge Oracle Cloud Infrastructure (OCI).
Si vous utilisez Oracle HTTP Server, ajoutez les noeuds Oracle HTTP Server et les ports appropriés en tant que back-ends dans chaque ensemble de back-ends.
Si vous n'utilisez pas Oracle HTTP Server, ajoutez les noeuds Oracle WebLogic Server et les ports appropriés en tant que back-ends dans chaque ensemble de back-ends.
- Dans la console, sélectionnez un ensemble de back-ends. Cliquez sur Back-ends, puis sur Ajouter des back-ends.
- Entrez l'adresse IP et le port du serveur back-end.
Le tableau présente les ensembles de back-ends créés dans l'exemple de ce document lors de l'utilisation d'Oracle HTTP Server :
Nom d'ensemble de back-ends | Back-end |
---|---|
OHS_Admin_backendset |
Instances de calcul :
|
OHS_HTTP_backendset |
Instances de calcul :
|
OHS_HTTP_internal_backendset |
Instances de calcul :
|
Le tableau présente les ensembles de back-ends créés dans l'exemple de ce document lorsque vous n'utilisez PAS Oracle HTTP Server :
Nom d'ensemble de back-ends | Back-end |
---|---|
Admin_backendset |
Adresse IP :
|
WSM_backendset |
Instances de calcul :
|
SOA_backendset |
Instances de calcul :
|
OSB_backendset |
Instances de calcul :
|
ESS_backendset |
Instances de calcul :
|
BAM_backendset |
Instances de calcul :
|
Définir les stratégies de routage et configurer les règles
Les stratégies de routage permettent de répartir les demandes entrantes vers l'ensemble de back-ends approprié. Par exemple, une demande à /console
est envoyée à l'ensemble de back-ends d'administration et une demande à /app1
est envoyée à l'ensemble de back-ends du cluster où app1
est en cours d'exécution.
Si vous utilisez Oracle HTTP Server, vous définissez normalement les routages (tels que /app1
, /app2
, /console
, etc.) dans la configuration Oracle HTTP Server. Dans ce cas, vous n'avez pas besoin de définir les règles et stratégies de routage dans l'équilibreur de charge Oracle Cloud Infrastructure (OCI).
Si vous n'utilisez pas Oracle HTTP Server, vous devez définir les règles et les stratégies de routage dans l'équilibreur de charge OCI afin de répartir les demandes vers l'ensemble de back-ends approprié.
Composant | Nom de la stratégie de routage | Règle | Conditions : Si un chemin de correspondance commence par | Action : routage vers l'ensemble de back-ends |
---|---|---|---|---|
Tous les produits (admin) | Admin_Rules |
Admin_routerule |
|
Admin_backendset |
Oracle Service Bus (admin) | Admin_Rules |
Admin_routerule |
|
Admin_backendset |
Oracle Web Services Manager | Internal_Rules |
WSM_routerule |
|
WSM_backendset |
Oracle Service Bus | SOA_Rules |
OSB_routerule |
|
OSB_backendset |
Oracle SOA Suite | SOA_Rules |
SOA_routerule |
(*) plus d'alias personnalisé peut être requis pour les tâches personnalisées |
SOA_backendset |
Gestion des processus commerciaux | SOA_Rules |
SOA_routerule |
|
SOA_backendset |
Oracle Enterprise Scheduler (ESS) | SOA_Rules |
ESS_routerule |
|
ESS_backenset |
Surveillance de l'activité commerciale (BAM) | SOA_Rules |
BAM_routerule |
|
BAM_backendset |
Oracle B2B | SOA_Rules |
B2B_routerule |
|
SOA_backendset |
Vous pouvez créer autant de stratégies de routage, de règles et de conditions que nécessaire pour votre environnement.
Créer les processus d'écoute
Créez les processus d'écoute pour chaque combinaison de nom frontal et de port utilisée pour accéder au système. Vous devez utiliser les mêmes noms d'hôte (noms frontaux virtuels) et ports que ceux utilisés par l'équilibreur de charge principal.
- Ajoutez le nom d'hôte frontal virtuel en tant que nom d'hôte dans l'équilibreur de charge Oracle Cloud Infrastructure.
- Créez les processus d'écoute.
Le tableau suivant récapitule les processus d'écoute créés dans l'exemple de ce document, ainsi que le protocole, le port, les ensembles de back-ends, la stratégie de routage, le nom d'hôte et l'utilisation SSL associés. Il s'agit d'un exemple de référence. Si votre système utilise des noms d'hôte, des ports ou des protocoles frontaux supplémentaires dans le système Oracle WebLogic Server principal, vous devez créer les processus d'écoute et les noms d'hôte correspondants en fonction de vos besoins. Par exemple, si vous utilisez un système frontal de remplacement pour accéder à la console Oracle WebLogic Server et à la console Oracle Enterprise Manager.
Processus d'écoute | Protocole | Port | Ensemble de back-ends | Règle de routage | HostName | Utiliser SSL |
---|---|---|---|---|---|---|
Admin_listener |
HTTP | 7001 |
|
Admin_Rules |
mysoa.example.com | Non |
HTTPS_listener |
HTTPS | 443 |
|
SOA_Rules |
mysoa.example.com | Oui |
HTTP_listener |
HTTP | 80 | S/O* | SANS OBJET | mysoa.example.com | Non |
Internal_listener |
HTTP | 8888 |
|
Internal_Rules |
mysoa.example.com | Non |
* Dans cet exemple, HTTP_listener
est utilisé uniquement pour rediriger les demandes vers HTTPS_listener
(HTTPS). Le back-end qui lui est affecté ne sera pas utilisé. Toutefois, étant donné qu'il est obligatoire d'en fournir un, vous devez en indiquer un qui ne dispose pas de SSL coché (utilisez un ensemble de back-ends vide par défaut).
Créer l'ensemble de règles pour les en-têtes SSL
Créez un ensemble de règles pour les en-têtes SSL dans l'équilibreur de charge Oracle Cloud Infrastructure (OCI) et associez-le au processus d'écoute HTTPS.
Créer l'ensemble de règles pour réacheminer le protocole HTTP vers HTTPS
Créez une règle de redirection et associez-la à HTTP_listener pour rediriger le port 80 vers le port 443. Pour la topologie EDG, toutes les demandes atteignant le port 80 (HTTP) dans l'équilibreur de charge doivent être redirigées vers le port 443 (HTTPS).
Ajout du nom et de l'adresse IP frontaux virtuels aux instances de calcul SOA
Dans une topologie de récupération après sinistre, les clients doivent accéder au système à l'aide d'un nom de domaine qualifié complet frontal (généralement appelé nom frontal virtuel ou URL personnalisée) indépendant du centre de données. Ce nom virtuel frontal doit être résolu en adresse IP d'équilibreur de charge du site actif (principal) actuel.
Le système principal doit déjà utiliser un nom virtuel frontal résolu par le DNS avec l'adresse IP de l'équilibreur de charge principal. Toutefois, les hôtes Oracle SOA Suite de chaque site doivent toujours résoudre le nom frontal avec son équilibreur de charge local, quelle que soit la résolution côté client avec DNS. Pour cela, le nom de front-end virtuel est ajouté à leur fichier /etc/hosts
avec l'adresse IP appropriée dans chaque site. Pour ce faire, vous pouvez également utiliser différents serveurs DNS sur chaque site. Dans ce cas, le serveur DNS local résoudrait le nom frontal avec l'adresse IP d'équilibreur de charge appropriée sur chaque site.
Utiliser des fichiers /etc/hosts
/etc/hosts
des hôtes Oracle WebLogic Server principal et secondaire ne doit pas être modifié en cas de permutation ou de basculement. Les hôtes Oracle WebLogic Server résolvent toujours le nom frontal virtuel avec son adresse IP frontale. La mise à jour DNS nécessaire lors des procédures de permutation et de basculement est effectuée dans les fichiers DNS ou hôtes utilisés par les clients Oracle WebLogic Server.
Utilisation du système de noms de domaine (DNS)
Si vous suivez cette approche, vous pouvez ajouter le nom frontal (pointant vers l'adresse IP de l'équilibreur de charge secondaire) au service DNS utilisé par les niveaux intermédiaires secondaires. Dans la base de données principale, le nom frontal doit déjà être résolu et pointer vers l'adresse IP de l'équilibreur de charge principal.
Dans le serveur principal, le nom frontal devrait déjà être résolu et pointer vers l'adresse IP de l'équilibreur de charge principal.