Kurz: Nasazení architektury SAP Deployment Automation Framework pro podnikové škálování
V tomto kurzu se dozvíte, jak provádět nasazení pomocí architektury SAP Deployment Automation Framework. V tomto příkladu se k nasazení infrastruktury řídicí roviny používá Azure Cloud Shell. Virtuální počítač nasazovacího nástroje vytvoří zbývající infrastrukturu a konfigurace SAP HANA.
V tomto kurzu provedete následující úlohy:
- Nasaďte řídicí rovinu (infrastrukturu a knihovnu pro nasazení).
- Nasaďte zónu úloh (na šířku a systém).
- Stáhnout nebo nahrát fakturu k materiálům
- Nakonfigurujte standardní nastavení operačního systému a operačního systému specifického pro SAP.
- Nainstalujte databázi HANA.
- Nainstalujte server SAP Central Services (SCS).
- Načtěte databázi HANA.
- Nainstalujte primární aplikační server.
Nasazení SAP v Azure s architekturou automation zahrnuje tři hlavní kroky:
Připravte oblast. Nasadíte komponenty pro podporu architektury automatizace SAP v zadané oblasti Azure. V tomto kroku:
- Vytvořte prostředí nasazení.
- Vytvořte sdílené úložiště pro soubory stavu Terraformu.
- Vytvořte sdílené úložiště pro instalační médium SAP.
Připravte zónu úlohy. Nasadíte komponenty zóny úloh, jako jsou virtuální síť a trezory klíčů.
Nasaďte systém. Nasadíte infrastrukturu pro systém SAP.
V procesu automatizace nasazení existuje několik pracovních postupů. Tento kurz se zaměřuje na jeden pracovní postup pro snadné nasazení. Tento pracovní postup, samostatné prostředí SAP S4 HANA, můžete nasadit pomocí bashe. Tento kurz popisuje obecnou hierarchii a různé fáze nasazení.
Přehled prostředí
Sap Deployment Automation Framework má dvě hlavní komponenty:
- Infrastruktura nasazení (řídicí rovina)
- Infrastruktura SAP (úloha SAP)
Následující diagram znázorňuje závislost mezi řídicí rovinou a rovinou aplikace.
Architektura používá Terraform pro nasazení infrastruktury a Ansible pro konfiguraci operačního systému a aplikace. Následující diagram znázorňuje logické oddělení řídicí roviny a zóny úloh.
Zóna správy
Zóna správy obsahuje infrastrukturu řídicí roviny, ze které se nasazují jiná prostředí. Po nasazení zóny správy je potřeba provést opětovné nasazení jen zřídka.
Nasazovač je prováděcí modul architektury automatizace SAP. Tento předkonfigurovaný virtuální počítač se používá k provádění příkazů Terraform a Ansible.
Knihovna SAP poskytuje trvalé úložiště pro stavové soubory Terraformu a stažené instalační médium SAP pro řídicí rovinu.
Nasazovač a knihovnu nakonfigurujete v souboru proměnné Terraformu .tfvars
. Další informace naleznete v tématu Konfigurace řídicí roviny.
Zóna úloh
Aplikace SAP má obvykle více úrovní nasazení. Můžete mít například úroveň vývoje, zajištění kvality a produkční úrovně. Rozhraní SAP Deployment Automation Framework volá tyto zóny úloh vrstvy.
Zóna úloh SAP obsahuje síťové a sdílené komponenty pro virtuální počítače SAP. Mezi tyto komponenty patří směrovací tabulky, skupiny zabezpečení sítě a virtuální sítě. Tato oblast poskytuje příležitost rozdělit nasazení do různých prostředí. Další informace najdete v tématu Konfigurace zóny úloh.
Nasazení systému se skládá z virtuálních počítačů pro spuštění aplikace SAP, včetně webových, aplikačních a databázových vrstev. Další informace najdete v tématu Konfigurace systému SAP.
Požadavky
Úložiště SAP Deployment Automation Framework je k dispozici na GitHubu.
K připojení k nasazovacímu nástroji je potřeba nasadit Azure Bastion nebo použít klienta SSH (Secure Shell). Používejte libovolného klienta SSH, se kterým se můžete cítit pohodlně.
Kontrola kvóty předplatného Azure
Ujistěte se, že vaše předplatné Azure má dostatečnou základní nabídku pro skladové položky řady DdSV4 a EdsV4 ve vybrané oblasti. Pro každou řadu virtuálních počítačů by mělo stačit přibližně 50 jader.
S-User account for SAP software download
Ke stažení softwaru SAP se vyžaduje platný uživatelský účet SAP (účet SAP-User nebo S-User) s oprávněními ke stažení softwaru.
Nastavení Cloud Shellu
Přejděte na Azure Cloud Shell.
Přihlaste se ke svému účtu Azure.
az login
Ověřte své přihlášení. Nezavírejte okno, dokud se nezobrazí výzva.
Ověřte aktivní předplatné a poznamenejte si ID předplatného:
az account list --query "[?isDefault].{Name: name, CloudName: cloudName, SubscriptionId: id, State: state, IsDefault: isDefault}" --output=table
Nebo:
az account list --output=table | grep True
V případě potřeby změňte aktivní předplatné.
az account set --subscription <Subscription ID>
Ověřte, že se změnilo vaše aktivní předplatné.
az account list --query "[?isDefault].{Name: name, CloudName: cloudName, SubscriptionId: id, State: state, IsDefault: isDefault}" --output=table
Volitelně můžete odebrat všechny artefakty nasazení. Tento příkaz použijte, pokud chcete odebrat všechny zbytky předchozích artefaktů nasazení.
cd ~ rm -rf Azure_SAP_Automated_Deployment .sap_deployment_automation .terraform.d
Vytvořte složku nasazení a naklonujte úložiště.
mkdir -p ${HOME}/Azure_SAP_Automated_Deployment; cd $_ git clone https://github.com/Azure/sap-automation-bootstrap.git config git clone https://github.com/Azure/sap-automation.git sap-automation git clone https://github.com/Azure/sap-automation-samples.git samples cp -Rp samples/Terraform/WORKSPACES ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES
Volitelně můžete ověřit verze Terraformu a Azure CLI dostupné ve vaší instanci Cloud Shellu.
./sap-automation/deploy/scripts/helpers/check_workstation.sh
Pokud chcete spustit architekturu automatizace, aktualizujte na následující verze:
az
verze 2.5.0 nebo vyšší.terraform
verze 1.5 nebo vyšší. Podle potřeby upgradujte pomocí pokynů Terraformu.
Vytvoření instančního objektu služby
Architektura nasazení automatizace SAP používá k nasazení instanční objekty. Vytvořte instanční objekt pro nasazení řídicí roviny. Ujistěte se, že k vytváření instančních objektů používáte účet s oprávněními.
Když zvolíte název instančního objektu, ujistěte se, že je název v rámci vašeho tenanta Azure jedinečný.
Udělte oprávnění přispěvatele instančního objektu a přístupu uživatelů Správa istrator.
export ARM_SUBSCRIPTION_ID="<subscriptionId>" export control_plane_env_code="LAB" az ad sp create-for-rbac --role="Contributor" \ --scopes="/subscriptions/${ARM_SUBSCRIPTION_ID}" \ --name="${control_plane_env_code}-Deployment-Account"
Zkontrolujte výstup. Příklad:
{ "appId": "<AppId>", "displayName": "<environment>-Deployment-Account ", "name": "<AppId>", "password": "<AppSecret>", "tenant": "<TenantId>" }
Zkopírujte podrobnosti výstupu. Nezapomeňte uložit hodnoty pro
appId
,password
aTenant
.Výstup se mapuje na následující parametry. Tyto parametry použijete v pozdějších krocích s příkazy automatizace.
Název vstupu parametru Název výstupu spn_id
appId
spn_secret
password
tenant_id
tenant
Volitelně přiřaďte roli Uživatelský přístup k instančnímu objektu Správa istrator.
export appId="<appId>" az role assignment create --assignee ${appId} \ --role "User Access Administrator" \ --scope /subscriptions/${ARM_SUBSCRIPTION_ID}
Důležité
Pokud k instančnímu objektu nepřiřazujete roli User Access Správa istrator, nemůžete přiřadit oprávnění pomocí automatizace.
Konfigurace přihlašovacích údajů webové aplikace řídicí roviny
Jako součást řídicí roviny architektury automatizace SAP můžete volitelně vytvořit interaktivní webovou aplikaci, která vám pomůže při vytváření požadovaných konfiguračních souborů.
Vytvoření registrace aplikace
Pokud chcete webovou aplikaci použít, musíte nejprve vytvořit registraci aplikace pro účely ověřování. Otevřete Cloud Shell a spusťte následující příkazy:
Podle potřeby nahraďte testovací prostředím.
export env_code="LAB"
echo '[{"resourceAppId":"00000003-0000-0000-c000-000000000000","resourceAccess":[{"id":"e1fe6dd8-ba31-4d61-89e7-88639da4683d","type":"Scope"}]}]' >> manifest.json
export TF_VAR_app_registration_app_id=$(az ad app create \
--display-name ${env_code}-webapp-registration \
--enable-id-token-issuance true \
--sign-in-audience AzureADMyOrg \
--required-resource-access @manifest.json \
--query "appId" --output tsv )
#remove the placeholder manifest.json
rm manifest.json
export TF_VAR_webapp_client_secret=$(az ad app credential reset \
--id $TF_VAR_app_registration_app_id --append \
--query "password" --output tsv )
export TF_use_webapp=true
echo "App registration ID: ${TF_VAR_app_registration_app_id}"
echo "App registration password: ${TF_VAR_webapp_client_secret}"
Poznámka:
Ujistěte se, že jste přihlášeni pomocí uživatelského účtu, který má požadovaná oprávnění k vytváření registrací aplikací. Další informace o registracích aplikací najdete v tématu Vytvoření registrace aplikace.
Zkopírujte podrobnosti výstupu. Nezapomeňte uložit hodnoty pro App registration ID
a App registration password
.
Výstup se mapuje na následující parametry. Tyto parametry použijete v pozdějších krocích s příkazy automatizace.
Název vstupu parametru | Název výstupu |
---|---|
app_registration_app_id |
App registration ID |
webapp_client_secret |
App registration password |
Zobrazení konfiguračních souborů
Otevřete Visual Studio Code z Cloud Shellu.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES code .
WORKSPACES
Rozbalte adresář. Existuje šest podsložek:CONFIGURATION
,DEPLOYER
,LANDSCAPE
,LIBRARY
,SYSTEM
, aBOMS
. Rozbalte každou z těchto složek a vyhledejte konfigurační soubory místního nasazení.Vyhledejte soubory proměnných Terraformu v příslušné podsložce. Například soubor proměnné Terraformu
DEPLOYER
může vypadat jako v tomto příkladu:# The environment value is a mandatory field, it is used for partitioning the environments, for example, PROD and NP. environment = "LAB" # The location/region value is a mandatory field, it is used to control where the resources are deployed location = "swedencentral" # management_network_address_space is the address space for management virtual network management_network_address_space = "10.10.20.0/25" # management_subnet_address_prefix is the address prefix for the management subnet management_subnet_address_prefix = "10.10.20.64/28" # management_firewall_subnet_address_prefix is the address prefix for the firewall subnet management_firewall_subnet_address_prefix = "10.10.20.0/26" firewall_deployment = true # management_bastion_subnet_address_prefix is the address prefix for the bastion subnet management_bastion_subnet_address_prefix = "10.10.20.128/26" bastion_deployment = true # deployer_enable_public_ip controls if the deployer Virtual machines will have Public IPs deployer_enable_public_ip = true # deployer_count defines how many deployer VMs will be deployed deployer_count = 1 # use_service_endpoint defines that the management subnets have service endpoints enabled use_service_endpoint = true # use_private_endpoint defines that the storage accounts and key vaults have private endpoints enabled use_private_endpoint = false # enable_firewall_for_keyvaults_and_storage defines that the storage accounts and key vaults have firewall enabled enable_firewall_for_keyvaults_and_storage = false # public_network_access_enabled controls if storage account and key vaults have public network access enabled public_network_access_enabled = true
Poznamenejte si umístění souboru proměnných Terraformu pro budoucí úpravy během nasazování.
Vyhledejte soubory proměnných Terraformu pro knihovnu SAP v příslušné podsložce. Například soubor proměnné Terraformu
LIBRARY
může vypadat jako v tomto příkladu:# The environment value is a mandatory field, it is used for partitioning the environments, for example, PROD and NP. environment = "LAB" # The location/region value is a mandatory field, it is used to control where the resources are deployed location = "swedencentral" #Defines the DNS suffix for the resources dns_label = "lab.sdaf.contoso.net" # use_private_endpoint defines that the storage accounts and key vaults have private endpoints enabled use_private_endpoint = false
Poznamenejte si umístění souboru proměnných Terraformu pro budoucí úpravy během nasazování.
Důležité
Ujistěte se, že dns_label
odpovídá vaší instanci Azure Privátní DNS.
Nasazení řídicí roviny
Pomocí skriptu deploy_controlplane.sh nasaďte nasazér a knihovnu. Tyto části nasazení tvoří řídicí rovinu pro zvolenou oblast automatizace.
Nasazení prochází cykly nasazení infrastruktury, aktualizace stavu a nahrání stavových souborů Terraformu do účtu úložiště knihovny. Všechny tyto kroky jsou zabalené do jednoho skriptu nasazení. Skript potřebuje umístění konfiguračního souboru pro deployer a knihovnu a některé další parametry.
Jako umístění nasazení vyberte například západní Evropu s názvem SECE
čtyř znaků, jak jsme popsali dříve. Ukázkový konfigurační soubor LAB-SECE-DEP05-INFRASTRUCTURE.tfvars
nasazovacího nástroje je ve ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/DEPLOYER/LAB-SECE-DEP05-INFRASTRUCTURE
složce.
Ukázkový konfigurační soubor LAB-SECE-SAP_LIBRARY.tfvars
knihovny SAP je ve ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/LIBRARY/LAB-SECE-SAP_LIBRARY
složce.
Nastavte proměnné prostředí pro instanční objekt:
export ARM_SUBSCRIPTION_ID="<subscriptionId>" export ARM_CLIENT_ID="<appId>" export ARM_CLIENT_SECRET="<password>" export ARM_TENANT_ID="<tenantId>"
Pokud skript spouštíte z pracovní stanice, která není součástí sítě nasazení nebo z Cloud Shellu, můžete pomocí následujícího příkazu nastavit proměnnou prostředí pro povolení připojení z vaší IP adresy:
export TF_VAR_Agent_IP=<your-public-ip-address>
Pokud nasazujete konfigurační webovou aplikaci, musíte také nastavit následující proměnné prostředí:
export TF_VAR_app_registration_app_id=<appRegistrationId> export TF_VAR_webapp_client_secret=<appRegistrationPassword> export TF_use_webapp=true
Pomocí tohoto skriptu vytvořte nasazovací modul a knihovnu SAP a přidejte do trezoru klíčů nasazení podrobnosti instančního objektu:
export env_code="LAB" export vnet_code="DEP05" export region_code="SECE" export DEPLOYMENT_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation" export CONFIG_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES" export SAP_AUTOMATION_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation" cd $CONFIG_REPO_PATH az login --service-principal -u "${ARM_CLIENT_ID}" -p="${ARM_CLIENT_SECRET}" --tenant "${ARM_TENANT_ID}" deployer_parameter_file="${CONFIG_REPO_PATH}/DEPLOYER/${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE/${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE.tfvars" library_parameter_file="${CONFIG_REPO_PATH}/LIBRARY/${env_code}-${region_code}-SAP_LIBRARY/${env_code}-${region_code}-SAP_LIBRARY.tfvars" ${SAP_AUTOMATION_REPO_PATH}/deploy/scripts/deploy_controlplane.sh \ --deployer_parameter_file "${deployer_parameter_file}" \ --library_parameter_file "${library_parameter_file}" \ --subscription "${ARM_SUBSCRIPTION_ID}" \ --spn_id "${ARM_CLIENT_ID}" \ --spn_secret "${ARM_CLIENT_SECRET}" \ --tenant_id "${ARM_TENANT_ID}"
Pokud narazíte na problémy s ověřováním, spusťte
az logout
odhlášení a vymazánítoken-cache
. Pak spusťteaz login
znovu ověření.Počkejte, až architektura automatizace spustí operace
plan
Terraformu aapply
.Nasazení nasazovacího modulu může běžet přibližně 15 až 20 minut.
Je potřeba si poznamenat některé hodnoty pro nadcházející kroky. Ve výstupu vyhledejte tento blok textu:
######################################################################################### # # # Please save these values: # # - Key Vault: LABSECEDEP05user39B # # - Deployer IP: x.x.x.x # # - Storage Account: labsecetfstate53e # # - Web Application Name: lab-sece-sapdeployment39B # # - App registration Id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx # # # #########################################################################################
Přejděte na Azure Portal.
Vyberte Skupiny prostředků. Vyhledejte nové skupiny prostředků pro infrastrukturu a knihovnu deployeru. Můžete například vidět
LAB-[region]-DEP05-INFRASTRUCTURE
aLAB-[region]-SAP_LIBRARY
.Tady se zobrazí obsah nasazovacího nástroje a skupiny prostředků knihovny SAP.
Soubor stavu Terraformu je nyní umístěn v účtu úložiště, jehož název obsahuje
tfstate
. Účet úložiště má kontejner s názvemtfstate
deployer a soubory stavu knihovny. Tady se zobrazí obsah kontejnerutfstate
po úspěšném nasazení roviny řízení.
Běžné problémy a jejich řešení
Tady je několik tipů pro řešení potíží:
Pokud při vytváření modulu deployeru dojde k následující chybě, ujistěte se, že jste v
WORKSPACES
adresáři při spuštění skriptu:Incorrect parameter file. The file must contain the environment attribute!!
Následující chyba je přechodná. Znovu spusťte stejný příkaz,
deploy_controlplane.sh
.Error: file provisioner error .. timeout - last error: dial tcp
Pokud máte problémy s ověřováním přímo po spuštění skriptu
deploy_controlplane.sh
, spusťte tento příkaz:az logout az login
Připojení k virtuálnímu počítači nasazovacího nástroje
Po nasazení řídicí roviny se stav Terraformu uloží pomocí vzdáleného back-endu azurerm
. Všechny tajné kódy pro připojení k virtuálnímu počítači nasazujícího nástroje jsou k dispozici v trezoru klíčů ve skupině prostředků deployeru.
Připojení k virtuálnímu počítači nasazovacího nástroje:
Přihlaste se k portálu Azure.
Vyberte nebo vyhledejte trezory klíčů.
Na stránce trezoru klíčů vyhledejte trezor klíčů nasazovacího nástroje. Název začíná
LAB[REGION]DEP05user
na . V případě potřeby vyfiltrujte podle skupiny prostředků nebo umístění.V části Nastavení v levém podokně vyberte Tajné kódy.
Vyhledejte a vyberte tajný klíč, který obsahuje klíč sshkey. Může to vypadat jako
LAB-[REGION]-DEP05-sshkey
.Na stránce tajného kódu vyberte aktuální verzi. Potom zkopírujte hodnotu tajného kódu.
Otevřete editor prostého textu. Zkopírujte v hodnotě tajného kódu.
Uložte soubor, do kterého uchováváte klíče SSH. Například použijte
C:\\Users\\<your-username>\\.ssh
.Uložte soubor. Pokud se zobrazí výzva k uložení jako typu, vyberte Všechny soubory , pokud není možnost SSH . Například použijte
deployer.ssh
.Připojení k virtuálnímu počítači nasazovacího nástroje prostřednictvím libovolného klienta SSH, jako je Visual Studio Code. Použijte veřejnou IP adresu, kterou jste si poznamenali dříve, a klíč SSH, který jste stáhli. Pokyny k připojení k nasazovacímu nástroji pomocí editoru Visual Studio Code najdete v tématu Připojení k nasazovacímu nástroji pomocí editoru Visual Studio Code. Pokud používáte PuTTY, nejprve pomocí PuTTYGen převeďte soubor klíče SSH.
Poznámka:
Výchozí uživatelské jméno je azureadm.
Ujistěte se, že soubor, který používáte k uložení klíče SSH, může soubor uložit pomocí správného formátu, tj. bez znaků cr (carriage return). Použijte Visual Studio Code nebo Poznámkový blok++.
Po připojení k virtuálnímu počítači nasazovacího nástroje si můžete software SAP stáhnout pomocí kusovníku (KUSOVNÍK).
Připojení k virtuálnímu počítači nasazovacího nástroje, když nepoužíváte veřejnou IP adresu
U nasazení bez připojení k veřejné IP adrese není povolené přímé připojení přes internet. V těchto případech můžete použít jump box služby Azure Bastion nebo provést další krok z počítače, který má připojení k virtuální síti Azure.
Následující příklad používá Azure Bastion.
Připojení k nasazéru:
Přihlaste se k portálu Azure.
Přejděte do skupiny prostředků, která obsahuje virtuální počítač nasazovacího nástroje.
Připojení k virtuálnímu počítači pomocí služby Azure Bastion.
Výchozí uživatelské jméno je azureadm.
Vyberte privátní klíč SSH ze služby Azure Key Vault.
Vyberte předplatné, které obsahuje řídicí rovinu.
Vyberte trezor klíčů nasazovacího nástroje.
V seznamu tajných kódů vyberte tajný klíč, který končí na -sshkey.
Připojte se k virtuálnímu počítači.
Zbývající úlohy musí být spuštěny v nasazovaném prostředí.
Zabezpečení řídicí roviny
Řídicí rovina je nejdůležitější součástí architektury automatizace SAP. Je důležité zabezpečit řídicí rovinu. Následující kroky vám pomůžou zabezpečit řídicí rovinu.
Měli byste aktualizovat soubor řídicí roviny tfvars
, abyste povolili privátní koncové body a zablokovali veřejný přístup k účtům úložiště a trezorům klíčů.
Ke zkopírování konfiguračních souborů řídicí roviny do virtuálního počítače nasazovacího nástroje můžete použít
sync_deployer.sh
skript. Přihlaste se k virtuálnímu počítači deployeru a aktualizujte následující příkaz, abyste použili název účtu úložiště stavu Terraformu. Pak spusťte následující skript:terraform_state_storage_account=labsecetfstate### cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES ../sap-automation/deploy/scripts/sync_deployer.sh --storageaccountname $terraform_state_storage_account --state_subscription $ARM_SUBSCRIPTION_ID
Tento příkaz zkopíruje
tfvars
konfigurační soubory z účtu úložiště knihovny SAP do virtuálního počítače nasazovacího nástroje.Změňte konfigurační soubory řídicí roviny na:
# use_private_endpoint defines that the storage accounts and key vaults have private endpoints enabled use_private_endpoint = true # enable_firewall_for_keyvaults_and_storage defines that the storage accounts and key vaults have firewall enabled enable_firewall_for_keyvaults_and_storage = true # public_network_access_enabled controls if storage account and key vaults have public network access enabled public_network_access_enabled = false #if you want to use the webapp use_webapp=true
Znovu spusťte nasazení, aby se změny použily. Aktualizujte název účtu úložiště a název trezoru klíčů ve skriptu.
export ARM_SUBSCRIPTION_ID="<subscriptionId>" export ARM_CLIENT_ID="<appId>" export ARM_CLIENT_SECRET="<password>" export ARM_TENANT_ID="<tenantId>"
Vytvořte nasazovač a knihovnu SAP.
export env_code="LAB" export vnet_code="DEP05" export region_code="SECE" terraform_state_storage_account=labsecetfstate### vault_name="LABSECEDEP05user###" export DEPLOYMENT_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation" export CONFIG_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES" export SAP_AUTOMATION_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation" cd $CONFIG_REPO_PATH deployer_parameter_file="${CONFIG_REPO_PATH}/DEPLOYER/${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE/${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE.tfvars" library_parameter_file="${CONFIG_REPO_PATH}/LIBRARY/${env_code}-${region_code}-SAP_LIBRARY/${env_code}-${region_code}-SAP_LIBRARY.tfvars" az logout az login --service-principal -u "${ARM_CLIENT_ID}" -p="${ARM_CLIENT_SECRET}" --tenant "${ARM_TENANT_ID}" ${SAP_AUTOMATION_REPO_PATH}/deploy/scripts/deploy_controlplane.sh \ --deployer_parameter_file "${deployer_parameter_file}" \ --library_parameter_file "${library_parameter_file}" \ --subscription "${ARM_SUBSCRIPTION_ID}" \ --storageaccountname "${terraform_state_storage_account}" \ --vault "${vault_name}"
Nasazení webové aplikace
Webovou aplikaci můžete nasadit pomocí následujícího skriptu:
export env_code="LAB"
export vnet_code="DEP05"
export region_code="SECE"
export webapp_name="<webAppName>"
export app_id="<appRegistrationId>"
export webapp_id="<webAppId>"
export DEPLOYMENT_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation"
cd $DEPLOYMENT_REPO_PATH
cd Webapp/SDAF
dotnet build SDAFWebApp.csproj
dotnet publish SDAFWebApp.csproj --output publish
cd publish
zip -r SDAF.zip .
az webapp deploy --resource-group ${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE --name $webapp_name --src-path SDAF.zip --type zip
az ad app update --id $app_id --web-home-page-url https://$webapp_name.azurewebsites.net --web-redirect-uris https://$webapp_name.azurewebsites.net/ https://$webapp_name.azurewebsites.net/.auth/login/aad/callback
az role assignment create --assignee $webapp_id --role reader --subscription $ARM_SUBSCRIPTION_ID --scope /subscriptions/$ARM_SUBSCRIPTION_ID
az webapp restart --resource-group ${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE --name $webapp_name
Shromažďování informací o zóně úloh
Shromážděte v textovém editoru následující informace. Tyto informace byly shromážděny na konci fáze Nasazení řídicí roviny.
Název účtu úložiště souborů stavu Terraformu ve skupině prostředků knihovny:
- Následující z předchozího příkladu je
LAB-SECE-SAP_LIBRARY
skupina prostředků . - Název účtu úložiště obsahuje
labsecetfstate
.
- Následující z předchozího příkladu je
Název trezoru klíčů ve skupině prostředků deployeru:
- Následující z předchozího příkladu je
LAB-SECE-DEP05-INFRASTRUCTURE
skupina prostředků . - Název trezoru klíčů obsahuje
LABSECEDEP05user
.
- Následující z předchozího příkladu je
Veřejná IP adresa virtuálního počítače nasazovacího nástroje. Přejděte do skupiny prostředků vašeho nasazovače, otevřete virtuální počítač nasazovacího nástroje a zkopírujte veřejnou IP adresu.
Potřebujete shromáždit následující informace:
- Název souboru stavu nasazovacího nástroje se nachází ve skupině prostředků knihovny:
- Vyberte Kontejnery >
tfstate
účtu>úložiště stavu skupiny>prostředků knihovny. Zkopírujte název souboru stavu nasazovače. - Následující z předchozího příkladu je
LAB-SECE-DEP05-INFRASTRUCTURE.terraform.tfstate
název objektu blob .
- Vyberte Kontejnery >
- Název souboru stavu nasazovacího nástroje se nachází ve skupině prostředků knihovny:
V případě potřeby zaregistrujte instanční objekt. Pro účely tohoto kurzu není tento krok potřeba.
Při prvním vytvoření instance prostředí se musí zaregistrovat instanční objekt. V tomto kurzu je řídicí rovina v
LAB
prostředí a zóna úlohy je také vLAB
. Z tohoto důvodu musí být instanční objekt zaregistrovaný proLAB
prostředí.export ARM_SUBSCRIPTION_ID="<subscriptionId>" export ARM_CLIENT_ID="<appID>" export ARM_CLIENT_SECRET="<password>" export ARM_TENANT_ID="<tenant>" export key_vault="<vaultName>" export env_code="LAB" export region_code="SECE" export SAP_AUTOMATION_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation" export CONFIG_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES"
${SAP_AUTOMATION_REPO_PATH}/deploy/scripts/set_secrets.sh \ --environment "${env_code}" \ --region "${region_code}" \ --vault "${key_vault}" \ --subscription "${ARM_SUBSCRIPTION_ID}" \ --spn_id "${ARM_CLIENT_ID}" \ --spn_secret "${ARM_CLIENT_SECRET}" \ --tenant_id "${ARM_TENANT_ID}"
Příprava nasazení zóny úloh
Připojení k virtuálnímu počítači nasazovacího nástroje pro následující kroky. Teď je tam kopie úložiště.
Nasazení zóny úloh
K nasazení zóny úloh SAP použijte skript install_workloadzone.
Na virtuálním počítači nasazovacího nástroje přejděte do
Azure_SAP_Automated_Deployment
složky.cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/LANDSCAPE/LAB-SECE-SAP04-INFRASTRUCTURE
Volitelně otevřete konfigurační soubor zóny úloh a v případě potřeby změňte logický název sítě tak, aby odpovídal názvu sítě.
Spusťte nasazení zóny úloh. Tady jsou potřebné podrobnosti, které jste shromáždili dříve:
- Název souboru deployeru
tfstate
(nalezený v kontejnerutfstate
) tfstate
Název účtu úložiště- Název trezoru klíčů deployeru
- Název souboru deployeru
export ARM_SUBSCRIPTION_ID="<subscriptionId>"
export ARM_CLIENT_ID="<appId>"
export ARM_CLIENT_SECRET="<password>"
export ARM_TENANT_ID="<tenantId>"
export deployer_env_code="LAB"
export sap_env_code="LAB"
export region_code="SECE"
export deployer_vnet_code="DEP05"
export vnet_code="SAP04"
export tfstate_storage_account="<storageaccountName>"
export key_vault="<vaultName>"
export CONFIG_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES"
export SAP_AUTOMATION_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation"
az login --service-principal -u "${ARM_CLIENT_ID}" -p="${ARM_CLIENT_SECRET}" --tenant "${ARM_TENANT_ID}"
cd "${CONFIG_REPO_PATH}/LANDSCAPE/${sap_env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE"
parameterFile="${sap_env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE.tfvars"
deployerState="${deployer_env_code}-${region_code}-${deployer_vnet_code}-INFRASTRUCTURE.terraform.tfstate"
$SAP_AUTOMATION_REPO_PATH/deploy/scripts/install_workloadzone.sh \
--parameterfile "${parameterFile}" \
--deployer_environment "${deployer_env_code}" \
--deployer_tfstate_key "${deployerState}" \
--keyvault "${key_vault}" \
--storageaccountname "${tfstate_storage_account}" \
--subscription "${ARM_SUBSCRIPTION_ID}" \
--spn_id "${ARM_CLIENT_ID}" \
--spn_secret "${ARM_CLIENT_SECRET}" \
--tenant_id "${ARM_TENANT_ID}"
Nasazení zóny úloh by se mělo spustit automaticky.
Počkejte na dokončení nasazení. Nová skupina prostředků se zobrazí na webu Azure Portal.
Příprava na nasazení systémové infrastruktury SAP
Připojení k virtuálnímu počítači nasazovacího nástroje pro následující kroky. Teď je tam kopie úložiště.
Přejděte do WORKSPACES/SYSTEM
složky a zkopírujte ukázkové konfigurační soubory, které chcete použít z úložiště.
Nasazení systémové infrastruktury SAP
Po dokončení zóny úloh můžete nasadit prostředky systémové infrastruktury SAP. Systém SAP vytvoří virtuální počítače a podpůrné komponenty pro vaši aplikaci SAP. K nasazení systému SAP použijte skript installer.sh.
Systém SAP nasadí:
- Databázová vrstva, která nasazuje databázové virtuální počítače a jejich disky a instanci Azure Standard Load Balanceru. V této úrovni můžete spouštět databáze HANA nebo databáze AnyDB.
- Úroveň SCS, která nasadí počet virtuálních počítačů definovaných zákazníkem a instanci Azure Standard Load Balanceru.
- Aplikační vrstva, která nasadí virtuální počítače a jejich disky.
- Úroveň Web Dispatcher.
Nasaďte systém SAP.
export sap_env_code="LAB"
export region_code="SECE"
export vnet_code="SAP04"
export SID="L00"
export CONFIG_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES"
export SAP_AUTOMATION_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation"
cd ${CONFIG_REPO_PATH}/SYSTEM/${sap_env_code}-${region_code}-${vnet_code}-${SID}
${DEPLOYMENT_REPO_PATH}/deploy/scripts/installer.sh \
--parameterfile "${sap_env_code}-${region_code}-${vnet_code}-${SID}.tfvars" \
--type sap_system
Zkontrolujte, jestli je teď skupina systémových prostředků na webu Azure Portal.
Získání softwaru SAP pomocí faktury za materiály
Architektura automatizace poskytuje nástroje ke stažení softwaru ze SAP pomocí SAP BOM. Software se stáhne do knihovny SAP, která funguje jako archiv pro všechna média potřebná k nasazení SAP.
SAP BOM napodobuje plánovač údržby SAP. Existují relevantní identifikátory produktů a sada adres URL pro stahování.
Ukázka extrakce souboru kusovníku vypadá jako v tomto příkladu:
---
name: 'S41909SPS03_v0010'
target: 'S/4 HANA 1909 SPS 03'
version: 7
product_ids:
dbl: NW_ABAP_DB:S4HANA1909.CORE.HDB.ABAP
scs: NW_ABAP_ASCS:S4HANA1909.CORE.HDB.ABAP
scs_ha: NW_ABAP_ASCS:S4HANA1909.CORE.HDB.ABAPHA
pas: NW_ABAP_CI:S4HANA1909.CORE.HDB.ABAP
pas_ha: NW_ABAP_CI:S4HANA1909.CORE.HDB.ABAPHA
app: NW_DI:S4HANA1909.CORE.HDB.PD
app_ha: NW_DI:S4HANA1909.CORE.HDB.ABAPHA
web: NW_Webdispatcher:NW750.IND.PD
ers: NW_ERS:S4HANA1909.CORE.HDB.ABAP
ers_ha: NW_ERS:S4HANA1909.CORE.HDB.ABAPHA
materials:
dependencies:
- name: HANA_2_00_055_v0005ms
media:
# SAPCAR 7.22
- name: SAPCAR
archive: SAPCAR_1010-70006178.EXE
checksum: dff45f8df953ef09dc560ea2689e53d46a14788d5d184834bb56544d342d7b
filename: SAPCAR
permissions: '0755'
url: https://softwaredownloads.sap.com/file/0020000002208852020
# Kernel
- name: "Kernel Part I ; OS: Linux on x86_64 64bit ; DB: Database independent"
V tomto příkladu konfigurace je LAB-SECE-DEP05-INFRASTRUCTURE
skupina prostředků . Název trezoru klíčů nasazovacího nástroje obsahuje LABSECEDEP05user
tento název. Tyto informace použijete ke konfiguraci tajných kódů trezoru klíčů vašeho nasazovacího modulu.
Připojení k virtuálnímu počítači nasazovacího nástroje pro následující kroky. Teď je tam kopie úložiště.
Přidejte tajný kód s uživatelským jménem svého uživatelského účtu SAP. Nahraďte
<vaultName>
názvem vašeho trezoru klíčů deployeru. Nahraďte<sap-username>
také uživatelské jméno SAP.export key_vault=<vaultName> sap_username=<sap-username> az keyvault secret set --name "S-Username" --vault-name $key_vault --value "${sap_username}";
Přidejte tajný kód s heslem pro uživatelský účet SAP. Nahraďte
<vaultName>
názvem vašeho nasazovacího trezoru klíčů a nahraďte<sap-password>
ho heslem SAP.Poznámka:
Použití jednoduchýchuch
sap_user_password
Použití speciálních znaků v hesle může jinak způsobit nepředvídatelné výsledky.sap_user_password='<sap-password>' az keyvault secret set --name "S-Password" --vault-name "${key_vault}" --value="${sap_user_password}";
Nakonfigurujte soubor parametrů SAP pro proces stahování. Potom stáhněte software SAP pomocí playbooků Ansible. Spusťte následující příkazy:
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES mkdir BOMS cd BOMS vi sap-parameters.yaml
Aktualizujte
bom_base_name
název kusovníku. Nahraďte<Deployer KeyVault Name>
názvem trezoru klíčů Azure pro skupinu prostředků deployeru.Soubor by měl vypadat podobně jako v následujícím příkladu konfigurace:
bom_base_name: S42022SPS00_v0001ms deployer_kv_name: <vaultName> BOM_directory: ${HOME}/Azure_SAP_Automated_Deployment/samples/SAP
Spusťte playbook Ansible a stáhněte si software. Jedním ze způsobů, jak spustit playbooky, je použít nabídku Downloader . Spusťte skript
download_menu
.${HOME}/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/download_menu.sh
Vyberte, které playbooky se mají spustit.
1) BoM Downloader 3) Quit Please select playbook:
Výběrem playbooku
1) BoM Downloader
stáhněte software SAP popsaný v souboru KUSOVNÍKu do účtu úložiště. Zkontrolujte, jestlisapbits
kontejner obsahuje všechna vaše média pro instalaci.Playbook můžete spustit pomocí nabídky konfigurace nebo přímo z příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/BOMS/ export ANSIBLE_PRIVATE_KEY_FILE=sshkey playbook_options=( --inventory-file="${sap_sid}_hosts.yaml" --private-key=${ANSIBLE_PRIVATE_KEY_FILE} --extra-vars="_workspace_directory=`pwd`" --extra-vars="@sap-parameters.yaml" --extra-vars="bom_processing=true" "${@}" ) # Run the playbook to retrieve the ssh key from the Azure key vault ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml # Run the playbook to perform the Operating System configuration ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_bom_downloader.yaml
Pokud chcete, můžete také předat přihlašovací údaje uživatele SAP jako parametry.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/BOMS/ sap_username=<sap-username> sap_user_password='<sap-password>' export ANSIBLE_PRIVATE_KEY_FILE=sshkey playbook_options=( --inventory-file="${sap_sid}_hosts.yaml" --private-key=${ANSIBLE_PRIVATE_KEY_FILE} --extra-vars="_workspace_directory=`pwd`" --extra-vars="@sap-parameters.yaml" --extra-vars="s_user=${sap_username}" --extra-vars="s_password=${sap_user_password}" --extra-vars="bom_processing=true" "${@}" ) # Run the playbook to retrieve the ssh key from the Azure key vault ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml # Run the playbook to perform the Operating System configuration ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_bom_downloader.yaml
Instalace aplikace SAP
Instalace aplikace SAP probíhá prostřednictvím playbooků Ansible.
Přejděte do složky nasazení systému.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
Ujistěte se, že máte v aktuálních složkách následující soubory: sap-parameters.yaml
a L00_host.yaml
.
Pro samostatný systém SAP S/4HANA existuje osm playbooků, které je potřeba spouštět postupně. Jedním ze způsobů, jak playbooky spustit, je použít nabídku konfigurace.
Spusťte skript configuration_menu
.
${HOME}/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/configuration_menu.sh
Zvolte playbooky, které chcete spustit.
Playbook: Základní konfigurace operačního systému
Tento playbook provádí obecné nastavení konfigurace operačního systému na všech počítačích, včetně konfigurace úložišť softwaru, balíčků a služeb.
Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to perform the Operating System configuration
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_01_os_base_config.yaml
Playbook: Konfigurace operačního systému specifického pro SAP
Tento playbook provádí nastavení konfigurace operačního systému SAP na všech počítačích. Mezi tyto kroky patří vytvoření skupin svazků a systémů souborů a konfigurace úložišť softwaru, balíčků a služeb.
Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to perform the SAP Specific Operating System configuration
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_02_os_sap_specific_config.yaml
Playbook: Zpracování kusovníku
Tento playbook stáhne software SAP do virtuálního počítače SCS.
Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_03_bom_processing.yaml
Playbook: Instalace SCS
Tento playbook nainstaluje SAP Central Services. Pro vysoce dostupné konfigurace playbook nainstaluje také instanci SAP ERS a nakonfiguruje Pacemaker.
Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_00_00_sap_scs_install.yaml
Playbook: Instalace instance databáze
Tento playbook nainstaluje instance databáze.
Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_04_00_00_db_install.yaml
Playbook: Načtení databáze
Tento playbook vyvolá úlohu načítání databáze z primárního aplikačního serveru.
Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_01_sap_dbload.yaml
Playbook: Nastavení vysoké dostupnosti databáze
Tento playbook konfiguruje vysokou dostupnost databáze. Pro HANA to zahrnuje replikaci systému HANA a Pacemaker pro databázi HANA.
Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_04_00_01_db_ha.yaml
Playbook: Instalace primárního aplikačního serveru
Tento playbook nainstaluje primární aplikační server. Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_02_sap_pas_install.yaml
Playbook: Instalace aplikačního serveru
Tento playbook nainstaluje aplikační servery. Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_02_sap_app_install.yaml
Playbook: Instalace webového dispečeru
Tento playbook nainstaluje webové dispečery. Playbook můžete spustit pomocí nabídky konfigurace nebo příkazového řádku.
Právě jste nasadili a nakonfigurovali samostatný systém HANA. Pokud potřebujete nakonfigurovat databázi SAP HANA s vysokou dostupností (HA), spusťte playbook HANA HA.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_04_sap_web_install.yaml
Vyčištění instalace
Po dokončení je důležité vyčistit instalaci SAP z tohoto kurzu. V opačném případě se vám budou dál účtují náklady související s prostředky.
Pokud chcete odebrat celou infrastrukturu SAP, kterou jste nasadili, musíte:
- Odeberte prostředky systémové infrastruktury SAP.
- Odeberte všechny zóny úloh (na šířku).
- Odeberte řídicí rovinu.
Spusťte odebrání prostředků infrastruktury SAP a zón úloh z virtuálního počítače nasazovacího nástroje. Spusťte odebrání řídicí roviny z Cloud Shellu.
Než začnete, přihlaste se ke svému účtu Azure. Pak zkontrolujte, že jste ve správném předplatném.
Odebrání infrastruktury SAP
Přejděte do LAB-SECE-SAP01-L00
podsložky uvnitř SYSTEM
složky. Pak spusťte tento příkaz:
export sap_env_code="LAB"
export region_code="SECE"
export sap_vnet_code="SAP04"
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/${sap_env_code}-${region_code}-${sap_vnet_code}-L00
${DEPLOYMENT_REPO_PATH}/deploy/scripts/remover.sh \
--parameterfile "${sap_env_code}-${region_code}-${sap_vnet_code}-L00.tfvars" \
--type sap_system
Odebrání zóny úloh SAP
Přejděte do LAB-XXXX-SAP01-INFRASTRUCTURE
podsložky uvnitř LANDSCAPE
složky. Potom spusťte následující příkaz:
export sap_env_code="LAB"
export region_code="SECE"
export sap_vnet_code="SAP01"
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/LANDSCAPE/${sap_env_code}-${region_code}-${sap_vnet_code}-INFRASTRUCTURE
${DEPLOYMENT_REPO_PATH}/deploy/scripts/remover.sh \
--parameterfile ${sap_env_code}-${region_code}-${sap_vnet_code}-INFRASTRUCTURE.tfvars \
--type sap_landscape
Odebrání řídicí roviny
Přihlaste se do Cloud Shellu.
Přejděte do složky WORKSPACES
.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/
Exportujte následující dvě proměnné prostředí:
export DEPLOYMENT_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation"
export ARM_SUBSCRIPTION_ID="<subscriptionId>"
Spusťte následující příkaz:
export region_code="SECE"
export env_code="LAB"
export vnet_code="DEP05"
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES
${DEPLOYMENT_REPO_PATH}/deploy/scripts/remove_controlplane.sh \
--deployer_parameter_file DEPLOYER/${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE/${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE.tfvars \
--library_parameter_file LIBRARY/${env_code}-${region_code}-SAP_LIBRARY/${env_code}-${region_code}-SAP_LIBRARY.tfvars
Ověřte, že jsou všechny prostředky vyčištěny.