SAP 자동화 프레임워크의 워크로드 영역 구성
이 문서의 내용
SAP 애플리케이션 에는 일반적으로 여러 개발 계층이 있습니다. 예를 들어 개발, 품질 보증 및 프로덕션 계층이 있을 수 있습니다. SAP 배포 자동화 프레임워크 에서는 이러한 계층을 워크로드 영역 이라고 합니다. 두 개의 SAP 시스템이 있는 워크로드 영역의 예는 다음 다이어그램을 참조하세요.
워크로드 영역은 워크로드 영역의 모든 SAP 시스템에 공유 서비스를 제공합니다. 이러한 공유 서비스는 다음을 포함합니다.
Azure Virtual Network
Azure Key Vault
설치 미디어용 공유 Azure 스토리지 계정
Azure NetApp Files 계정 및 용량 풀(선택 사항)
워크로드 영역은 일반적으로 스포크 구독에 배포되며 워크로드 영역의 모든 아티팩트 배포는 고유한 서비스 주체를 사용하여 수행됩니다.
워크로드 영역 배포 구성
SAP 워크로드 영역의 구성은 Terraform tfvars
변수 파일을 통해 수행됩니다. samples/WORKSPACES/LANDSCAPE
폴더에서 변수 파일의 예제를 찾을 수 있습니다.
다음 섹션에서는 변수 파일의 여러 섹션을 보여 줍니다.
환경 매개 변수
이 표에는 환경 설정을 정의하는 매개 변수가 포함되어 있습니다.
변수
설명
Type
주의
environment
워크로드 영역의 식별자(최대 5자)
필수
예를 들어, 프로덕션 환경의 경우 PROD
, 품질 보증 환경의 경우 QA
입니다.
location
배포할 Azure 지역
Required
name_override_file
이름 재정의 파일
선택 사항
사용자 지정 이름 지정 을 참조하세요.
tags
모든 리소스와 연결할 태그 사전입니다.
선택 사항
리소스 그룹 매개 변수
이 표에는 리소스 그룹을 정의하는 매개 변수가 포함되어 있습니다.
변수
설명
Type
resourcegroup_name
만들 리소스 그룹의 이름
선택 사항
resourcegroup_arm_id
기존 리소스 그룹에 대한 Azure 리소스 식별자
선택 사항
resourcegroup_tags
리소스 그룹과 연결할 태그
선택 사항
네트워크 매개 변수
자동화 프레임워크는 가상 네트워크와 서브넷(그린필드)을 만들거나 기존 가상 네트워크와 기존 서브넷(브라운필드) 또는 그린필드와 브라운필드의 조합을 모두 사용할 수 있습니다.
그린필드 시나리오 : 가상 네트워크 주소 공간 및 서브넷 주소 접두사를 지정해야 합니다.
브라운필드 시나리오 : 가상 네트워크 및 서브넷에 대한 Azure 리소스 식별자를 지정해야 합니다.
가상 네트워크 주소 공간이 모든 리소스를 호스트할 수 있을지 확인합니다.
이 표에는 네트워킹 매개 변수가 포함되어 있습니다.
변수
설명
Type
주의
network_logical_name
네트워크의 논리적 이름(예: SAP01
)
Required
리소스 이름 지정에 사용됨
network_name
네트워크의 이름
선택 사항
network_arm_id
가상 네트워크에 대한 Azure 리소스 식별자
선택 사항
브라운필드 배포의 경우
network_address_space
가상 네트워크의 주소 범위
필수
그린필드 배포의 경우
admin_subnet_address_prefix
admin
서브넷에 대한 주소 범위
필수
그린필드 배포의 경우
admin_subnet_arm_id
admin
서브넷에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
admin_subnet_name
admin
서브넷의 이름
선택 사항
admin_subnet_nsg_name
admin
네트워크 보안 그룹의 이름
선택 사항
admin_subnet_nsg_arm_id
admin
네트워크 보안 그룹에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
db_subnet_address_prefix
db
서브넷에 대한 주소 범위
필수
그린필드 배포의 경우
db_subnet_arm_id
db
서브넷에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
db_subnet_name
db
서브넷의 이름
선택 사항
db_subnet_nsg_name
db
네트워크 보안 그룹의 이름
선택 사항
db_subnet_nsg_arm_id
db
네트워크 보안 그룹에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
app_subnet_address_prefix
app
서브넷에 대한 주소 범위
필수
그린필드 배포의 경우
app_subnet_arm_id
app
서브넷에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
app_subnet_name
app
서브넷의 이름
선택 사항
app_subnet_nsg_name
app
네트워크 보안 그룹의 이름
선택 사항
app_subnet_nsg_arm_id
app
네트워크 보안 그룹에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
web_subnet_address_prefix
web
서브넷에 대한 주소 범위
필수
그린필드 배포의 경우
web_subnet_arm_id
web
서브넷에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
web_subnet_name
web
서브넷의 이름
선택 사항
web_subnet_nsg_name
web
네트워크 보안 그룹의 이름
선택 사항
web_subnet_nsg_arm_id
web
네트워크 보안 그룹에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
이 표에는 Azure NetApp Files를 사용하는 경우 네트워킹 매개 변수가 포함되어 있습니다.
변수
설명
Type
주의
anf_subnet_arm_id
ANF
서브넷에 대한 Azure 리소스 식별자
Required
기존 서브넷을 사용하는 경우
anf_subnet_address_prefix
ANF
서브넷에 대한 주소 범위
Required
배포에 ANF
를 사용하는 경우
anf_subnet_name
ANF
서브넷의 이름
선택 사항
anf_subnet_nsg_name
anf
네트워크 보안 그룹의 이름
선택 사항
anf_subnet_nsg_arm_id
anf
네트워크 보안 그룹에 대한 Azure 리소스 식별자
선택 사항
브라운필드 배포의 경우
이 표에는 iSCSI 디바이스가 이 워크로드 영역에서 호스트되는 경우의 네트워킹 매개 변수가 포함되어 있습니다.
변수
설명
Type
주의
iscsi_subnet_address_prefix
iscsi
서브넷에 대한 주소 범위
필수
그린필드 배포의 경우
iscsi_subnet_arm_id
iscsi
서브넷에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
iscsi_subnet_name
iscsi
서브넷의 이름
선택 사항
iscsi_subnet_nsg_arm_id
iscsi
네트워크 보안 그룹에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
iscsi_subnet_nsg_name
iscsi
네트워크 보안 그룹의 이름
선택 사항
이 표에는 SAP용 Azure Monitor가 이 워크로드 영역에서 호스트되는 경우의 네트워킹 매개 변수가 포함되어 있습니다.
변수
설명
Type
주의
ams_subnet_address_prefix
iscsi
서브넷에 대한 주소 범위
필수
그린필드 배포의 경우
ams_subnet_arm_id
iscsi
서브넷에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
ams_subnet_name
iscsi
서브넷의 이름
선택 사항
ams_subnet_nsg_arm_id
iscsi
네트워크 보안 그룹에 대한 Azure 리소스 식별자
필수
브라운필드 배포의 경우
ams_subnet_nsg_name
iscsi
네트워크 보안 그룹의 이름
선택 사항
이 표에는 추가 네트워킹 매개 변수가 포함되어 있습니다.
변수
설명
Type
주의
use_private_endpoint
스토리지 계정 및 키 자격 증명 모음에 대해 만들어진 프라이빗 엔드포인트입니다.
선택 사항
use_service_endpoint
서브넷에 대해 정의된 서비스 엔드포인트입니다.
선택 사항
peer_with_control_plane_vnet
컨트롤 플레인 가상 네트워크와 피어링된 가상 네트워크입니다.
선택 사항
SAP 설치에 필요함
public_network_access_enabled
스토리지 계정 및 키 자격 증명 모음에서 공용 액세스가 사용하도록 설정됩니다.
선택 사항
필요한 최소 네트워크 정의
network_logical_name = "SAP01"
network_address_space = "10.110.0.0/16"
db_subnet_address_prefix = "10.110.96.0/19"
app_subnet_address_prefix = "10.110.32.0/19"
인증 매개 변수
이 표에서는 가상 머신 인증을 정의하는 데 사용되는 자격 증명을 정의합니다.
변수
설명
Type
주의
automation_username
관리자 계정 이름
선택 사항
기본값: azureadm
automation_password
관리자 암호
선택 사항
automation_path_to_public_key
기존 공개 키에 대한 경로
선택 사항
automation_path_to_private_key
기존 프라이빗 키에 대한 경로
선택 사항
use_spn
정의된 경우 서비스 주체를 사용하여 배포를 수행합니다. 그렇지 않으면 MSI를 사용합니다.
선택 사항
최소 필수 인증 정의
automation_username = "azureadm"
키 자격 증명 모음 매개 변수
이 표에서는 키 자격 증명 모음 정보를 정의하는 데 사용되는 매개 변수를 정의합니다.
변수
설명
Type
주의
spn_keyvault_id
기존 SPN(배포 자격 증명) 키 자격 증명 모음에 대한 Azure 리소스 식별자
선택 사항
user_keyvault_id
기존 시스템 자격 증명 키 자격 증명 모음에 대한 Azure 리소스 식별자
선택 사항
additional_users_to_add_to_keyvault_policies
배포 키 자격 증명 모음 액세스 정책에 추가할 사용자 개체 ID 목록
선택 사항
enable_purge_control_for_keyvaults
Azure 키 자격 증명 모음에 대한 제거 보호를 사용하지 않도록 설정합니다.
선택 사항
테스트 환경에만 사용합니다.
enable_rbac_authorization_for_keyvault
키 자격 증명 모음에서 RBAC 사용
선택 사항
soft_delete_retention_days
일시 삭제 기간에 항목이 보존되어야 하는 일수
선택 사항
keyvault_private_endpoint_id
키 자격 증명 모음 프라이빗 엔드포인트의 Azure 리소스 ID
선택 사항
프라이빗 DNS
변수
설명
Type
dns_label
지정된 경우 프라이빗 DNS 영역의 DNS 이름입니다.
선택 사항
dns_resource_group_name
프라이빗 DNS 영역을 포함하는 리소스 그룹의 이름
선택 사항
register_virtual_network_to_dns
SAP 가상 머신이 프라이빗 DNS 영역에 등록되어 있는지 제어합니다.
선택 사항
dns_server_list
지정한 경우 DNS 서버 IP 주소 목록
선택 사항
NFS 지원
변수
설명
Type
주의
create_transport_storage
정의된 경우 전송 디렉터리에 대한 스토리지를 만듭니다.
선택 사항
export_install_path
제공된 경우 설치 미디어의 탑재 경로를 내보냅니다.
선택 사항
export_transport_path
제공된 경우 전송 공유에 대한 탑재 경로를 내보냅니다.
선택 사항
install_always_create_fileshares
항상 파일 공유를 만듭니다.
선택 사항
install_private_endpoint_id
install
프라이빗 엔드포인트에 대한 Azure 리소스 ID입니다.
선택 사항
기존 엔드포인트의 경우
install_volume_size
install
볼륨의 크기(GB)를 정의합니다.
선택 사항
NFS_provider
사용할 NFS 백 엔드를 정의합니다.
선택 사항
옵션은 Azure Files NFS의 경우 AFS
, Azure NetApp Files의 경우 ANF
, SCS 서버 NFS의 경우 NONE
, 외부 NFS 솔루션의 경우 NFS
입니다.
transport_private_endpoint_id
키 자격 증명 모음 프라이빗 엔드포인트의 Azure 리소스 ID
선택 사항
transport_volume_size
transport
볼륨의 크기(GB)를 정의합니다.
선택 사항
use_AFS_for_installation_media
제공된 경우 설치 미디어에 AFS를 사용합니다.
선택 사항
Azure Files NFS 지원
변수
설명
Type
주의
install_storage_account_id
install
스토리지 계정에 대한 Azure 리소스 식별자
선택 사항
브라운필드 배포의 경우
transport_storage_account_id
transport
스토리지 계정에 대한 Azure 리소스 식별자
선택 사항
브라운필드 배포의 경우
Storage account replication type
스토리지 계정 복제 유형, 기본 ZRS
선택 사항
최소 필수 Azure Files NFS 정의
NFS_provider = "AFS"
use_private_endpoint = true
Azure NetApp Files 지원
변수
설명
Type
주의
ANF_account_name
Azure NetApp Files 계정의 이름
선택 사항
ANF_service_level
Azure NetApp Files 용량 풀에 대한 서비스 수준
선택 사항
ANF_pool_size
Azure NetApp Files 용량 풀의 크기(GB)
선택 사항
ANF_qos_type
풀의 서비스 품질 유형(자동 또는 수동)
선택 사항
ANF_use_existing_pool
Azure NetApp Files 용량 풀에 기존 항목을 사용합니다.
선택 사항
ANF_pool_name
Azure NetApp Files 용량 풀의 이름
선택 사항
ANF_account_arm_id
Azure NetApp Files 계정에 대한 Azure 리소스 식별자
선택 사항
브라운필드 배포의 경우
ANF_transport_volume_use_existing
기존 전송 볼륨이 사용되는지 여부를 정의합니다.
선택 사항
ANF_transport_volume_name
전송 볼륨 이름을 정의합니다.
선택 사항
브라운필드 배포의 경우
ANF_transport_volume_size
전송 볼륨의 크기(GB)를 정의합니다.
선택 사항
ANF_transport_volume_throughput
전송 볼륨의 처리량을 정의합니다.
선택 사항
ANF_transport_volume_zone
전송 볼륨의 가용성 영역 정의
선택 사항
ANF_install_volume_use_existing
기존 설치 볼륨이 사용되는지 여부를 정의합니다.
선택 사항
ANF_install_volume_name
설치 볼륨 이름을 정의합니다.
선택 사항
브라운필드 배포의 경우
ANF_install_volume_size
설치 볼륨의 크기(GB)를 정의합니다.
선택 사항
ANF_install_volume_throughput
설치 볼륨의 처리량을 정의합니다.
선택 사항
ANF_install_volume_zone
설치 볼륨의 가용성 영역 정의
선택 사항
필요한 최소 ANF 정의
NFS_provider = "ANF"
anf_subnet_address_prefix = "10.110.64.0/27"
ANF_service_level = "Ultra"
DNS 지원
변수
설명
Type
dns_label
프라이빗 DNS 영역의 DNS 이름.
선택 사항
management_dns_resourcegroup_name
프라이빗 DNS 영역이 포함된 리소스 그룹.
선택 사항
management_dns_subscription_id
프라이빗 DNS 영역이 포함된 구독의 구독 ID.
선택 사항
use_custom_dns_a_registration
기존 프라이빗 DNS 영역을 사용합니다.
선택 사항
NAT 지원
변수
설명
Type
deploy_nat_gateway
설정된 경우 NAT Gateway를 배포합니다.
선택 사항
nat_gateway_name
NAT Gateway의 이름입니다.
선택 사항
nat_gateway_arm_id
NAT Gateway의 Azure 리소스 식별자입니다.
선택 사항
nat_gateway_public_ip_zones
NAT Gateway 공용 IP 주소의 영역입니다.
선택 사항
nat_gateway_public_ip_arm_id
NAT 게이트웨이 공용 IP 주소에 대한 Azure 리소스 식별자
선택 사항
nat_gateway_idle_timeout_in_minutes
NAT Gateway의 유휴 시간 제한(분)(기본값=4)입니다.
선택 사항
nat_gateway_public_ip_tags
공용 IP 리소스에 대한 태그입니다.
선택 사항
다른 매개 변수
변수
설명
Type
주의
diagnostics_storage_account_arm_id
진단 스토리지 계정에 대한 Azure 리소스 식별자.
Required
브라운필드 배포의 경우.
place_delete_lock_on_resources
키 자격 증명 모음 및 가상 네트워크에 삭제 잠금을 배치합니다.
선택 사항
witness_storage_account_arm_id
감시 스토리지 계정에 대한 Azure 리소스 식별자.
Required
브라운필드 배포의 경우.
Agent_IP
에이전트의 IP 주소입니다.
선택 사항
add_Agent_IP
에이전트 IP가 키 자격 증명 모음 및 스토리지 계정 방화벽에 추가되는지 제어합니다.
선택 사항
enable_firewall_for_keyvaults_and_storage
선택한 서브넷에 대한 액세스 제한
선택 사항
iSCSI 매개 변수
변수
설명
Type
주의
iscsi_authentication_type
iSCSI 가상 머신에 대한 기본 인증을 정의합니다.
선택 사항
iscsi_authentication_username
관리자 계정 이름
선택 사항
iscsi_count
iSCSI 가상 머신의 수
선택 사항
iscsi_size
iSCSI 가상 머신의 크기
선택 사항
iscsi_image
사용할 가상 머신 이미지를 정의합니다(다음 표).
선택 사항
iscsi_nic_ips
iSCSI 가상 머신의 IP 주소
선택 사항
iscsi_use_DHCP
가 정의된 경우 무시됨
iscsi_use_DHCP
Azure 서브넷에서 제공하는 동적 IP 주소를 사용할지를 제어합니다.
선택 사항
iscsi_vm_zones
iSCSI 가상 머신의 가용성 영역
선택 사항
유틸리티 VM 매개 변수
변수
설명
Type
주의
utility_vm_count
배포할 유틸리티 가상 머신의 수를 정의합니다.
선택 사항
유틸리티 가상 머신을 사용하여 SAPGui 호스트
utility_vm_image
사용할 가상 머신 이미지를 정의합니다.
선택 사항
기본값: Windows Server 2019
utility_vm_nic_ips
가상 머신의 IP 주소를 정의합니다.
선택 사항
utility_vm_os_disk_size
가상 머신의 OS 디스크 크기를 정의합니다.
선택 사항
기본값: 128
utility_vm_os_disk_type
가상 머신의 OS 디스크 형식을 정의합니다.
선택 사항
기본값: Premium_LRS
utility_vm_size
유틸리티 가상 머신에 대한 SKU를 정의합니다.
선택 사항
기본값: Standard_D4ds_v4
utility_vm_useDHCP
Azure 서브넷 제공 IP를 사용해야 하는지 여부를 정의합니다.
선택 사항
`user_assigned_identity_id
가상 머신에 할당할 사용자 할당 ID
선택 사항
가상 머신 및 운영 체제 이미지는 다음 구조를 사용하여 정의됩니다.
{
os_type = "linux"
type = "marketplace"
source_image_id = ""
publisher = "SUSE"
offer = "sles-sap-15-sp5"
sku = "gen2"
version= " latest"
}
SAP용 Azure Monitor 매개 변수
변수
설명
Type
주의
create_ams_instance
SAP용 Azure Monitor 인스턴스를 만들어야 하는지를 정의합니다.
선택 사항
ams_instance_name
인스턴스의 이름을 정의합니다.
선택 사항
ams_laws_arm_id
Log Analytics 작업 영역에 대한 ARM 리소스 ID를 정의합니다.
선택 사항
이 표에는 Terraform 매개 변수가 포함되어 있습니다. 배포 스크립트를 사용하지 않는 경우 이러한 매개 변수를 수동으로 입력해야 합니다.
변수
설명
Type
tfstate_resource_id
Terraform 상태 파일을 포함할 SAP 라이브러리의 스토리지 계정에 대한 Azure 리소스 식별자.
Required
deployer_tfstate_key
배포자의 상태 파일 이름.
Required
다음 단계