OpenText eDirectory prend en charge le déploiement de conteneurs OpenText eDirectory sur une instance de conteneur Microsoft Azure. Le processus de déploiement est simple et rapide. Le conteneur OpenText eDirectory est distribué dans le registre en tant qu'image Docker autonome et capable de s'exécuter seule. Cette section vous guide tout au long du processus de déploiement de l'image Docker d'OpenText eDirectory sous Azure.
Pour configurer le conteneur Azure pour le déploiement, nous vous recommandons d'effectuer les étapes de la liste de contrôle suivante :
|
Éléments de la liste de vérifications |
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pour distribuer l'image Docker dans le registre des conteneurs Azure :
Téléchargez le tarball d'image Docker pour OpenText eDirectory à partir du portail Licence de logiciel et téléchargement.
Désarchivez le build téléchargé, extrayez l'image Docker, puis chargez-la dans le registre Docker local à l'aide des commandes suivantes :
tar -xvf eDirectory_93x_Container.tar.gz docker load --input eDirectory_93x/eDirectory_93x.tar.gz
La commande de chargement de Docker charge l'image Docker nommée edirectory:9.3.x à partir de l'archive tar.
Marquez l'image Docker avec le nom de votre registre à l'aide de la commande suivante :
Docker tag edirectory:<image-id> <registry-name>.azurecr.io/<repository-name-tag>
Où
edirectory :<image-id> est 'ID d'image Docker local.
<registry-name> est le nom de votre registre privé.
<repository-name-tag> est la balise que vous voulez assigner à l'image Docker.
Par exemple, docker tag edirectory:93x myazureregistry.azurecr.io/edir93
Distribuez l'image Docker vers le registre à l'aide de la commande suivante :
docker push <registry-name>.azurecr.io/<repository-name-tag>
Où
<registry-name> est le nom de votre registre privé.
<repository-name-tag> est la balise que vous avez assignée à l'image Docker.
Par exemple, docker push myazureregistry.azurecr.io/edir93x
Un fichier YAML est un moyen simple et rapide de créer ou de mettre à jour un groupe de conteneurs. La commande az container create dans l'interface de ligne de commande Azure lit les configurations de groupe à partir d'un fichier YAML. Vous devez éditer et télécharger le fichier YAML fourni avec le tarball de l'image Docker pour OpenText eDirectory avant de créer une instance de conteneur Azure.
La section suivante présente le schéma d'un fichier YAML, y compris les commentaires (indiqués par le symbole #) qui mettent en surbrillance les propriétés des clés. Pour obtenir une description des propriétés de ce schéma, consultez la section Valeurs des propriétés.
name: # Provide the name of the container group
apiVersion: '2019-12-01'
properties: # Properties of container group
containers: # The containers within the container group
- name: test-edir93 # Provide a name of container instance
properties: # Properties of a container instance
image: myazureregistry.azurecr.io/edir93 # Provide the name of the container image used to create the container instance
command:
- /start.sh #Not optional
- 'new -t 93edir1 -n novell -a admin.novell -w xx -S server1 -i -B @1524 -o 1028 -O 1030 -L 1389 -l 1636 --configure-eba-now no' #Sample command
ports: # External-facing ports exposed on the instance, must also be set in group ipAddress property
- protocol: tcp
port: 1030 #HTTPS port. Depends on the parameter provided in command for -O
- protocol: tcp
port: 1389 #LDAP port. Depends on the parameter provided in command for -L
environmentVariables:
- name: YAML_MODE #Mandatory variable. Required if yaml file is used for configuring edirectory
value: '1'
resources: # Minimum resource requirements of the instance
requests:
memoryInGB: 2
cpu: 1.5
volumeMounts: # Array of volume mounts for the instance
- name: configvolume
mountPath: /config #Mandatory. Do not change this path.
imageRegistryCredentials: # Credentials to pull a private image
- server: myazureregistry.azurecr.io #Provide the image registry server name
username: myazureregistry #Provide the image registry username password: xxxx #Provide the image registry password
#restartPolicy: Never #Optional
ipAddress: # IP address configuration of container group
ports:
- protocol: tcp
port: 1030 #HTTPS port. Depends on the parameter provided in command for -O
- protocol: tcp
port: 1389 #LDAP port. Depends on the parameter provided in command for -L
type: Private
networkProfile: # Virtual network profile for container group
id: subscriptions/xxx-xxx-xxx/resourceGroups/myresourcegroup/providers/Microsoft.Network/networkProfiles/aci-network-profile-VirtualNetmy-containersubnet
#Can be found by running the command, az network profile list --resource-group myResourceGroup --query [0].id --output tsv, if no output then run the first time using azure cloud shell
osType: Linux
volumes: # Array of volumes available to the instances
- name: configvolume
azureFile:
shareName: testshare #Provide the name of the Azure File share to be mounted as a volume
storageAccountName: myfileshare #Provide name of the storage account
storageAccountKey: xxx_xxx #Provide storage account access key
Les tableaux suivants décrivent les valeurs à définir dans le schéma.
|
Nom |
Type |
Requis |
Valeur |
|---|---|---|---|
|
Objet containerGroups |
|||
|
Nom |
Chaîne |
Oui |
Nom du groupe de conteneurs. Vous pouvez également fournir un nom de conteneur. |
|
apiVersion |
énuméré |
Oui |
Version d'API de ressource. Par exemple, « 2019-12-01 ». |
|
propriétés |
objet |
Oui |
Propriétés d'un groupe de conteneurs. Recherchez l'objet ContainerGroupProperties dans cette table pour trouver les valeurs prises en charge pour les propriétés. |
|
Objet ContainerGroupProperties |
|||
|
conteneurs |
tableau |
Oui |
Conteneurs dans le groupe de conteneurs. Recherchez l'objet Container dans cette table pour trouver les valeurs prises en charge pour les conteneurs. |
|
imageRegistryCredentials |
tableau |
Non |
Informations d'identification du registre d'images à partir des lesquelles le groupe de conteneurs est créé. Recherchez l'objet ImageRegistryCredential dans cette table pour trouver les valeurs prises en charge pour imageRegistryCredentials. |
|
restartPolicy |
énuméré |
Non |
Redémarrez la stratégie pour tous les conteneurs au sein du groupe de conteneurs :
|
|
ipAddress |
objet |
Non |
Type d'adresse IP du groupe de conteneurs. Recherchez l'objet IPAddress dans cette table pour trouver les valeurs prises en charge pour ipAddress. |
|
osType |
énuméré |
Oui |
Type de système d'exploitation requis par les conteneurs du groupe de conteneurs. - Windows ou Linux |
|
le faire |
tableau |
Non |
Liste des volumes qui peuvent être montés par des conteneurs dans ce groupe de conteneurs. Recherchez l'objet Volume dans cette table pour trouver les valeurs prises en charge pour les volumes. |
|
Objet Conteneur |
|||
|
name |
chaîne |
Oui |
Nom fourni par l'utilisateur de l'instance de conteneur. Par exemple, test-edir93. |
|
propriétés |
objet |
Oui |
Propriétés de l'instance de conteneur. Recherchez l'objet ContainerProperties dans cette table pour trouver les valeurs prises en charge pour les propriétés. |
|
Objet ContainerProperties |
|||
|
Image |
chaîne |
Oui |
Nom de l'image utilisée pour créer l'instance de conteneur. Par exemple, myazureregistry.azurecr.io/edir93 (Étape 3). |
|
command |
tableau |
Non |
Commandes à exécuter dans l'instance de conteneur sous la forme exec. Le conteneur Docker pour OpenText eDirectory accepte les paramètres de l'utilitaire ndsconfig avec la commande Docker. Pour plus d'informations sur l'utilitaire ndsconfig, reportez-vous à la section Utilitaire ndsconfig. |
|
ports |
tableau |
Non |
Ports exposés sur l'instance de conteneur. Recherchez l'objet ContainerPort dans cette table pour trouver les valeurs prises en charge pour les ports. |
|
environmentVariables |
tableau |
Non |
Variables d'environnement à définir dans l'instance de conteneur. Recherchez l'objet EnvironmentVariable dans cette table pour trouver les valeurs prises en charge pour environmentVariables. |
|
ressources |
objet |
Oui |
Les exigeznces de ressource pour l'instance de conteneur. Recherchez l'objet ResourceRequirements dans cette table pour trouver les valeurs prises en charge pour les ressources. |
|
volumeMounts |
tableau |
Non |
Les montages de volume à la disposition de l'instance de conteneur. Recherchez l'objet VolumeMount dans cette table pour trouver les valeurs prises en charge pour volumeMounts. |
|
Objet ContainerPort |
|||
|
protocole |
énuméré |
Non |
Protocole associé au port. - TCP ou UDP |
|
port |
entier |
Oui |
Numéro de port. |
|
Objet EnvironmentVariable |
|||
|
name |
chaîne |
Oui |
Nom de la variable d'environnement. |
|
value |
chaîne |
Non |
Valeur de la variable d'environnement. |
|
Objet ResourceRequirements |
|||
|
requêtes |
objet |
Oui |
Requêtes de ressource de cette instance de conteneur. Recherchez l'objet ResourceRequests dans cette table pour trouver les valeurs prises en charge pour les requêtes. |
|
Objet ResourceRequests |
|||
|
memoryInGB |
number |
Oui |
Requête de mémoire en Go de cette instance de conteneur. |
|
cpu |
number |
Oui |
Requête d'UC de cette instance de conteneur. |
|
Objet VolumeMount |
|||
|
name |
chaîne |
Oui |
Nom du montage de volume. |
|
mountPath |
chaîne |
Oui |
Chemin d'accès au conteneur dans lequel le volume doit être monté. Ne doit pas contenir de signe deux-points (:). |
|
Objet ImageRegistryCredential |
|||
|
server |
chaîne |
Oui |
Le serveur de registre d'images Docker sans protocole tel que « http » et « https ». Entrez le nom du registre créé à l'étape 1 de la liste de contrôle (voir Liste de contrôle pour le déploiement du conteneur). |
|
username |
chaîne |
Non |
Nom d'utilisateur pour le registre privé. Pour plus d'informations, voir Comment rechercher des informations sur le nom d'utilisateur. |
|
password |
chaîne |
Non |
Mot de passe pour le registre privé. Pour plus d'informations, voir Comment rechercher le mot de passe du registre Azure. |
|
Objet Adresse IP |
|||
|
ports |
tableau |
Oui |
Liste des ports exposés sur le groupe de conteneurs. Recherchez l'objet Port dans cette table pour trouver les valeurs prises en charge pour les ports. |
|
type |
énuméré |
Oui |
Indique si l'adresse IP est exposée à l'Internet public ou au réseau VNET privé. - Public ou Privé |
|
Objet Port |
|||
|
protocole |
énuméré |
Non |
Protocole associé au port. - TCP ou UDP |
|
port |
entier |
Oui |
Numéro de port. |
|
objet Volume |
|||
|
name |
chaîne |
Oui |
Nom du volume. |
|
azureFile |
objet |
Non |
Volume de fichiers Azure. Recherchez l'objet AzureFileVolume dans ce tableau pour trouver les valeurs prises en charge pour azureFile. |
|
Objet AzureFileVolume |
|||
|
shareName |
chaîne |
Oui |
Nom du partage de fichiers Azure à monter en tant que volume. Entrez le nom du partage de fichiers de stockage créé à l'étape 3 de la liste de contrôle (voir Liste de contrôle pour le déploiement du conteneur). |
|
storageAccountName |
chaîne |
Oui |
Nom du compte de stockage qui contient le partage de fichiers Azure. |
|
storageAccountKey |
chaîne |
Non |
Clé d'accès au compte de stockage utilisée pour accéder au partage de fichiers Azure. Pour trouver la clé de compte de stockage, voir Afficher les clés d'accès au compte. |
Exécutez la commande suivante pour créer un conteneur dans un groupe de conteneurs à l'aide du fichier YAML que vous avez modifié précédemment :
az container create --resource-group <MyResourceGroup> --name <container-instance-name> --file <containerGroup.yaml>
Où
<MyResourceGroup> représente le nom du groupe de ressources. Champ obligatoire.
<container-instance-name> représente le nom de l'instance de conteneur dans un groupe de conteneurs.
<containerGroup.yaml> représente le chemin d'accès au fichier d'entrée.
Par exemple, az container create --resource-group MyResourcegroup --name edir93 --file edir-azure-conf.yaml