Terraform-csomag használata Amazon Web Services Amazon Elastic Compute Cloud-példány üzembe helyezéséhez és az Azure Archoz való csatlakoztatásához
Ez a cikk útmutatást nyújt az Amazon Web Services (AWS) Amazon Elastic Compute Cloud (EC2) példány üzembe helyezéséhez és Azure Arc-kompatibilis kiszolgálói erőforrásként való csatlakoztatásához a megadott Terraform-csomag használatával.
Előfeltételek
Klónozza az Azure Arc Jumpstart-adattárat.
git clone https://github.com/microsoft/azure_arc.git
Telepítse vagy frissítse az Azure CLI-t a 2.7-es vagy újabb verzióra. Az alábbi paranccsal ellenőrizze az aktuális telepített verziót.
az --version
SSH-kulcs létrehozása (vagy meglévő SSH-kulcs használata)
Azure-szolgáltatásnév létrehozása.
Az AWS virtuális gép Azure Archoz való csatlakoztatásához a közreműködői szerepkörrel hozzárendelt Azure-szolgáltatásnévre van szükség. A létrehozáshoz jelentkezzen be az Azure-fiókjába, és futtassa a következő parancsot. Ezt a parancsot az Azure Cloud Shellben is futtathatja.
az login az account set -s <Your Subscription ID> az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor --scopes "/subscriptions/<Your Subscription ID>"
Például:
az ad sp create-for-rbac -n "http://AzureArcAWS" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
A kimenetnek az alábbihoz hasonlónak kell lennie:
{ "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "displayName": "http://AzureArcAWS", "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
Megjegyzés:
Javasoljuk, hogy a szolgáltatásnevet egy adott Azure-előfizetésre és erőforráscsoportra terjedje ki.
AWS-identitás létrehozása
Ahhoz, hogy a Terraform erőforrásokat hozzon létre az AWS-ben, létre kell hoznunk egy új AWS IAM-szerepkört a megfelelő engedélyekkel, és konfigurálnunk kell a Terraformot a használatukhoz.
Bejelentkezés az AWS felügyeleti konzolra
Bejelentkezés után válassza a Szolgáltatások legördülő listát a bal felső sarokban. A Biztonság, identitás és megfelelőség területen válassza az IAM lehetőséget az identitás- és hozzáférés-kezelési lap eléréséhez
Kattintson a bal oldali menü Felhasználók elemére, majd válassza a Felhasználó hozzáadása lehetőséget egy új IAM-felhasználó létrehozásához.
A Felhasználó hozzáadása lapon adja meg a felhasználó
Terraform
nevét, és jelölje be a Programozott hozzáférés jelölőnégyzetet, majd kattintson a Tovább gombra.Az Engedélyek beállítása lapon válassza a Meglévő szabályzatok közvetlen csatolása, majd az AmazonEC2FullAccess melletti jelölőnégyzetet a képernyőképen látható módon, majd válassza a Tovább gombot.
A Címkék lapon rendeljen hozzá egy címkét egy kulccsal
azure-arc-demo
, majd a Tovább gombra kattintva lépjen a Véleményezés lapra.Ellenőrizze, hogy minden rendben van-e, és ha elkészült, válassza a Felhasználó létrehozása lehetőséget.
A felhasználó létrehozása után megjelenik a felhasználó hozzáférési kulcsának azonosítója és titkos hozzáférési kulcsa. Másolja ki ezeket az értékeket a Bezárás lehetőség kiválasztása előtt. A következő lapon láthat egy példát arra, hogy ennek hogyan kell kinéznie. Ha már rendelkezik ezekkel a kulcsokkal, a Terraform segítségével AWS-erőforrásokat hozhat létre.
A Terraform konfigurálása
A Terraform-terv végrehajtása előtt exportálnia kell a terv által használt környezeti változókat. Ezek a változók az Azure-előfizetésen és -bérlőn, az Azure szolgáltatásnéven, valamint az imént létrehozott AWS IAM-felhasználón és kulcsokon alapulnak.
A parancs használatával kérje le az Azure-előfizetés azonosítóját és bérlőazonosítóját
az account list
.A Terraform-csomag erőforrásokat hoz létre a Microsoft Azure-ban és az AWS-ben is. Ezután végrehajt egy szkriptet egy AWS EC2 virtuális gépen az Azure Arc-ügynök és az összes szükséges összetevő telepítéséhez. Ez a szkript bizonyos információkat igényel az AWS-ről és az Azure-környezetekről. Szerkessze
scripts/vars.sh
és frissítse az egyes változókat a megfelelő értékekkel.TF_VAR_subscription_id
= az Azure-előfizetés azonosítójaTF_VAR_client_id
= az Azure-szolgáltatásnév alkalmazásazonosítójaTF_VAR_client_secret
= az Azure-szolgáltatásnév jelszavaTF_VAR_tenant_id
= az Azure-bérlő azonosítójaAWS_ACCESS_KEY_ID
= AWS hozzáférési kulcsAWS_SECRET_ACCESS_KEY
= AWS titkos kulcs
Az Azure CLI-ben keresse meg a
azure_arc_servers_jumpstart/aws/ubuntu/terraform
klónozott adattár könyvtárát.Exportálja a módosított
scripts/vars.sh
környezeti változókat a forrásparancs futtatásával, az alább látható módon. A Terraform megköveteli, hogy ezeket be kell állítani a terv megfelelő végrehajtásához. Vegye figyelembe, hogy ezt a szkriptet a Rendszer automatikusan távolról is végrehajtja az AWS virtuális gépen a Terraform-telepítés részeként.source ./scripts/vars.sh
Győződjön meg arról, hogy az SSH-kulcsok elérhetők a ~/.ssh-ban, és elnevezték és
id_rsa
elneveztékid_rsa.pub
. Ha követte assh-keygen
fenti útmutatót a kulcs létrehozásához, akkor ezt már megfelelően be kell állítania. Ha nem, előfordulhat, hogy módosítaniamain.tf
kell, hogy egy másik elérési úttal rendelkező kulcsot használjon.Futtassa azt a
terraform init
parancsot, amely letölti a Terraform AzureRM-szolgáltatót.
Üzembe helyezés
Futtassa a
terraform apply --auto-approve
parancsot, és várja meg, amíg a terv befejeződik. A befejezés után üzembe helyez egy AWS Amazon Linux 2 EC2-példányt, és új Azure Arc-kompatibilis kiszolgálóként csatlakozik egy új erőforráscsoporton belül.Nyissa meg az Azure Portalt, és keresse meg az
arc-aws-demo
erőforráscsoportot. Az AWS-ben létrehozott virtuális gép erőforrásként lesz látható.
Félautomata üzembe helyezés (nem kötelező)
Mint bizonyára észrevette, a futtatás utolsó lépéseként regisztrálja a virtuális gépet egy új Azure Arc-kompatibilis kiszolgálói erőforrásként.
Ha le szeretné demózni/szabályozni a tényleges regisztrációs folyamatot, tegye a következőket:
install_arc_agent.sh.tmpl
A szkriptsablonban megjegyzést fűzhet arun connect command
szakaszhoz, és mentheti a fájlt.Futtassa az AWS virtuális gép
terraform output
nyilvános IP-címét.A virtuális gép SSH-t használ a
ssh ubuntu@xx.xx.xx.xx
xx.xx.xx.xx
gazda IP-címével.Az összes környezeti változó exportálása a következőben:
vars.sh
.Futtassa az alábbi parancsot:
azcmagent connect --service-principal-id $TF_VAR_client_id --service-principal-secret $TF_VAR_client_secret --resource-group "arc-aws-demo" --tenant-id $TF_VAR_tenant_id --location "westus2" --subscription-id $TF_VAR_subscription_id
Ha elkészült, a virtuális gép regisztrálva lesz az Azure Arcban, és látható lesz az erőforráscsoportban az Azure Portalon keresztül.
Az üzembe helyezés törlése
A bemutató részeként létrehozott összes erőforrás törléséhez használja az terraform destroy --auto-approve
alábbi parancsot.
Másik lehetőségként törölheti az AWS EC2-példányt közvetlenül az AWS-konzolról való törléssel. Vegye figyelembe, hogy a példány tényleges eltávolítása néhány percet vesz igénybe.
Ha manuálisan törli a példányt, akkor a Terraform-terv által létrehozott példányt is törölnie *./scripts/install_arc_agent.sh
kell.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: