다음을 통해 공유


Azure용 SAP LaMa 커넥터

많은 고객이 LAMa(SAP Landscape Management)를 사용하여 SAP 환경을 운영하고 모니터링합니다. 버전 3.0 SP05부터 SAP LaMa는 기본적으로 Azure에 대한 커넥터를 포함합니다. 이 커넥터를 사용하여 VM(가상 머신)의 할당을 취소하고 시작하고, 관리 디스크를 복사 및 재배치하고, 관리 디스크를 삭제할 수 있습니다. 이러한 기본 작업을 사용하면 SAP LaMa를 사용하여 SAP 시스템을 재배치, 복사, 복제 및 새로 고칠 수 있습니다.

이 가이드에서는 Azure용 SAP LaMa 커넥터를 설정하는 방법을 설명합니다. 또한 적응형 SAP 시스템을 설치하는 데 사용할 수 있는 가상 머신을 만들고 구성하는 방법에 대해서도 설명합니다.

참고 항목

커넥터는 SAP LaMa Enterprise Edition에서만 사용할 수 있습니다.

리소스

다음 SAP 노트는 Azure의 SAP LaMa 항목과 관련이 있습니다.

참고 번호 타이틀
2343511 Sap Landscape Management용 Microsoft Azure 커넥터(LaMa)
2350235 SAP Landscape Management 3.0 - Enterprise Edition

자세한 내용은 SAP LaMa용 SAP 도움말 포털에서 찾을 수 있습니다.

참고 항목

SAP LaMa 또는 Azure용 커넥터에 대한 지원이 필요한 경우 BC-VCM-LVM-HYPERV 구성 요소에서 SAP를 사용하여 인시던트를 엽니다.

일반적인 설명

  • 설치>설정>Engine에서 자동 탑재 지점 만들기사용하도록 설정해야 합니다.

    SAP LaMa가 가상 머신에서 SAPACEXT(SAP Adaptive Extensions)를 사용하여 볼륨을 탑재하는 경우 이 설정을 사용하지 않는 경우 탑재 지점이 있어야 합니다.

  • 별도의 서브넷을 사용하고 새 VM을 배포할 때 IP 주소 "도용"을 방지하기 위해 동적 IP 주소를 사용하지 않으며 SAP 인스턴스가 준비되지 않았습니다.

    SAP LaMa가 사용하는 서브넷에서 동적 IP 주소 할당을 사용하는 경우 SAP LaMa를 사용하여 SAP 시스템을 준비하지 못할 수 있습니다. SAP 시스템이 준비되지 않은 경우 IP 주소는 예약되지 않으며 다른 가상 머신에 할당될 수 있습니다.

  • 관리되는 호스트에 로그인하는 경우 파일 시스템이 분리되는 것을 차단하지 마세요.

    Linux 가상 머신에 로그인하고 작업 디렉터리를 탑재 지점(예 : /usr/sap/AH1/ASCS00/exe)의 디렉터리로 변경하는 경우 볼륨을 분리할 수 없으며 재배치 또는 준비되지 않은 작업이 실패합니다.

  • SUSE SLES Linux 가상 머신에서 사용하지 않도록 설정 CLOUD_NETCONFIG_MANAGE 해야 합니다. 자세한 내용은 SUSE KB 7023633 참조하세요.

Azure용 SAP LaMa 커넥터 설정

Azure용 커넥터는 버전 3.0 SP05를 기준으로 SAP LaMa에 포함되어 있습니다. SAP LaMa 3.0용 최신 지원 패키지 및 패치를 항상 설치하는 것이 좋습니다.

Azure용 커넥터는 Azure Resource Manager API를 사용하여 Azure 리소스를 관리합니다. SAP LaMa는 서비스 주체 또는 관리 ID를 사용하여 이 API에 대해 인증할 수 있습니다. SAP LaMa 인스턴스가 Azure VM에서 실행되는 경우 관리 ID를 사용하는 것이 좋습니다.

서비스 주체를 사용하여 Azure API에 대한 액세스 권한 얻기

다음 단계에 따라 Azure용 SAP LaMa 커넥터에 대한 서비스 주체를 만듭니다.

  1. Azure Portal로 이동합니다.
  2. Microsoft Entra ID 창을 엽니다.
  3. 앱 등록을 선택합니다.
  4. 새 등록을 선택합니다.
  5. 이름을 입력한 다음 등록을 선택합니다.
  6. 새 앱을 선택한 다음 설정 탭에서 인증서 및 비밀을 선택합니다.
  7. 새 클라이언트 암호를 만들고, 새 키에 대한 설명을 입력하고, 비밀이 만료되는 시기를 선택한 다음, 저장을 선택합니다.
  8. 값을 적어 씁니다. 서비스 주체의 암호로 사용합니다.
  9. 애플리케이션 ID를 적어 씁니다. 서비스 주체의 사용자 이름으로 사용합니다.

기본적으로 서비스 주체에는 Azure 리소스에 액세스할 권한이 없습니다. SAP LaMa에서 관리해야 하는 SAP 시스템을 포함하는 모든 리소스 그룹의 리소스 그룹 범위에서 서비스 주체에 기여자 역할을 할당합니다. 세부 단계에 대해서는 Azure Portal을 사용하여 Azure 역할 할당을 참조하세요.

관리 ID를 사용하여 Azure API에 대한 액세스 권한 얻기

관리 ID를 사용하려면 SAP LaMa 인스턴스가 시스템 할당 또는 사용자 할당 ID가 있는 Azure VM에서 실행해야 합니다. 관리 ID에 대한 자세한 내용은 Azure 리소스에 대한 관리 ID란?을 읽고 Azure Portal을 사용하여 VM에서 Azure 리소스에 대한 관리 ID를 구성합니다.

기본적으로 관리 ID에는 Azure 리소스에 액세스할 수 있는 권한이 없습니다. SAP LaMa에서 관리해야 하는 SAP 시스템을 포함하는 모든 리소스 그룹의 리소스 그룹 범위에서 VM ID에 기여자 역할을 할당합니다. 세부 단계에 대해서는 Azure Portal을 사용하여 Azure 역할 할당을 참조하세요.

Azure용 SAP LaMa 커넥터 구성에서 관리 ID 사용을 선택하여 관리 ID 를 사용하도록 설정합니다. 시스템 할당 ID를 사용하려면 사용자 이름 필드를 비워 둡니다. 사용자 할당 ID를 사용하려면 사용자 이름 필드에 해당 ID를 입력합니다.

SAP LaMa에서 새 커넥터 만들기

SAP LaMa 웹 사이트를 열고 인프라이동합니다. 클라우드 관리자 탭에서 추가를 선택합니다. Microsoft Azure 클라우드 어댑터를 선택한 다음, 다음을 선택합니다. 다음 정보를 입력합니다.

  • 레이블: 커넥터 인스턴스의 이름을 선택합니다.

  • 사용자 이름: 서비스 주체 애플리케이션 ID 또는 가상 머신의 사용자 할당 ID ID를 입력합니다.

  • 암호: 서비스 주체 키/암호를 입력합니다. 시스템 할당 또는 사용자 할당 ID를 사용하는 경우 이 필드를 비워 둘 수 있습니다.

  • URL: 기본값 https://management.azure.com/을 유지합니다.

  • 모니터링 간격(초): 최소 300 간격을 입력합니다.

  • 관리 ID 사용: SAP LaMa가 시스템 할당 또는 사용자 할당 ID를 사용하여 Azure API에 대해 인증할 수 있도록 하려면 선택합니다.

  • 구독 ID: Azure 구독 ID를 입력합니다.

  • Microsoft Entra 테넌트 ID: Active Directory 테넌트 ID를 입력합니다.

  • 프록시 호스트: SAP LaMa가 인터넷에 연결하는 데 프록시가 필요한 경우 프록시의 호스트 이름을 입력합니다.

  • 프록시 포트: 프록시의 TCP 포트를 입력합니다.

  • 비용 절감을 위해 스토리지 유형 변경: 디스크를 사용하지 않을 때 비용을 절감하기 위해 Azure 어댑터가 관리 디스크의 스토리지 유형을 변경해야 하는 경우 이 설정을 사용하도록 설정합니다.

    SAP 인스턴스 구성에서 참조되는 데이터 디스크의 경우 어댑터는 인스턴스 준비 취소 작업 중에 디스크 유형을 Standard Storage로 변경하고 인스턴스 준비 작업 중에 원래 스토리지 유형으로 돌아갑니다.

    SAP LaMa에서 가상 머신을 중지하는 경우 어댑터는 OS 디스크를 포함하여 연결된 모든 디스크의 스토리지 유형을 Standard Storage로 변경합니다. SAP LaMa에서 가상 머신을 시작하는 경우 어댑터는 스토리지 유형을 원래 스토리지 유형으로 다시 변경합니다.

테스트 구성을 선택하여 입력의 유효성을 검사합니다. 웹 사이트의 맨 아래에 다음 메시지가 표시됩니다.

"커넥트 성공: Microsoft 클라우드에 대한 커넥트이 성공적으로 수행되었습니다. 7개의 리소스 그룹이 발견되었습니다(요청된 그룹 10개만)."

새 적응형 SAP 시스템 프로비전

새 가상 머신을 수동으로 배포하거나 빠른 시작 리포지토리에서 Azure 템플릿 중 하나를 사용할 수 있습니다. 리포지토리에는 SAP NetWeaver ASCS, SAP NetWeaver 애플리케이션 서버 및 데이터베이스에 대한 템플릿이 포함되어 있습니다. 이러한 템플릿을 사용하여 시스템 복사, 복제 또는 유사한 작업의 일부로 새 호스트를 프로비전할 수도 있습니다.

SAP LaMa를 사용하여 관리하려는 모든 가상 머신에 별도의 서브넷을 사용하는 것이 좋습니다. 또한 새 가상 머신을 배포하고 SAP 인스턴스가 준비되지 않은 경우 IP 주소 "도용"을 방지하기 위해 동적 IP 주소를 사용하지 않는 것이 좋습니다.

참고 항목

가능하면 모든 가상 머신 확장을 제거합니다. 가상 머신에서 디스크를 분리하는 데 긴 런타임이 발생할 수 있습니다.

사용자 <hanasid>adm, 사용자 <sapsid>adm 및 그룹 sapsys 가 동일한 ID 및 그룹 ID를 가진 대상 머신에 있는지 확인하거나 LDAP를 사용합니다. SAP NetWeaver ABAP Central Services(ASCS) 또는 SAP Central Services(SCS)를 실행하는 데 사용해야 하는 가상 머신에서 NFS(네트워크 파일 공유) 서버를 사용하도록 설정하고 시작합니다.

수동 배포

SAP LaMa는 SAP 호스트 에이전트를 사용하여 가상 머신과 통신합니다. 가상 머신을 수동으로 배포하거나 빠른 시작 리포지토리에서 Azure Resource Manager 템플릿을 사용하지 않는 경우 최신 SAP 호스트 에이전트 및 SAP 적응형 확장을 설치해야 합니다. Azure에 필요한 패치 수준에 대한 자세한 정보는, SAP Note 2343511을 참조하세요.

Linux 가상 머신 수동 배포

SAP Note 2343511 나열된 지원되는 운영 체제 중 하나를 사용하여 새 가상 머신을 만듭니다. SAP 인스턴스에 대한 IP 구성을 더 추가합니다. 각 인스턴스에는 하나 이상의 IP 주소가 필요하며 가상 호스트 이름을 사용하여 설치해야 합니다.

SAP NetWeaver ASCS 인스턴스에는 /sapmnt/SAPSID, /usr/<sap</SAPSID>, /usr/sap/trans/usr/sap/<sapsid>adm용 디스크가 필요합니다. > SAP NetWeaver 애플리케이션 서버에는 더 많은 디스크가 필요하지 않습니다. SAP 인스턴스와 관련된 모든 항목은 ASCS에 저장되고 NFS를 통해 내보내야 합니다. 그렇지 않으면 현재 SAP LaMa를 사용하여 애플리케이션 서버를 더 추가할 수 없습니다.

Diagram that shows SAP NetWeaver ASCS on Linux.

SAP HANA에 대한 수동 배포

SAP Note 2343511 나열된 대로 SAP HANA에 대해 지원되는 운영 체제 중 하나를 사용하여 새 가상 머신을 만듭니다. SAP HANA에 대해 하나의 추가 IP 구성을 추가하고 HANA 테넌트당 하나씩 추가합니다.

SAP HANA에는 /hana/shared, /hana/backup, /hana/data/hana/log용 디스크가 필요합니다.

Diagram that shows SAP HANA on Linux.

Linux의 Oracle Database에 대한 수동 배포

SAP Note 2343511 나열된 대로 Oracle 데이터베이스에 대해 지원되는 운영 체제 중 하나를 사용하여 새 가상 머신을 만듭니다. Oracle 데이터베이스에 대한 IP 구성을 하나 더 추가합니다.

Oracle 데이터베이스에는 /oracle, /home/oraod1/home/oracle용 디스크가 필요합니다.

Diagram that shows an Oracle database on Linux and the disks it needs.

Microsoft SQL Server 수동 배포

SAP Note 2343511 나열된 대로 Microsoft SQL Server에 대해 지원되는 운영 체제 중 하나를 사용하여 새 가상 머신을 만듭니다. SQL Server 인스턴스에 대한 IP 구성을 하나 더 추가합니다.

SQL Server 데이터베이스 서버에는 데이터베이스 데이터 및 로그 파일에 대한 디스크가 필요합니다. c:\usr\sap디스크도 필요합니다.

Diagram that shows an Oracle database on Linux.

SAP NetWeaver 애플리케이션 서버를 재배치하거나 시스템 복사/복제 대상으로 사용하려는 가상 머신에 지원되는 Microsoft ODBC Driver for SQL Server를 설치해야 합니다. SAP LaMa는 SQL Server 자체를 재배치할 수 없으므로 이러한 용도로 사용하려는 가상 머신은 SQL Server를 미리 설치해야 합니다.

Azure 템플릿을 사용하여 가상 머신 배포

가상 머신의 운영 체제에 대한 SAP 소프트웨어 다운로드 센터에서 사용 가능한 최신 보관 파일을 다운로드합니다.

  • SAPCAR 7.21
  • SAP 호스트 에이전트 7.21
  • SAP 적응형 확장 1.0 EXT

또한 Microsoft 다운로드 센터에서 다음 구성 요소를 다운로드합니다.

  • Microsoft Visual C++ 2010 재배포 가능 패키지(x64)(Windows만 해당)
  • Microsoft ODBC Driver for SQL Server(SQL Server에만 해당)

구성 요소는 템플릿 배포에 필요합니다. 템플릿에서 사용할 수 있도록 하는 가장 쉬운 방법은 Azure Storage 계정에 업로드하고 SAS(공유 액세스 서명)를 만드는 것입니다.

