Terraform-csomag használata Egy Google Cloud Platform Ubuntu-példány üzembe helyezéséhez és az Azure Archoz való csatlakoztatásához
Ez a cikk útmutatást nyújt a megadott Terraform-csomag használatához a Google Cloud Platform (GCP) példány üzembe helyezéséhez és Azure Arc-kompatibilis kiszolgálói erőforrásként való csatlakoztatásához.
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.
Ha a GCP virtuális gépet az Azure Archoz szeretné csatlakoztatni, 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://AzureArcGCP" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
A kimenetnek az alábbihoz hasonlónak kell lennie:
{ "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "displayName": "http://AzureArcGCP", "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
Megjegyzés:
Javasoljuk, hogy a szolgáltatásnevet egy adott Azure-előfizetésre és erőforráscsoportra terjedje ki.
Új GCP-projekt létrehozása
Keresse meg a Google API-konzolt , és jelentkezzen be Google-fiókjával. Miután bejelentkezett, hozzon létre egy új projektet.
Azure Arc demo
A létrehozás után mindenképpen másolja le a projektazonosítót, mivel az általában más, mint a projekt neve.Miután létrejött az új projekt, és ki van választva a lap tetején található legördülő listában, engedélyeznie kell a Compute Engine API-hozzáférését a projekthez. Kattintson a + API-k és szolgáltatások engedélyezése elemre, és keressen számítási motort. Ezután válassza az Engedélyezés lehetőséget az API-hozzáférés engedélyezéséhez.
Ezután állítson be egy szolgáltatásfiókkulcsot, amelyet a Terraform a GCP-projekt erőforrásainak létrehozására és kezelésére fog használni. Lépjen a szolgáltatásfiók létrehozása lapra. Válassza az Új szolgáltatásfiók lehetőséget a legördülő listából, adjon neki nevet, válassza ki a projektet, majd a tulajdonost szerepkörként, kulcstípusként a JSON-t, és válassza a Létrehozás lehetőséget. Ez letölt egy JSON-fájlt az erőforrások kezeléséhez szükséges összes hitelesítő adattal. Másolja a letöltött JSON-fájlt a
azure_arc_servers_jumpstart/gcp/ubuntu/terraform
könyvtárba.Végül győződjön meg arról, hogy az SSH-kulcsok elérhetők
~/.ssh
és elnevezettekid_rsa.pub
id_rsa
. 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.
Üzembe helyezés
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 imént létrehozott Azure-szolgáltatásnéven, az Azure-előfizetésen és -bérlőn, valamint a GCP-projektnéven 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 a Google Cloud Platformban is. Ezután végrehajt egy szkriptet egy GCP 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 a GCP-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ójaTF_VAR_gcp_project_id
= GCP-projektazonosítóTF_VAR_gcp_credentials_filename
= GCP hitelesítő adatok JSON-fájlneve
A parancssori felületről lépjen a
azure_arc_servers_jumpstart/gcp/ubuntu/terraform
klónozott adattár könyvtárába.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 a Terraform-telepítés részeként automatikusan távolról is végrehajtja a GCP virtuális gépen.source ./scripts/vars.sh
Futtassa azt a
terraform init
parancsot, amely letölti a Terraform AzureRM-szolgáltatót.Ezután 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 GCP Ubuntu virtuális gépet, é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-gcp-demo
erőforráscsoportot. A GCP-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 a GCP virtuális gép
terraform output
nyilvános IP-címét.A virtuális gép SSH-t használ a
ssh arcadmin@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ő helyen:
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 "Azure Arc gcp-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 a GCP virtuális gépet közvetlenül a GCP-konzolról.
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: