Amazon FSX pour NetApp ONTAP : en rafale vers le cloud
Vous pouvez utiliser cette solution d'automatisation pour provisionner Amazon FSX pour NetApp ONTAP avec des volumes et un FlexCache associé.
|
Amazon FSX pour NetApp ONTAP est également appelé FSX pour ONTAP. |
À un niveau élevé, le code d'automatisation fourni avec cette solution effectue les actions suivantes :
-
Provisionnez un système de fichiers FSX pour ONTAP de destination
-
Provisionnement des SVM (Storage Virtual machines) pour le système de fichiers
-
Création d'une relation de peering de cluster entre les systèmes source et destination
-
Création d'une relation de peering de SVM entre le système source et le système de destination pour FlexCache
-
Vous pouvez également créer des volumes FlexVol à l'aide de FSX pour ONTAP
-
Créez un volume FlexCache dans FSX pour ONTAP, la source pointant vers un stockage sur site
L'automatisation est basée sur Docker et Docker compose qui doivent être installés sur la machine virtuelle Linux comme décrit ci-dessous.
Pour terminer le provisionnement et la configuration, vous devez disposer des éléments suivants :
-
Vous devez télécharger la "Amazon FSX pour NetApp ONTAP : en rafale vers le cloud" solution d'automatisation via l'interface utilisateur Web de BlueXP . La solution est conditionnée en tant que fichier
AWS_FSxN_BTC.zip
. -
Connectivité réseau entre les systèmes source et de destination.
-
Une VM Linux présentant les caractéristiques suivantes :
-
Distribution Linux basée sur Debian
-
Déployé sur le même sous-ensemble VPC utilisé pour le provisionnement FSX pour ONTAP
-
-
Compte AWS.
Étape 1 : installer et configurer Docker
Installez et configurez Docker sur une machine virtuelle Linux basée sur Debian.
-
Préparez l'environnement.
sudo apt-get update sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" sudo apt-get update
-
Installez Docker et vérifiez l'installation.
sudo apt-get install docker-ce docker-ce-cli containerd.io docker --version
-
Ajoutez le groupe Linux requis avec un utilisateur associé.
Vérifiez d'abord si le groupe docker existe dans votre système Linux. Si ce n'est pas le cas, créez le groupe et ajoutez l'utilisateur. Par défaut, l'utilisateur de shell actuel est ajouté au groupe.
sudo groupadd docker sudo usermod -aG docker $(whoami)
-
Activez les nouvelles définitions de groupe et d'utilisateur
Si vous avez créé un nouveau groupe avec un utilisateur, vous devez activer les définitions. Pour ce faire, vous pouvez vous déconnecter de Linux puis vous reconnecter. Ou vous pouvez exécuter la commande suivante.
newgrp docker
Étape 2 : installez Docker compose
Installez Docker compose sur une machine virtuelle Linux basée sur Debian.
-
Installez Docker compose.
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
-
Vérifiez que l'installation a réussi.
docker-compose --version
Étape 3 : préparez l'image Docker
Vous devez extraire et charger l'image Docker fournie avec la solution d'automatisation.
-
Copiez le fichier de solution
AWS_FSxN_BTC.zip
sur la machine virtuelle sur laquelle le code d'automatisation sera exécuté.scp -i ~/<private-key.pem> -r AWS_FSxN_BTC.zip user@<IP_ADDRESS_OF_VM>
Le paramètre d'entrée
private-key.pem
correspond à votre fichier de clé privée utilisé pour l'authentification des serveurs virtuels AWS (instance EC2). -
Accédez au dossier approprié avec le fichier de solution et décompressez le fichier.
unzip AWS_FSxN_BTC.zip
-
Accédez au nouveau dossier
AWS_FSxN_BTC
créé avec l'opération de décompression et répertoriez les fichiers. Vous devriez voir le fichieraws_fsxn_flexcache_image_latest.tar.gz
.ls -la
-
Chargez le fichier image Docker. Le chargement doit normalement se terminer en quelques secondes.
docker load -i aws_fsxn_flexcache_image_latest.tar.gz
-
Vérifiez que l'image Docker est chargée.
docker images
Vous devriez voir l'image Docker
aws_fsxn_flexcache_image
avec la baliselatest
.REPOSITORY TAG IMAGE ID CREATED SIZE aws_fsxn_flexcahce_image latest ay98y7853769 2 weeks ago 1.19GB
Étape 4 : créez un fichier d'environnement pour les identifiants AWS
Vous devez créer un fichier de variables locales pour l'authentification à l'aide de la clé d'accès et de la clé secrète. Ajoutez ensuite le fichier au .env
fichier.
-
Créez le
awsauth.env
fichier à l'emplacement suivant :path/to/env-file/awsauth.env
-
Ajoutez le contenu suivant au fichier :
access_key=<> secret_key=<>
Le format doit doit être exactement comme indiqué ci-dessus sans espaces entre
key
etvalue
. -
Ajoutez le chemin d'accès absolu au fichier à
.env
l'aide de laAWS_CREDS
variable. Par exemple :AWS_CREDS=path/to/env-file/awsauth.env
Étape 5 : créer un volume externe
Vous avez besoin d'un volume externe pour vous assurer que les fichiers d'état Terraform et les autres fichiers importants sont persistants. Ces fichiers doivent être disponibles pour Terraform afin d'exécuter le workflow et les déploiements.
-
Créez un volume externe en dehors de Docker compose.
Assurez-vous de mettre à jour le nom du volume (dernier paramètre) à la valeur appropriée avant d'exécuter la commande.
docker volume create aws_fsxn_volume
-
Ajoutez le chemin d'accès au volume externe au fichier d'environnement à
.env
l'aide de la commande :PERSISTENT_VOL=path/to/external/volume:/volume_name
N'oubliez pas de conserver le contenu du fichier existant et le formatage des deux points. Par exemple :
PERSISTENT_VOL=aws_fsxn_volume:/aws_fsxn_flexcache
Vous pouvez à la place ajouter un partage NFS en tant que volume externe à l'aide d'une commande, par exemple :
PERSISTENT_VOL=nfs/mnt/document:/aws_fsx_flexcache
-
Mettre à jour les variables Terraform.
-
Naviguez jusqu'au dossier
aws_fsxn_variables
. -
Vérifiez que les deux fichiers suivants existent :
terraform.tfvars
etvariables.tf
. -
Mettez à jour les valeurs dans
terraform.tfvars
selon les besoins de votre environnement.Voir "Ressource Terraform : système_fichier_aws_fsx_ONTAP" pour plus d'informations.
-
Étape 6 : provisionnement d'Amazon FSX pour NetApp ONTAP et FlexCache
Vous pouvez provisionner Amazon FSX pour NetApp ONTAP et FlexCache.
-
Accédez à la racine du dossier (AWS_FSXN_BTC) et exécutez la commande de provisionnement.
docker-compose -f docker-compose-provision.yml up
Cette commande crée deux conteneurs. Le premier conteneur déploie FSX pour ONTAP et le second conteneur crée le peering de cluster, le peering de SVM, le volume de destination et FlexCache.
-
Surveiller le processus de provisionnement.
docker-compose -f docker-compose-provision.yml logs -f
Cette commande vous donne la sortie en temps réel, mais a été configurée pour capturer les journaux via le fichier
deployment.log
. Vous pouvez modifier le nom de ces fichiers journaux en modifiant le fichier et en.env
mettant à jour les variablesDEPLOYMENT_LOGS
.
Étape 7 : détruire Amazon FSX pour NetApp ONTAP et FlexCache
Vous pouvez éventuellement supprimer et supprimer Amazon FSX pour NetApp ONTAP et FlexCache.
-
Définissez la variable
flexcache_operation
duterraform.tfvars
fichier sur « détruire ». -
Naviguez jusqu'au dossier racine (AWS_FSXN_BTC) et exécutez la commande suivante.
docker-compose -f docker-compose-destroy.yml up
Cette commande crée deux conteneurs. Le premier conteneur supprime FlexCache et le second conteneur supprime FSX pour ONTAP.
-
Surveiller le processus de provisionnement.
docker-compose -f docker-compose-destroy.yml logs -f