템플릿에는 다음과 같은 매개 변수가 있습니다.

  • sapSystemId: SAP SID(시스템 ID)입니다. 디스크 레이아웃(예 : /usr/sap/<sapsid>)을 만드는 데 사용됩니다.

  • computerName: 새 가상 머신의 컴퓨터 이름입니다. SAP LaMa도 이 매개 변수를 사용합니다. 이 템플릿을 사용하여 시스템 복사본의 일부로 새 가상 머신을 프로비전하면, SAP LaMa는 이 컴퓨터 이름을 가진 호스트에 연결할 수 있을 때까지 대기합니다.

  • osType: 배포하려는 운영 체제의 유형입니다.

  • dbtype: 데이터베이스의 형식입니다. 이 매개 변수는 추가해야 하는 추가 IP 구성 수와 디스크 레이아웃의 모양을 결정하는 데 사용됩니다.

  • sapSystemSize: 배포하려는 SAP 시스템의 크기입니다. 가상 머신 인스턴스의 유형과 크기를 결정하는 데 사용됩니다.

  • adminUsername: 가상 머신의 사용자 이름입니다.

  • adminPassword: 가상 머신의 암호입니다. SSH에 대한 공개 키를 제공할 수도 있습니다.

  • sshKeyData: 가상 머신에 대한 공용 SSH 키입니다. Linux 운영 체제에 대해서만 지원됩니다.

  • subnetId: 사용하려는 서브넷의 ID입니다.

  • deployEmptyTarget: 가상 머신을 인스턴스 재배치 또는 이와 유사한 대상으로 사용하려는 경우 배포할 수 있는 빈 대상입니다. 이 경우 추가 디스크 또는 IP 구성이 연결되지 않습니다.

  • sapcarLocation: 배포하는 운영 체제와 일치하는 SAPCAR 애플리케이션의 위치입니다. SAPCAR는 다른 매개 변수에서 제공하는 보관 파일을 추출하는 데 사용됩니다.

  • sapHostAgentArchiveLocation: SAP 호스트 에이전트 보관의 위치입니다. SAP 호스트 에이전트는 이 템플릿 배포의 일부로 배포됩니다.

  • sapacExtLocation: SAP 적응형 확장의 위치입니다. SAP Note 2343511 Azure에 필요한 최소 패치 수준을 나열합니다.

  • vcRedistLocation: SAP 적응형 확장을 설치하는 데 필요한 Variant 구성 런타임의 위치입니다. 이 매개 변수는 Windows에만 필요합니다.

  • odbcDriverLocation: 설치하려는 ODBC 드라이버의 위치입니다. SQL Server용 Microsoft ODBC 드라이버만 지원됩니다.

  • sapadmPassword: sapadm 사용자의 암호입니다.

  • sapadmId: sapadm 사용자의 Linux 사용자 ID입니다. Windows에는 필요하지 않습니다.

  • sapsysGid: sapsys 그룹의 Linux 그룹 ID 입니다 . Windows에는 필요하지 않습니다.

  • _artifactsLocation: 이 템플릿에 필요한 아티팩트가 포함된 기본 URI입니다. 함께 제공되는 스크립트를 사용하여 템플릿을 배포하는 경우 구독의 프라이빗 위치가 사용되고 이 값이 자동으로 생성됩니다. GitHub에서 템플릿을 배포하지 않는 경우에만 이 URI가 필요합니다.

  • _artifactsLocationSasToken: 액세스 _artifactsLocation하는 데 필요한 SAS 토큰입니다. 함께 제공되는 스크립트를 사용하여 템플릿을 배포하면 SAS 토큰이 자동으로 생성됩니다. GitHub에서 템플릿을 배포하지 않는 경우에만 이 토큰이 필요합니다.

SAP HANA

다음 예제에서는 SID HN1이 있는 SAP HANA 시스템 및 SID AH1이 있는 SAP NetWeaver 시스템을 설치한다고 가정합니다. 가상 호스트 이름은 다음과 같습니다.

  • HANA 인스턴스에 대한 hn1-db
  • SAP NetWeaver 시스템에서 사용하는 HANA 테넌트에 대한 ah1-db
  • SAP NetWeaver ASCS용 ah1-ascs
  • 첫 번째 SAP NetWeaver 애플리케이션 서버에 대한 ah1-di-0

Azure 관리 디스크를 사용하여 SAP HANA용 SAP NetWeaver ASCS 설치

SAP SWPM(Software Provisioning Manager)을 시작하기 전에 ASCS의 가상 호스트 이름의 IP 주소를 탑재해야 합니다. SAPACEXT를 사용하는 것이 좋습니다. SAPACEXT를 사용하여 IP 주소를 탑재하는 경우 다시 부팅한 후 IP 주소를 다시 탑재해야 합니다.

Linux logo. 리눅스

# /usr/sap/hostctrl/exe/sapacext -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
/usr/sap/hostctrl/exe/sapacext -a ifup -i eth0 -h ah1-ascs -n 255.255.255.128

Windows logo. Windows

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h ah1-ascs -n 255.255.255.128

SWPM을 실행합니다. ASCS 인스턴스 호스트 이름의 경우 ah1-ascs를 사용합니다.

Linux logo. 리눅스

/usr/sap/hostctrl/exe/host_profile 있는 SAP 호스트 에이전트 프로필에 다음 프로필 매개 변수를 추가합니다. 자세한 내용은 SAP Note 2628497 참조하세요.

acosprep/nfs_paths=/home/ah1adm,/usr/sap/trans,/sapmnt/AH1,/usr/sap/AH1

Azure NetApp Files에 SAP HANA용 SAP NetWeaver ASCS 설치

Azure NetApp Files는 Azure용 NFS를 제공합니다. SAP LaMa의 컨텍스트에서 ASCS 인스턴스 만들기 및 애플리케이션 서버의 후속 설치를 간소화합니다. 이전에는 ASCS 인스턴스도 NFS 서버 역할을 해야 했으며 매개 변수 acosprep/nfs_paths 를 SAP 호스트 에이전트의 호스트 프로필에 추가해야 했습니다.

네트워크 요구 사항

