IBM Cloud® VPC(Terraform 및 Ansible )의 HANA db 3계층 아키텍처에서 SAP NetWeaver 7.x 자동화하기
Terraform 스크립트를 사용하여 단일 계층 VPC를 만들고 VPC에 SAP 및 SAP HANA 인프라를 만들 수도 있습니다. Terraform 스크립트는 사용자가 제공한 VPC 정보를 사용한 다음 Ansible 플레이북을 호출하여 지정된 VPC에 SAP 아키텍처를 생성합니다. IBM Cloud® 의 Terraform은 복잡한 클라우드 환경을 신속하게 구축할 수 있도록 IBM Cloud 가상 프라이빗 클라우드(VPC) 인프라 리소스를 예측 가능하고 일관성 있게 프로비저닝할 수 있도록 지원합니다. IBM Cloud VPC 인프라는 인텔® 제온 CPU와 추가 인텔® 기술을 사용하는 SAP 인증 하드웨어로 구성됩니다.
두 가지 배포 방법 중에서 선택할 수 있습니다:
- Terraform 스크립트는 배포 서버(바스티온 서버)의 CLI에서 실행됩니다.
- Schematics 클라우드 대시보드 메뉴에서 액세스하는 사용자 인터페이스입니다.
둘 중 하나를 만들 수 있습니다:
- SAP NetWeaver 7.x SAP HANA-기반 ABAP 스택에서
- SAP NetWeaver 7.x SAP HANA-기반 Java 스택
구현된 SAP 솔루션
많은 SAP 엔터프라이즈 솔루션이 SAP 의 광범위한 플랫폼인 SAP NetWeaver 을 기반으로 구축되었습니다:
- SAP NetWeaver 기반 애플리케이션의 기본 지속성으로 SAP HANA
- SAP 비즈니스 제품군 애플리케이션(ERP, CRM, SCM 및 기타 애플리케이션)
- SAP BW(Business Warehouse) 및
- 기타 SAP 엔터프라이즈 솔루션
SAP NetWeaver ( SAP NW)는 주로 ABAP 및 Java 프로그래밍 언어를 사용합니다. SAP NetWeaver의 ABAP 또는 Java(또는 둘 다) 애플리케이션 서버에 빌드된 여러 애플리케이션을 SAP HANA에서 실행할 수 있습니다. 이 인스턴스에서 SAP HANA는 아키텍처에서 유일한 데이터베이스로 사용됩니다.
기술 인터페이스는 SAP HANA에서 실행하도록 SAP NetWeaver AS ABAP 및 AS Java에서 빌드된 애플리케이션에 사용 가능합니다. 그러나 일반적으로 각 애플리케이션이 SAP HANA 에서 최적으로 실행되도록 하려면 각 애플리케이션에 대한 특정 개발 활성화가 필요합니다. SAP Business Suite 애플리케이션(ERP, CRM, SCM 및 기타 애플리케이션), SAP BW(Business Warehouse) 및 기타 SAP NetWeaver 기반 애플리케이션은 SAP HANA에서 실행되도록 수정되었으며 많은 장점을 활용합니다. 또한 SAP NetWeaver 에 구축된 다양한 구성 요소와 무료 애플리케이션은 제공된 SAP NetWeaver DB 인터페이스를 사용하여 SAP HANA 에서도 실행할 수 있습니다.
SAP NetWeaver 기반 애플리케이션 시나리오의 기본 지속성 데이터베이스로 SAP HANA 에는 한 가지 제한 사항이 있습니다: SAP NetWeaver ABAP 및 Java 애플리케이션 서버는 SAP HANA 하드웨어와는 별도의 하드웨어 서버에서 실행되어야 합니다.
전제조건
자동화 솔루션 Automate SAP 바스티온 서버 - SAP 미디어 스토리지 리포지토리를 사용하여 배포된 배포 서버(바스티온 서버)는 동일한 VPC, 동일한 지역에 존재해야 하며 SAP 시스템 VSI와 동일한 서브넷 및 보안 그룹이 구성되어 있어야 합니다.
작성된 내용
이 스크립트는 분산 환경의 기존 VPC에서 가상 인프라 리소스 배포, SAP 아키텍처를 위한 프로비저닝 프로세스를 자동화합니다. SAP NW 7.x (ABAP 또는 Java ) 앱 서버는 별도의 가상 서버 인스턴스 VPC 시스템에, SAP HANA DB는 전용 서버형 가상 서버 인스턴스 VPC 박스에 프로비저닝됩니다. 스크립트는 두 단계로 작동합니다.
첫 번째 단계에서는 SAP 인증 스토리지 및 네트워크 구성(배포 서버(바스티온 서버)와 동일한 서브넷 및 보안 그룹)을 사용하는 두 개의 가상 서버 인스턴스가 구성됩니다.
두 번째 단계에서는 Ansible 플레이북이 호출되고 SAP 아키텍처가 두 전용 VSI에 모두 설치됩니다: SAP 앱 VSI 시스템과 전용 SAP HANA VSI 박스입니다. 배포되는 SAP 아키텍처는 독립형 전용 SAP HANA 2.0 박스에 SAP NW 7.x 릴리스입니다.
이 스크립트는 하나의 작업 흐름에서 전용 DB SAP HANA 박스와 함께 SAP ( SAP NW 7.x 릴리즈) 솔루션을 설치하도록 설계되었습니다.
Terraform 배포 스크립트 파일
구성 및 스크립트 파일은 GitHub 리포지토리에서 확인할 수 있습니다:
- Java 스택의 경우 : https://github.com/IBM-Cloud/sap-netweaver-java-hana
- ABAP 스택의 경우 : https://github.com/IBM-Cloud/sap-netweaver-abap-hana
input.auto.tfvars
파일에서 리소스를 사용자 정의할 수 있으며 변수 값을 제공해야 합니다.
다른 구성 파일은 제공되며 수정할 필요가 없습니다.
가상 서버 인스턴스 구성
SAP NetWeaver 애플리케이션 서버 및 HANA 데이터베이스 서버에 지원되는 운영 체제는 다음과 같습니다:
- Red Hat Enterprise Linux 8.6 에 대한 SAP
- Red Hat Enterprise Linux 8.4 에 대한 SAP
- SUSE Linux Enterprise Server 15 SP 4 SAP
- SUSE Linux Enterprise Server 15 SP 3 SAP
두 서버 인스턴스 모두에서 제공된 SSH 키는 root
사용자로 SSH를 통해 VSI에 액세스하는 데 사용됩니다.
Schematics 스크립트 파일
구성 및 스크립트 파일은 GitHub 리포지토리에서 확인할 수 있습니다:
- ABAP: https://github.com/IBM-Cloud/sap-netweaver-abap-hana/tree/main
- Java: https://github.com/IBM-Cloud/sap-netweaver-java-hana/tree/main
Schematics 인터페이스를 사용하는 경우 다음 정보를 제공해야 합니다:
- 작업 공간 정보를 표시합니다.
- aBAP 또는 Java 스택에서 선택한 솔루션의 GitHub 경로를 지정합니다.
- Schematics 인터페이스의 매개변수 값을 입력합니다. CLI에서 사용하는
input.auto.tfvars
파일과 동일한 매개변수입니다.
SAP 킷
각 IBM Cloud 지역마다 전용 배포 서버(바스티온 서버)가 테라폼 환경을 위해 사용됩니다. 필요한 SAP 및 DB 킷을 Deployment(Bastion) Server에 다운로드하는 것은 사용자의 책임입니다. 자동 배치 프로세스 중에 모든 파일 아카이브를 Ansible에서 압축 해제합니다. 자세한 정보는 전용 GitHub 저장소의 readme 파일을 참조하십시오.
지원 - Terraform 및 Schematics
어떠한 종류의 보증도 없으며 IBM®에서 이 자료에 대해 사용 가능한 서비스 또는 기술 지원이 없습니다. 권장되는 사례로, 라이브 시스템에서 사용하기 전에 이 사이트에서 다운로드하는 모든 자료를 검토하십시오.
여기에 제공된 자료는 IBM 서비스 조직에서 지원하지는 않지만, 개발자는 언제든지 자료를 수정, 재적용 또는 제거할 권리를 보유하며, 귀하의 의견을 환영합니다. 문제점을 보고하거나 제안 또는 의견을 제공하려면 GitHub 문제를 여십시오.
시작하기 전에
스크립트를 사용하기 전에:
- 아직 만들지 않았다면 배포 서버(바스티온 서버)를 만들어 SAP 키트를 저장하세요. 자세한 정보는 SAP 배스천 서버 자동화 - SAP 매체 스토리지 저장소를 참조하십시오.
- 이전에 작성한 배치 서버에 로그인하고 Terraform 및 Ansible이 설치되어 있는지 확인하십시오.
- SAP 포털에서 Deployment Server로 SAP 킷을 다운로드하십시오. 다운로드 위치를 기록해 두십시오. Ansible 모든 파일의 압축을 해제합니다. 자세한 내용은 Java README 파일 또는 ABAP README 파일을 참조하세요.
- IBM Cloud API 키를 작성 또는 검색하십시오. API 키는 IBM Cloud 플랫폼으로 인증하고 IBM Cloud 서비스에 대한 권한을 결정하는 데 사용됩니다.
- SSH 키 ID 작성 또는 검색. SSH 키 이름이 아니라 SSH 키를 위한 40자리 UUID가 필요합니다.
배포하기 전에 SAP NetWeaver ABAP 또는 Java 스택을 HANA db에 배포하세요
- VPC에 액세스하기 위해 계정을 설정합니다. 계정이 유료 계정 으로 업그레이드되었는지 확인하세요.
- 아직 배포 서버(바스티온 서버)를 만들지 않았다면 SAP 키트를 저장할 배포 서버(바스티온 서버)를 만드세요. 자세한 정보는 SAP 배스천 서버 자동화 - SAP 매체 스토리지 저장소를 참조하십시오. 배포를 위해서는 배포 서버(바스티온 서버)의 플로팅 IP가 필요합니다.
- SAP 포털에서 배포 서버(바스티온 서버)로 SAP 키트를 다운로드하세요. 다운로드 위치를 기록해 두십시오. Ansible 는 모든 아카이브 키트의 압축을 풀고 경로가 필요합니다. 자세한 내용은 Readme 파일을 참조하세요:
- ABAP: Schematics, 테라폼 또는 카탈로그 타일
- JAVA: Schematics 및 테라폼
- IBM Cloud API 키 작성 또는 검색. API 키는 IBM Cloud 플랫폼에서 인증하고 IBM Cloud 서비스에 대한 사용 권한을 판별하는 데 사용됩니다.
- SSH 키 ID 작성 또는 검색. SSH 키 이름이 아니라 SSH 키를 위한 40자리 UUID가 필요합니다.
- 선택 사항 - (카탈로그 타일) 자격 증명 및 비밀번호에 대한 비밀을 만들려면 Secrets Manager.
Schematics 사용자 인터페이스를 사용하여 SAP NetWeaver 7.x 및 SAP HANA 배포하기
다음 단계에 따라 Schematics 인터페이스를 사용하여 기존 VPC에서 NetWeaver ABAP 또는 Java 스택을 구성하세요. 스크립트를 완료하는 데 2~3시간이 소요될 수 있습니다.
-
IBM Cloud 메뉴에서 Schematics.
-
작업공간 작성을 클릭하십시오.
-
템플리트 지정 페이지에서 다음을 수행하십시오.
- Schematics 인터페이스에 URL 을 입력합니다.
- readme 파일에 나열된 Terraform 버전을 선택하십시오.
- 다음 을 클릭하십시오.
-
작업공간 세부사항 페이지에서 다음을 수행하십시오.
- 작업 공간의 이름을 입력하십시오.
- 리소스 그룹을 선택하십시오.
- 작업공간에 대한 위치를 선택하십시오. 작업공간 위치가 자원 위치와 일치하지 않아도 됩니다.
- 다음을 선택하십시오.
-
작성을 선택하여 작업공간을 작성하십시오.
-
작업 영역 설정 페이지의 입력 변수 섹션에서 기본 입력 변수를 검토하고 솔루션에 맞는 값을 입력합니다.
각 매개변수에 대한 자세한 설명은 GitHub repo Java Readme 또는 ABAP Readme 파일의 "입력 매개변수 파일" 장을 참조하세요. 또한 비밀번호, API, ssh 비공개 키와 같은 민감한 정보가 포함된 매개변수는 '민감'으로 표시해야 합니다. 이러한 매개변수는 도움말 파일의 '입력 매개변수 파일' 아래에 '민감'으로 표시되어 있습니다.
-
작업공간 설정 페이지에서 계획 생성을 클릭하십시오. 플랜이 완료될 때까지 기다리십시오.
-
로그 보기를 클릭하여 Terraform 실행 플랜의 로그 파일을 검토하십시오.
-
플랜 적용을 클릭하여 Terraform 템플리트를 적용하십시오.
-
로그 파일을 검토하여 프로비저닝, 수정 또는 삭제 프로세스 중에 오류가 발생하지 않았는지 확인합니다.
배포 가능한 아키텍처 타일을 통해 VPC에 SAP NetWeaver (ABAP) Linux /HANA 배포하기
다음 단계에 따라 카탈로그 타일 인터페이스를 사용하여 기존 VPC에서 SAP NetWeaver (ABAP) Linux /HANA를 구성합니다. 스크립트를 완료하는 데 2~3시간이 소요될 수 있습니다.
- IBM Cloud 카탈로그 메뉴에서 배포 가능 아키텍처 타일에서 SAP HANA NetWeaver ABAP용 VPC를 선택합니다. 이 배포에 대한 자세한 내용은 Readme 파일을 참조하세요.
- 최신 버전을 선택합니다.
- 표준 변형을 선택합니다.
- 배포 옵션 검토를 클릭합니다:
- 프로젝트에 추가 를 클릭하여 이 배포를 IBM Cloud 프로젝트에 추가하고 다른 배포와 결합합니다. IBM Cloud 프로젝트에는 배포 검증, 비용 계산, 규정 준수 확인 및 승인 프로세스를 비롯한 여러 가지 다른 파이프라인 단계가 포함되어 있습니다.
- CLI에서 생성하여 CLI 명령을 가져옵니다. 이 명령을 사용하면 CLI에서 배포를 트리거할 수 있습니다.
- 코드 작업을 통해 다른 테라폼 배포에 코드를 포함할 수 있습니다.
- IBM Cloud Schematics 으로 배포하여 배포 프로세스를 직접 트리거합니다.
- IBM Cloud Schematics 옵션으로 배포를 선택합니다. 이제 이 설치에 대한 입력 매개변수를 추가합니다. 매개변수에는 3가지 범주가 있습니다:
-
작업 공간- 이 매개변수는 Schematics 에서 자동으로 생성되는 작업 공간을 정의합니다:
- 워크스페이스의 이름을 입력하거나 기본 이름을 사용합니다.
- 리소스 그룹은 리소스를 만드는 데 사용되는 그룹입니다. 기본값을 사용하거나 리소스 그룹을 만듭니다.
- Schematics 워크스페이스를 만들 위치를 선택합니다. 워크스페이스 위치가 리소스 위치와 일치할 필요는 없습니다.
-
필수 입력 변수- 기본 입력 변수를 검토하고 솔루션에 맞는 값을 입력합니다. 이러한 매개 변수는 배포에 따라 다릅니다. 자세한 내용은 Readme 파일을 참조하세요.
필수 변수 매개변수 설명 앱_호스트명 SAP 애플리케이션 VSI의 호스트 이름입니다. 호스트 이름은 SAP에서 요구하는 대로 최대 13자여야 합니다. SAP 시스템의 호스트 이름에 관한 규칙에 대한 자세한 내용은 SAP 참고 611361: " SAP ABAP 플랫폼 서버의 호스트 이름"을 참조하세요. DB_HOSTNAME HANA VSI의 호스트 이름입니다. 호스트 이름은 SAP에서 요구하는 대로 최대 13자여야 합니다. SAP 시스템의 호스트 이름에 관한 규칙에 대한 자세한 내용은 SAP 참고 611361: " SAP ABAP 플랫폼 서버의 호스트 이름"을 참조하세요. BASTION_FLOATING_IP 바스티온 서버의 플로팅 IP를 입력합니다. 지역 솔루션을 배포할 클라우드 리전입니다. VPC의 영역 및 영역이 여기에 나열됩니다. 여기에서 IBM Cloud Schematics 에서 지원되는 위치를 확인하세요. resource_group VSI 및 볼륨 리소스에 대한 기존 리소스 그룹의 이름입니다. 리소스 그룹 목록은 여기에서 확인할 수 있습니다. SECURITY_GROUP 기존 보안 그룹의 이름입니다. 보안 그룹 목록은 여기에서 확인할 수 있습니다. SSH_KEYS VSI에 루트로 SSH할 수 있는 SSH 키 UUID 목록입니다. 하나 이상의 ID를 포함할 수 있습니다. SSH 키 목록은 여기에서 사용 가능합니다. SUBNET 기존 서브넷의 이름입니다. 서브넷 목록은 여기에서 확인할 수 있습니다. VPC 기존 VPC의 이름입니다. VPC 목록은 여기에서 사용 가능합니다. ZONE 솔루션을 배치할 클라우드 영역입니다. 하나_메인_비밀번호 설치 중에 생성되는 모든 사용자의 공통 비밀번호입니다. 이미지 목록은 여기에서 확인할 수 있습니다. ibmcloud_api_key IBM Cloud API 키(중요한* 값). private_ssh_key OpenSSH 형식(민감* 값)으로 id_rsa 개인 키 쌍 콘텐츠를 입력합니다. 이 개인 키는 Terraform 프로비저닝 중에만 사용해야 하며 SAP 배치 후에 변경하는 것이 좋습니다. Sap_main_password 설치 중에 생성되는 모든 사용자의 공통 비밀번호입니다. Obs* 섹션을 참조하세요. -
선택적 입력 변수- 선택적 매개변수를 검토하고 업데이트합니다. 자세한 내용은 Readme 파일을 참조하세요.
선택적 변수 매개변수 설명 APP_IMAGE SAP 애플리케이션 VSI에 사용되는 OS 이미지입니다. Obs* 섹션을 참조하세요. 이미지 목록은 여기에서 확인할 수 있습니다. 앱_프로필 SAP 애플리케이션 VSI에 사용되는 인스턴스 프로필입니다. 프로필 목록은 여기에서 확인할 수 있습니다. 지원되는 DB/OS 및 IBM 2세대 가상 서버 인스턴스(VSI)에 대한 자세한 내용은 SAP 참고 2927211: " SAP 가상 프라이빗 클라우드의 애플리케이션( IBM )"을 참조하세요. DB_IMAGE HANA VSI에 사용되는 OS 이미지입니다. Obs* 섹션을 참조하세요. 이미지 목록은 여기에서 확인할 수 있습니다. DB_PROFILE HANA VSI에 사용되는 인스턴스 프로필입니다. 프로필 목록은 여기에서 확인할 수 있습니다. 지원되는 DB/OS 및 IBM 2세대 가상 서버 인스턴스(VSI)에 대한 자세한 내용은 SAP 참고 2927211: " SAP 가상 프라이빗 클라우드의 애플리케이션( IBM )"을 참조하세요. ID_RSA_파일_경로 Private_ssh_key의 파일 경로는 기본적으로 자동으로 생성됩니다. 변경하는 경우 git repo 폴더의 상대 경로를 포함해야 합니다. 하나_컴포넌트 SAP HANA 구성 요소. 기본값: "서버". 유효한 값입니다: "ALL", "클라이언트", "ES", "ETS", "LCAPPS", "서버", "스마트다", "스트리밍", "rdsync", "XS", "스튜디오", "AFL", "SCA", "SOP", "EML", "RME", "RTL", "TRP". HANA_SID SAP 시스템 ID는 SAP HANA 시스템을 식별합니다. HANA_SYSNO SAP HANA 시스템의 인스턴스 번호를 지정합니다. 하나_시스템_사용 시스템 사용량. 기본값: "사용자 지정". 유효한 값입니다: "프로덕션", "테스트", "개발", "사용자 지정". HDB_콘큐런트_채용 아카이브를 HANA Host로 로드 및/또는 추출하는 데 사용되는 동시 작업의 수입니다. Kit_hdb_client_파일 SAP 지원 포털에서 다운로드한 HANA DB 클라이언트 아카이브(SAR)의 경로입니다. Kit_igsexe_file SAP 지원 포털에서 다운로드한 IGS 아카이브(SAR)의 경로입니다. 키트_IGS헬퍼_파일 SAP 지원 포털에서 다운로드한 IGS 헬퍼 아카이브(SAR)의 경로입니다. 키트_엔화나_내보내기_파일 NetWeaver 설치 내보내기 ZIP 파일의 경로입니다. SAP 지원 포털에서 다운로드한 아카이브가 이 경로에 있어야 합니다. 키트_삽카_파일 SAP 지원 포털에서 다운로드한 sapcar 바이너리 경로입니다. 키트_사펙세_파일 SAP 지원 포털에서 다운로드한 SAP 커널 OS 아카이브(SAR)의 경로입니다. Kit_sapexedb_file SAP 지원 포털에서 다운로드한 SAP 커널 DB 아카이브(SAR)의 경로입니다. 키트_사파나_파일 SAP HANA ZIP 파일의 경로입니다. Obs* 섹션을 참조하세요. SAP 지원 포털에서 다운로드합니다. 키트_사포스타젠트_파일 SAP 지원 포털에서 다운로드한 SAP 호스트 에이전트 아카이브(SAR)의 경로입니다. KIT_SWPM_FILE SAP 지원 포털에서 다운로드한 SWPM 아카이브(SAR) 경로입니다. SAP_ASCS_INSTANCE_NUMBER ASCS의 내부 프로세스에 대한 기술 식별자입니다. SAP_CI_INSTANCE_NUMBER CI의 내부 프로세스를 위한 기술 식별자입니다. SAP_SID SAP 시스템 ID는 전체 SAP 시스템을 식별합니다. HANA_TENANT SAP HANA 테넌트 이름.
- 라이센스 계약에 동의하십시오.
- 배포를 선택합니다. 배포가 시작되고 배포 진행 상황을 모니터링할 수 있도록 스크립트 로그 파일을 표시하는 Schematics 페이지로 이동합니다.
테라폼을 사용하여 SAP NetWeaver 7.x 및 SAP HANA 배포하기
다음 단계에 따라 VPC 리소스를 만들고 SAP 아키텍처를 설치합니다. 스크립트를 완료하는 데 2시간이 걸릴 수 있습니다.
-
ssh
을 사용하여 배포 서버(바스티온 서버)에 로그인합니다. -
GitHub 리포지토리를 복제합니다.
Java 의 경우 : https://github.com/IBM-Cloud/sap-netweaver-java-hana 리포지토리를 복제하고
sap-netweaver-java-hana/cli
폴더로 경로를 변경합니다.git clone https://github.com/IBM-Cloud/sap-netweaver-java-hana.git cd sap-netweaver-java-hana/cli
ABAP의 경우: https://github.com/IBM-Cloud/sap-netweaver-abap-hana 리포지토리를 복제하고
sap-netweaver-abap-hana
폴더로 변경합니다.git clone https://github.com/IBM-Cloud/sap-netweaver-abap-hana.git cd sap-netweaver-abap-hana
-
기존 VPC 변수를 정의합니다. 영역, VPC 컴포넌트 이름, 프로파일 및 이미지를 지정하도록
input.auto.tfvars
파일을 수정합니다. 파일이 최소 권장 디스크 크기로 사전 설정되어 있습니다. 이 파일에 대해 40자리의 SSH 키 ID가 필요합니다. 두 번째 SSH 키는 선택사항입니다. 프로파일에 대한 추가 옵션은 인스턴스 프로파일을 참조하십시오. 이미지에 대한 추가 옵션은 이미지의 내용을 참조하십시오. 변수에 대한 설명은 Java README 파일 또는 ABAP README 파일을 참조하세요.Java 의 경우 다음 변수 값을 수정해야 합니다:
- 지역 - VSI의 지역입니다. Readme 파일을 참조하세요.
- ZONE - VSI를 위한 영역입니다. Readme 파일을 참조하세요.
- VPC - 지정한 지역에 있는 기존 VPC의 이름입니다.
- 보안 그룹 - 동일한 VPC에 있는 기존 보안 그룹의 이름입니다
- RESOURCE_GROUP - 이전에 사용자가 만든 기존 리소스 그룹의 이름입니다.
- SUBNET - VSI와 동일한 지역 및 영역에 있는 기존 서브넷의 이름입니다
- SSH_KEYS - SSH를 통해 VSI에 연결할 수 있도록 허용된 SSH 키 UUID 목록입니다
- DB_HOSTNAME - 데이터베이스 VSI의 호스트 이름(최대 13자)입니다. 자세한 정보는 readme 파일을 참조하십시오.
- 앱_호스트명 - 애플리케이션 서버 VSI의 호스트 이름(최대 13자)입니다. 자세한 정보는 readme 파일을 참조하십시오.
# General VPC variables for Java stack REGION = "ed-de" ZONE = "eu-de-2" VPC = "ic4sap" SECURITYGROUP = "ic4sap-securitygroup" SUBNET = "ic4sap-subnet" SSH_KEYS = [ "ssh key1" , "ssh key2" ] # SAP Database VSI variables: DB_HOSTNAME = "sapjavadb" DB_PROFILE = "mx2-16x128" DB_IMAGE = "ibm-redhat-8-6-amd64-sap-hana-2" # For any manual change in the Terraform code, you have to make sure that you use a certified image based on the SAP Note: 2927211. # SAP APPs VSI variables: APP_HOSTNAME = "sapjavci" APP_PROFILE = "bx2-4x16" APP_IMAGE = "ibm-redhat-8-6-amd64-sap-applications-2" # For any manual change in the terraform code, you have to make sure that you use a certified image based on the SAP Note: 2927211.
ABAP의 경우 다음 변수 값을 수정해야 합니다:
- 지역 - VSI의 지역입니다. Readme 파일을 참조하세요.
- ZONE - VSI를 위한 영역입니다. Readme 파일을 참조하세요.
- VPC - 지정한 지역에 있는 기존 VPC의 이름입니다.
- 보안 그룹 - 동일한 VPC에 있는 기존 보안 그룹의 이름입니다
- RESOURCE_GROUP - 이전에 사용자가 만든 기존 리소스 그룹의 이름입니다
- SUBNET - VSI와 동일한 지역 및 영역에 있는 기존 서브넷의 이름입니다
- SSH_KEYS - SSH를 통해 VSI에 연결할 수 있도록 허용된 SSH 키 UUID 목록입니다
- DB_HOSTNAME - 데이터베이스 VSI의 호스트 이름(최대 13자)입니다. 자세한 정보는 readme 파일을 참조하십시오.
- 앱_호스트명 - 애플리케이션 서버 VSI의 호스트 이름(최대 13자)입니다. 자세한 정보는 readme 파일을 참조하십시오.
# General VPC variables for ABAP stack REGION = "eu-de" ZONE = "eu-de-2" VPC = "ic4sap" # EXISTING Security group name SECURITY_GROUP = "ic4sap-securitygroup" # EXISTING Security group name RESOURCE_GROUP = "wes-automation" SUBNET = "ic4sap-subnet" # EXISTING Subnet name SSH_KEYS = [ "r010-57bfc315-f9e5-46bf-bf61-d87a24a9ce7a" , "r010-3fcd9fe7-d4a7-41ce-8bb3-d96e936b2c7e" ] # SAP Database VSI variables: DB_HOSTNAME = "sapnwhdb" DB_PROFILE = "mx2-16x128" DB_IMAGE = "ibm-redhat-8-6-amd64-sap-hana-6" # SAP APPs VSI variables: APP_HOSTNAME = "sapnwci" APP_PROFILE = "bx2-4x16" APP_IMAGE = "ibm-redhat-8-6-amd64-sap-applications-6"
호스트 이름에는 SAP에 필요한 최대 13자의 문자가 있어야 합니다. SAP 시스템의 호스트 이름에 적용되는 규칙에 대한 자세한 정보는 SAP Note 611361 - SAP ABAP 플랫폼 서버의 호스트 이름을 참조하십시오.
-
SAP 시스템 구성을 사용자 정의하십시오.
input.auto.tfvars
파일을 수정하여 SAP 시스템 구성을 지정하고 다운로드한 SAP 킷의 위치를 입력하십시오. 변수에 대한 설명은 Java README 파일 또는 ABAP README 파일을 참조하세요.Java 의 경우 :
# SAP HANA DB configuration for Java stack HANA_SID = "HDB" HANA_SYSNO = "00" HANA_SYSTEM_USAGE = "custom" HANA_COMPONENTS = "server" # SAP HANA Installation kit path KIT_SAPHANA_FILE = "/storage/HANADB/51055299.ZIP" # SAP system configuration SAP_SID = "JV1" SAP_SCS_INSTANCE_NUMBER = "01" SAP_CI_INSTANCE_NUMBER = "00" # SAP JAVA APP Installation kit path KIT_SAPCAR_FILE = "/storage/NW75HDB/SAPCAR_1010-70006178.EXE" KIT_SWPM_FILE = "/storage/NW75HDB/SWPM10SP31_7-20009701.SAR" KIT_SAPEXE_FILE = "/storage/NW75HDB/SAPEXE_801-80002573.SAR" KIT_SAPEXEDB_FILE = "/storage/NW75HDB/SAPEXEDB_801-80002572.SAR" KIT_IGSEXE_FILE = "/storage/NW75HDB/igsexe_13-80003187.sar" KIT_IGSHELPER_FILE = "/storage/NW75HDB/igshelper_17-10010245.sar" KIT_SAPHOSTAGENT_FILE = "/storage/NW75HDB/SAPHOSTAGENT51_51-20009394.SAR" KIT_HDBCLIENT_FILE = "/storage/NW75HDB/IMDB_CLIENT20_009_28-80002082.SAR" KIT_SAPJVM_FILE = "/storage/NW75HDB/SAPJVM8_73-80000202.SAR" KIT_JAVA_EXPORT = "/storage/NW75HDB/export"
ABAP의 경우:
# HANA DB configuration for ABAP stack HANA_SID = "HDB" HANA_SYSNO = "00" HANA_TENANT = "NWD" HANA_SYSTEM_USAGE = "custom" HANA_COMPONENTS = "server" # SAP HANA Installation kit path KIT_SAPHANA_FILE = "/storage/HANADB/SP07/Rev73/51057281.ZIP" # SAP system configuration SAP_SID = "NWD" SAP_ASCS_INSTANCE_NUMBER = "01" SAP_CI_INSTANCE_NUMBER = "00" # Number of concurrent jobs used to load and/or extract archives to HANA Host HDB_CONCURRENT_JOBS = "12" # SAP NW APP Installation kit path KIT_SAPCAR_FILE = "/storage/NW75HDB/SAPCAR_1300-70007716.EXE" KIT_SWPM_FILE = "/storage/NW75HDB/SWPM10SP42_0-20009701.SAR" KIT_SAPEXE_FILE = "/storage/NW75HDB/KERNEL/754/SAPEXE_400-80007612.SAR" KIT_SAPEXEDB_FILE = "/storage/NW75HDB/KERNEL/754/SAPEXEDB_400-80007611.SAR" KIT_IGSEXE_FILE = "/storage/NW75HDB/KERNEL/754/igsexe_4-80007786.sar" KIT_IGSHELPER_FILE = "/storage/NW75HDB/igshelper_17-10010245.sar" KIT_SAPHOSTAGENT_FILE = "/storage/NW75HDB/SAPHOSTAGENT65_65-80004822.SAR" KIT_HDBCLIENT_FILE = "/storage/NW75HDB/IMDB_CLIENT20_022_27-80002082.SAR" KIT_NWHANA_EXPORT_FILE = "/storage/NW75HDB/ABAPEXP/51050829_3.ZIP"
-
Terraform CLI를 초기화하십시오.
terraform init
-
Terraform 실행 플랜을 작성하십시오. Terraform 실행 계획은 계정에서 가상 프라이빗 클라우드 인스턴스를 작성하기 위해 수행되는 모든 조치를 요약합니다. Terraform 계획 중에 API 키와 초기 SAP 및 DB 비밀번호를 입력하라는 프롬프트가 표시됩니다.
terraform plan --out plan1
SAP 기본 비밀번호, HANA 기본 비밀번호, API 키를 입력하라는 메시지가 표시됩니다.
SAP 기본 비밀번호는 10~14자 길이여야 하며 숫자(0~9)가 하나 이상 포함되어야 합니다. 여기에는 a-z, A-Z, 0-9, @, #, $, _ 문자만 포함될 수 있습니다. 이 비밀번호는 !을 포함할 수 없습니다. 숫자 또는 밑줄(_) 로 시작할 수 없습니다.
-
계획에 만들려는 모든 리소스가 표시되고 이름과 값이 올바른지 확인합니다. 계획을 조정해야 하는 경우
input.auto.tfvars
파일을 편집하여 자원을 정정하고terraform plan --out plan1
을(를) 다시 실행하십시오. -
IBM Cloud에서 SAP 인스턴스 및 IAM 액세스 정책에 대한 가상 사설 클라우드를 작성하십시오.
terraform apply "plan1"
가상 사설 클라우드 및 구성요소가 작성되고
terraform plan
출력과 유사한 출력이 표시됩니다.
다음 단계
IBM Cloud 대시보드 및 사용자 인터페이스를 사용하여 VPC를 작성한 후 수정하지 마십시오. Terraform 스크립트는 완벽한 솔루션을 작성하며, 사용자 인터페이스를 사용하여 자원을 선택적으로 수정하면 예기치 않은 결과가 발생할 수 있습니다.
VPC를 제거해야 하는 경우, 프로젝트 폴더로 이동하여 terraform destroy
을(를) 실행하십시오.