Azure NetApp Files에는 SAP 서버와 동일한 가상 네트워크의 일부여야 하는 위임된 서브넷이 필요합니다. 이러한 구성의 예는 다음과 같습니다.

  1. 가상 네트워크와 첫 번째 서브넷을 만듭니다.

    Screenshot that shows selections for creating a virtual network for Azure NetApp Files.

  2. Microsoft.NetApp/volumes에 대해 위임된 서브넷을 만듭니다.

    Screenshot that shows selections for adding a delegated subnet.

    Screenshot that shows a list of subnets.

  3. Azure Portal에서 NetApp 계정을 만듭니다.

    Screenshot that shows selections for creating a NetApp account.

    Screenshot that shows a created LaMa NetApp account.

    NetApp 계정 내에서 용량 풀은 각 풀에 대한 디스크의 크기와 유형을 지정합니다.

    Screenshot that shows selections for creating a NetApp capacity pool.

    Screenshot that shows a created NetApp capacity pool.

  4. NFS 볼륨을 정의합니다.

    하나의 풀에 여러 시스템에 대한 볼륨이 포함될 수 있으므로 자체 설명 명명 체계를 선택합니다. SID를 추가하면 관련 볼륨을 함께 그룹화하는 데 도움이 됩니다.

    ASCS 및 AS 인스턴스의 경우 /sapmnt/SID, /usr/sap/<SID>>/home/<<sid>adm 탑재가 필요합니다. 필요에 따라 중앙 전송 디렉터리에 대한 /usr/sap/trans가 필요합니다. 이 디렉터리가 하나 이상의 모든 환경에서 사용됩니다.

    Screenshot that shows basic details for creating a volume.

    Screenshot that shows protocol details for creating a volume.

    Screenshot that shows the tab for reviewing details before creating a volume.

  5. 다른 볼륨에 대해 이전 단계를 반복합니다.

    Screenshot that shows a list of created volumes.

  6. SAP SWPM을 사용하여 초기 설치가 수행되는 시스템에 볼륨을 탑재합니다.

    1. 탑재 지점을 만듭니다. 이 경우 SID는 AN1이므로 다음 명령을 실행합니다.

      mkdir -p /home/an1adm
      mkdir -p /sapmnt/AN1
      mkdir -p /usr/sap/AN1
      mkdir -p /usr/sap/trans
      
    2. 다음 명령을 사용하여 Azure NetApp Files 볼륨을 탑재합니다.

      # sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 9.9.9.132:/an1-home-sidadm /home/an1adm
      # sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 9.9.9.132:/an1-sapmnt-sid /sapmnt/AN1
      # sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 9.9.9.132:/an1-usr-sap-sid /usr/sap/AN1
      # sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 9.9.9.132:/global-usr-sap-trans /usr/sap/trans
      

      포털에서 탑재 명령을 조회할 수도 있습니다. 로컬 탑재 지점을 조정해야 합니다.

    3. df -h 명령을 실행합니다. 출력을 확인하여 볼륨을 올바르게 탑재했는지 확인합니다.

      Screenshot of OS-level mount points in output.

  7. SWPM을 사용하여 설치를 수행합니다. 하나 이상의 AS 인스턴스에 대해 동일한 단계를 수행해야 합니다.

    성공적으로 설치되면 SAP LaMa 내에서 시스템을 검색해야 합니다. 탑재 지점은 ASCS 및 AS 인스턴스에 대한 다음 스크린샷과 같이 표시됩니다.

    Screenshot that shows SAP LaMa mount points.

    참고 항목

    예를 들면 다음과 같습니다. IP 주소 및 내보내기 경로는 이전에 사용한 것과 다릅니다.

SAP HANA 설치

SAP HANA HDBLCM(데이터베이스 수명 주기 관리자) 명령줄 도구를 사용하여 SAP HANA를 설치하는 경우 매개 변수를 사용하여 --hostname 가상 호스트 이름을 제공합니다.

네트워크 인터페이스에 데이터베이스의 가상 호스트 이름의 IP 주소를 추가합니다. SAPACEXT를 사용하는 것이 좋습니다. SAPACEXT를 사용하여 IP 주소를 탑재하는 경우 다시 부팅한 후 IP 주소를 다시 탑재해야 합니다.

애플리케이션 서버가 HANA 테넌트에 연결하는 데 사용하는 이름의 다른 가상 호스트 이름 및 IP 주소를 추가합니다.

# /usr/sap/hostctrl/exe/sapacext -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
/usr/sap/hostctrl/exe/sapacext -a ifup -i eth0 -h hn1-db -n 255.255.255.128
/usr/sap/hostctrl/exe/sapacext -a ifup -i eth0 -h ah1-db -n 255.255.255.128

HANA VM이 아닌 애플리케이션 서버 VM에서 SWPM의 데이터베이스 인스턴스 설치를 실행합니다. SAP 시스템용 데이터베이스 대화 상자에서 데이터베이스 호스트의 경우 ah1-db를 사용합니다.

SAP HANA용 SAP NetWeaver 애플리케이션 서버 설치

SWPM을 시작하기 전에 애플리케이션 서버의 가상 호스트 이름의 IP 주소를 탑재해야 합니다. SAPACEXT를 사용하는 것이 좋습니다. SAPACEXT를 사용하여 IP 주소를 탑재하는 경우 다시 부팅한 후 IP 주소를 다시 탑재해야 합니다.

Linux logo. 리눅스

# /usr/sap/hostctrl/exe/sapacext -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
/usr/sap/hostctrl/exe/sapacext -a ifup -i eth0 -h ah1-di-0 -n 255.255.255.128

Windows logo. Windows

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h ah1-di-0 -n 255.255.255.128

SAP NetWeaver 프로필 매개 변수 dbs/hdb/hdb_use_ident 를 사용하여 SAP HANA 사용자 저장소(hdbuserstore)에서 키를 찾는 데 사용되는 ID를 설정하는 것이 좋습니다. SWPM을 사용하여 데이터베이스 인스턴스를 설치한 후 이 매개 변수를 수동으로 추가하거나 다음 코드로 SWPM을 실행할 수 있습니다.

# from https://blogs.sap.com/2015/04/14/sap-hana-client-software-different-ways-to-set-the-connectivity-data/
/sapdb/DVDs/IM_LINUX_X86_64/sapinst HDB_USE_IDENT=SYSTEM_COO

수동으로 설정하는 경우 새 hdbuserstore 항목도 만들어야 합니다.

# run as <sapsid>adm
/usr/sap/AH1/hdbclient/hdbuserstore LIST
# reuse the port that was listed from the command above, in this example 35041
/usr/sap/AH1/hdbclient/hdbuserstore SET DEFAULT ah1-db:35041@AH1 SAPABAP1 <password>

기본 애플리케이션 서버 인스턴스 대화 상자에서 PAS 인스턴스 호스트 이름에 ah1-di-0을 사용합니다.

SAP HANA에 대한 설치 후 단계

테넌트를 복사하거나, 테넌트를 이동하거나, 시스템 복제본(replica) 만들기 전에 SYSTEMDB 및 모든 테넌트 데이터베이스를 백업합니다.

Microsoft SQL Server

다음 예제에서는 SID AS1을 사용하여 SAP NetWeaver 시스템을 설치한다고 가정합니다. 가상 호스트 이름은 다음과 같습니다.

  • SAP NetWeaver 시스템에서 사용하는 SQL Server 인스턴스에 대한 as1-db
  • SAP NetWeaver ASCS용 as1-ascs
  • 첫 번째 SAP NetWeaver 애플리케이션 서버에 대한 as1-di-0

SQL Server용 SAP NetWeaver ASCS 설치

SWPM을 시작하기 전에 ASCS의 가상 호스트 이름의 IP 주소를 탑재해야 합니다. SAPACEXT를 사용하는 것이 좋습니다. SAPACEXT를 사용하여 IP 주소를 탑재하는 경우 다시 부팅한 후 IP 주소를 다시 탑재해야 합니다.

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h as1-ascs -n 255.255.255.128

SWPM을 실행합니다. ASCS 인스턴스 호스트 이름의 경우 as1-ascs를 사용합니다.

SQL Server 설치

SWPM을 시작하기 전에 데이터베이스의 가상 호스트 이름의 IP 주소를 네트워크 인터페이스에 추가해야 합니다. SAPACEXT를 사용하는 것이 좋습니다. SAPACEXT를 사용하여 IP 주소를 탑재하는 경우 다시 부팅한 후 IP 주소를 다시 탑재해야 합니다.

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h as1-db -n 255.255.255.128

SQL Server 가상 머신에서 SWPM의 데이터베이스 인스턴스 설치를 실행합니다. SQL Server에 연결하는 데 사용되는 호스트 이름을 재정의하는 데 사용합니다 SAPINST_USE_HOSTNAME=as1-db . Azure Resource Manager 템플릿을 사용하여 가상 머신을 배포한 경우 데이터베이스 데이터 파일에 사용되는 디렉터리를 C:\sql\data설정하고 데이터베이스 로그 파일을 C:\sql\log설정합니다.

사용자 NT AUTHORITY\SYSTEM 이 SQL Server 인스턴스에 액세스할 수 있고 서버 역할 sysadmin이 있는지 확인합니다. 자세한 내용은 SAP Notes 18777272562184 참조하세요.

SAP NetWeaver 애플리케이션 서버 설치

SWPM을 시작하기 전에 애플리케이션 서버의 가상 호스트 이름의 IP 주소를 탑재해야 합니다. SAPACEXT를 사용하는 것이 좋습니다. SAPACEXT를 사용하여 IP 주소를 탑재하는 경우 다시 부팅한 후 IP 주소를 다시 탑재해야 합니다.

# C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i <network interface> -h <virtual hostname or IP address> -n <subnet mask>
C:\Program Files\SAP\hostctrl\exe\sapacext.exe -a ifup -i "Ethernet 3" -h as1-di-0 -n 255.255.255.128

기본 애플리케이션 서버 인스턴스 대화 상자에서 PAS 인스턴스 호스트 이름에 대해 as1-di-0을 사용합니다.

문제 해결

검색 중 오류 및 경고

  • SELECT 권한이 거부되었습니다.
    • 오류:

      [Microsoft][ODBC SQL Server Driver][SQL Server]The SELECT permission was denied on the object 'log_shipping_primary_databases', database 'msdb', schema 'dbo'. [SOAPFaultException] The SELECT permission was denied on the object 'log_shipping_primary_databases', database 'msdb', schema 'dbo'.

    • 해결 방법: NT AUTHORITY\SYSTEMSQL Server 인스턴스에 액세스할 수 있는지 확인합니다. SAP Note 2562184 참조하세요.

인스턴스 유효성 검사 중 오류 및 경고

  • hdbuserstore유효성 검사에서 예외가 발생했습니다. 로그 뷰어를 참조하세요.
    • 원인:com.sap.nw.lm.aci.monitor.api.validation

    • 오류:

      RuntimeValidationException

      Exception in validator with ID 'RuntimeHDBConnectionValidator' (Validation: 'VALIDATION_HDB_USERSTORE'): Could not retrieve the hdbuserstore
      HANA userstore is not in the correct location

    • 해결 방법: /usr/sap/AH1/hdbclient/install/installation.ini 올바른지 확인합니다.

시스템 복사 중 오류 및 경고

  • 시스템 프로비저닝 단계의 유효성을 검사하는 동안 오류가 발생했습니다.

    • 원인:com.sap.nw.lm.aci.engine.base.api.util.exception

    • 오류:

      HAOperationException

      Calling '/usr/sap/hostctrl/exe/sapacext -a ShowHanaBackups -m HN1 -f 50 -h hn1-db -o level=0\;status=5\;port=35013 pf=/usr/sap/hostctrl/exe/host_profile -R -T dev_lvminfo -u SYSTEM -p hook -r' | /usr/sap/hostctrl/exe/sapacext -a ShowHanaBackups -m HN1 -f 50 -h hn1-db -o level=0\;status=5\;port=35013 pf=/usr/sap/hostctrl/exe/host_profile -R -T dev_lvminfo -u SYSTEM -p hook -r

    • 해결 방법: 원본 HANA 시스템의 모든 데이터베이스를 백업합니다.

  • 데이터베이스 인스턴스의 시스템 복사 시작 단계에서 오류가 발생했습니다.

    • 오류:

      Host Agent Operation '000D3A282BC91EE8A1D76CF1F92E2944' failed (OperationException. FaultCode: '127', Message: 'Command execution failed. : [Microsoft][ODBC SQL Server Driver][SQL Server]User does not have permission to alter database 'AS2', the database does not exist, or the database is not in a state that allows access checks.')

    • 해결 방법: NT AUTHORITY\SYSTEMSQL Server 인스턴스에 액세스할 수 있는지 확인합니다. SAP Note 2562184 참조하세요.

시스템 복제 중 오류 및 경고

  • 애플리케이션 서버 또는 ASCS의 강제 등록 및 시작 인스턴스 에이전트 단계에서 인스턴스 에이전트 를 등록하려고 할 때 오류가 발생했습니다.

    • 오류:

      Error occurred when trying to register instance agent. (RemoteException: 'Failed to load instance data from profile '\\as1-ascs\sapmnt\AS1\SYS\profile\AS1_D00_as1-di-0': Cannot access profile '\\as1-ascs\sapmnt\AS1\SYS\profile\AS1_D00_as1-di-0': No such file or directory.')

    • 해결 방법: ASCS/SCS의 sapmnt 공유에 SAP_AS1_Global관리 대한 모든 권한이 있는지 확인합니다.

  • 복제대한 시작 보호 사용 단계에서 오류가 발생했습니다.

    • 오류:

      Failed to open file '\\as1-ascs\sapmnt\AS1\SYS\profile\AS1_D00_as1-di-0' Cause: No such file or directory

    • 해결 방법: 애플리케이션 서버의 컴퓨터 계정에 프로필에 대한 쓰기 액세스 권한이 필요합니다.

시스템 복제본(replica)를 만드는 동안 오류 및 경고

  • 시스템 복제 만들기를 선택할 때 예외가 발생했습니다.

    • 원인:com.sap.nw.lm.aci.engine.base.api.util.exception

    • 오류:

      HAOperationException

      Calling '/usr/sap/hostctrl/exe/sapacext -a ShowHanaBackups -m HN1 -f 50 -h hn1-db -o level=0\;status=5\;port=35013 pf=/usr/sap/hostctrl/exe/host_profile -R -T dev_lvminfo -u SYSTEM -p hook -r' | /usr/sap/hostctrl/exe/sapacext -a ShowHanaBackups -m HN1 -f 50 -h hn1-db -o level=0\;status=5\;port=35013 pf=/usr/sap/hostctrl/exe/host_profile -R -T dev_lvminfo -u SYSTEM -p hook -r

    • 해결 방법: SAPACEXT를 hanasid>adm으로 <실행할 수 있는지 테스트합니다.

  • 스토리지 단계에서 전체 복사본을 사용하도록 설정하지 않은 경우 오류가 발생했습니다.

    • 오류:

      An error occurred when reporting a context attribute message for path IStorageCopyData.storageVolumeCopyList:1 and field targetStorageSystemId

    • 해결 방법: 단계에서 경고를 무시하고 다시 시도합니다. 이 문제는 SAP LaMa의 지원 패키지/패치에서 해결되었습니다.

재배치 중 오류 및 경고

  • NFS 다시 내보내기 경로 /usr/sap/AH1은 허용되지 않습니다.

    • 해결 방법: ASCS 호스트 에이전트 프로필에 ASCS 내보내기를 추가합니다. SAP Note 2628497 참조하세요.
  • ASCS를 재배치할 때 함수가 구현되지 않습니다.

    • 명령 출력:

      exportfs: host:/usr/sap/AX1: Function not implemented

    • 해결 방법: 재배치를 위해 대상 가상 머신에서 NFS 서버 서비스를 사용하도록 설정해야 합니다.

애플리케이션 서버 설치 중 오류 및 경고

  • SAPinst getProfileDir 단계를 실행하는 동안 오류가 발생했습니다.

    • 오류:

      Last error reported by the step: Caught ESAPinstException in module call: Validator of step '|NW_DI|ind|ind|ind|ind|0|0|NW_GetSidFromProfiles|ind|ind|ind|ind|getSid|0|NW_readProfileDir|ind|ind|ind|ind|readProfile|0|getProfileDir' reported an error: Node \\\as1-ascs\sapmnt\AS1\SYS\profile does not exist. Start SAPinst in interactive mode to solve this problem

    • 해결 방법: 프로필에 대한 액세스 권한이 있는 사용자와 함께 SWPM이 실행되고 있는지 확인합니다. 애플리케이션 서버 설치 마법사에서 이 사용자를 구성할 수 있습니다.

  • SAPinst askUnicode 단계를 실행하는 동안 오류가 발생했습니다.

    • 오류:

      Last error reported by the step: Caught ESAPinstException in module call: Validator of step '|NW_DI|ind|ind|ind|ind|0|0|NW_GetSidFromProfiles|ind|ind|ind|ind|getSid|0|NW_getUnicode|ind|ind|ind|ind|unicode|0|askUnicode' reported an error: Start SAPinst in interactive mode to solve this problem

    • 해결 방법: 최근 SAP 커널을 사용하는 경우 SWPM은 ASCS의 메시지 서버를 사용하여 시스템이 더 이상 유니코드 시스템인지 여부를 확인할 수 없습니다. SAP Note 2445033 참조하세요.

      SAP LaMa의 새 지원 패키지/패치에서 이 문제가 해결될 때까지 SAP 시스템의 기본 프로필에서 프로필 매개 변수 OS_UNICODE=uc 를 설정하여 문제를 해결합니다.

  • SAPinst dCheckGivenServer" version="1.0" 단계를 실행하는 동안 오류가 발생했습니다.

    • 오류:

      Last error reported by the step: Installation was canceled by user.

    • 해결 방법: 프로필에 대한 액세스 권한이 있는 사용자와 함께 SWPM이 실행되고 있는지 확인합니다. 애플리케이션 서버 설치 마법사에서 이 사용자를 구성할 수 있습니다.

  • SAPinst checkClient" version="1.0" 단계를 실행하는 동안 오류가 발생했습니다.

    • 오류:

      Last error reported by the step: Installation was canceled by user.

    • 해결 방법: 애플리케이션 서버를 설치하려는 가상 머신에 SQL Server용 Microsoft ODBC 드라이버가 설치되어 있는지 확인합니다.

  • SAPinst copyScripts 단계를 실행하는 동안 오류가 발생했습니다.

    • 오류:

      Last error reported by the step: System call failed. DETAILS: Error 13 (0x0000000d) (Permission denied) in execution of system call 'fopenU' with parameter (\\\as1-ascs/sapmnt/AS1/SYS/exe/uc/NTAMD64/strdbs.cmd, w), line (494) in file (\bas/bas/749_REL/bc_749_REL/src/ins/SAPINST/impl/src/syslib/filesystem/syxxcfstrm2.cpp), stack trace: CThrThread.cpp: 85: CThrThread::threadFunction() CSiServiceSet.cpp: 63: CSiServiceSet::executeService() CSiStepExecute.cpp: 913: CSiStepExecute::execute() EJSController.cpp: 179: EJSControllerImpl::executeScript() JSExtension.hpp: 1136: CallFunctionBase::call() iaxxcfile.cpp: 183: iastring CIaOsFileConnect::callMemberFunction(iastring const& name, args_t const& args) iaxxcfile.cpp: 1849: iastring CIaOsFileConnect::newFileStream(args_t const& _args) iaxxbfile.cpp: 773: CIaOsFile::newFileStream_impl(4) syxxcfile.cpp: 233: CSyFileImpl::openStream(ISyFile::eFileOpenMode) syxxcfstrm.cpp: 29: CSyFileStreamImpl::CSyFileStreamImpl(CSyFileStream*,iastring,ISyFile::eFileOpenMode) syxxcfstrm.cpp: 265: CSyFileStreamImpl::open() syxxcfstrm2.cpp: 58: CSyFileStream2Impl::CSyFileStream2Impl(const CSyPath & \\\aw1-ascs/sapmnt/AW1/SYS/exe/uc/NTAMD64/strdbs.cmd, 0x4) syxxcfstrm2.cpp: 456: CSyFileStream2Impl::open()

    • 해결 방법: 프로필에 대한 액세스 권한이 있는 사용자와 함께 SWPM이 실행되고 있는지 확인합니다. 애플리케이션 서버 설치 마법사에서 이 사용자를 구성할 수 있습니다.

  • SAPinst askPasswords 단계를 실행하는 동안 오류가 발생했습니다.

    • 오류:

      Last error reported by the step: System call failed. DETAILS: Error 5 (0x00000005) (Access is denied.) in execution of system call 'NetValidatePasswordPolicy' with parameter (...), line (359) in file (\bas/bas/749_REL/bc_749_REL/src/ins/SAPINST/impl/src/syslib/account/synxcaccmg.cpp), stack trace: CThrThread.cpp: 85: CThrThread::threadFunction() CSiServiceSet.cpp: 63: CSiServiceSet::executeService() CSiStepExecute.cpp: 913: CSiStepExecute::execute() EJSController.cpp: 179: EJSControllerImpl::executeScript() JSExtension.hpp: 1136: CallFunctionBase::call() CSiStepExecute.cpp: 764: CSiStepExecute::invokeDialog() DarkModeGuiEngine.cpp: 56: DarkModeGuiEngine::showDialogCalledByJs() DarkModeDialog.cpp: 85: DarkModeDialog::submit() EJSController.cpp: 179: EJSControllerImpl::executeScript() JSExtension.hpp: 1136: CallFunctionBase::call() iaxxcaccount.cpp: 107: iastring CIaOsAccountConnect::callMemberFunction(iastring const& name, args_t const& args) iaxxcaccount.cpp: 1186: iastring CIaOsAccountConnect::validatePasswordPolicy(args_t const& _args) iaxxbaccount.cpp: 430: CIaOsAccount::validatePasswordPolicy_impl() synxcaccmg.cpp: 297: ISyAccountMgt::PasswordValidationMessage CSyAccountMgtImpl::validatePasswordPolicy(saponazure,*****) const

    • 해결 방법: 격리 단계에서 호스트 규칙을 추가하여 VM에서 do기본 컨트롤러로 통신할 수 있도록 합니다.

다음 단계