S/4 HANA

SAP S/4 HANA 기동(Start) 절차

SAP S/4 HANA의 Start 하는 절차를 이해하고 SAP System의 시작 절차에 대해 설명하겠습니다.

SAP S/4HANA 는 SAP에서 4번째로 내 놓은 SAP ERP Business Suit입니다.

(fourth-generation ERP business application 이고 in-memory computing platform입니다.)

Application Server : SAP R1 -> R2 -> R3 -> ERP 6.0 -> S/4 HANA

SAP HANA Database 는 오라클 DB와 같은 데이터베이스로 Data를 저장하는 역할을 수행합니다.

Database Server : SAP HANA DB 1.0 SP01 -> SP09 -> SP12 -> HANA DB 2.0 SP01 -> SP03

SAP S/4 HANA 와 HANA DB의 Start 절차를 이해하면 Start 실패 시에 무엇이 잘못 되었는지 확인하기 쉽다.

SAP HANA Database의 OS(Operating System)가 Linux 기반으로 S/4 HANA의 Linux 기반으로 구성이 되어 있어서 Linux 환경에서 HANA DB와 S/4 HANA의 Start 절차에 대해서 설명하겠습니다.

UNIX는 Linux와 비슷한 구조로 UNIX와 같다고 생각하고 S/4 HANA의 Start 실패에 대한 대처와 조치 방법을 생각하시면 됩니다.

그리고 또한 Windows 환경에서 S/4 HANA와 HANA Database의 Start하는 것은 설명하지 않습니다. 당연한 이야기지만 HANA DB가 Linux 기반으로 구동 되는 시스템이라 Windows환경에서는 사용하지 않아서입니다.

결론적으로 Linux 환경에서 HANA DB 시작 하는 환경에 대한 이해와 S/4 HANA의 시작하는 환경을 설명하겠습니다.

OS(Operating System)  :  SUSE Linux Enterprise for SAP Applications 12 SP3

HANA Database        : SAP HANA Platform Edition 2.0 SPS03

S/4 HANA Version      : SAP S/4HANA 1809 On-Premise

SAP ERP 및 S/4 HANA의 서비스가 시작하는 절차에 대해서 이해를 하면 전체적인 S/4 HANA Start순서를 이해하고 S/4 HANA 를 시작했을 때 발생하는 문제점을 이해할 수 잇습니다.

  1. S/4 HANA의 System Architecture 에 대해서 먼저 설명하겠습니다.

HANA Database 는 HANA DB 1.0 또는 2.0 버전이 존재합니다.

Client Interface는 Database Base와 Application과 중간 인터페이스 역할을 수행합니다.

Application은 SAP ERP 6.0 과 S/4 HANA가 있습니다.

  1. SAP S/4 HANA의 Start하는 절차를 설명하겠습니다. SAP에서 출시하는 제품 모두 같은 형태로 구성되어 있습니다. SAP ERP, BW, CRM, SRM, SCM, Enterprise Portal 등 모든 SAP Application이 같은 방식으로 Start하게 됩니다. 여기에 SAP 제품의 버전이 바뀌면서 조금씩 달라지는 부분이 존재하는데 큰 범위에서는 모든 제품이 비슷한 형태로 Start하게 됩니다.

여기에서는 S/4 HANA에 해당되는 SAP NetWeaver 7.5 에서 Start하는 절차를 설명한 것입니다. S/4 HANA를 시작하는 순서는 OS가 부팅을 하고 Database가 시작한 이후에 S/4 HANA의 Application이 시작합니다.

1)OS Boot는 Linux Operation System 이 Start를 가장 먼저 시작하게 됩니다. Linux에는 SUSE Linux Enterprise Server 와 Red Hat Enterprise Linux 를 지원합니다. OS에서 부팅을 하게 되면 가장 먼저 OS의 /etc/init.d/ 아래에 존재하는 sapinit 이란 스크립트가 시작하게됩니다.

2)Database Start는 HANA DB 가 시작하는 것으로 <SID>adm 사용자로 로그인하여 “HDB Start” 명령어를 수행하여 Database를 시작합니다.

3)SAP Start는 SAP ERP 6.0 과 SAP S/4 HANA의 Application이 시작합니다. <SID>adm 사용자로 로그인하여 “startsap” 명령어를 수행하여 S/4 HANA Application을 시작합니다.

  1. SAP S/4 HANA의 Start하는 절차를 좀더 구체적으로 설명하겠습니다. OS를 이미 시작되었다고 가정한 이후에 대한 설명입니다.아래 그림에 대한 설명은 가장 먼저 Database가 시작하고 S/4 HANA의 Application이 시작하는 순서를 설명한 내용입니다.

HANA DB 가 첫 번째로 시작하고 SAP ASCS(ABAP System Central Services)가 두 번째로 시작합니다.그리고 마지막 세 번째로 Application 인 S/4 HANA가 시작합니다.

1) Database Server 는 HANA DB 가 시작합니다.(Oracle 12c등 Database가 시작)

2)ASCS는 Message Server와 Enqueue Server가 시작합니다.

3)Application Server는 ABAP Dispatcher와 Dialog Work Process가 시작합니다.

  1. S/4 HANA의 Start하는데 각 단계에 어떠한 명령어를 수행해야 서비스가 시작하는지 설명하는 내용입니다. 이 것은 S/4 HANA의 Application이 존재하는 서버에서 구체적인 사항을 설명하는 내용입니다.즉, 앞의 그림의 Application Server에 해당하는 것을 구체적을 설명한 내용입니다.

OS단계에서 명령어를 수행하면 SAP관련된 서비스가 시작하거나 중지되는 경우를 설명하는 내용입니다.

1)OS에서 sapinit 스크립트가 시작하는 단계입니다.

Linux OS에서 구동(Booting)하게 되면 자동으로 sapinit script가 수행되어 sapstartsrv process가 구동하게 됩니다. OS가 시작하면 자동으로 수행되는 것으로 사용자는 별로로 해야 할 것은 없습니다. 그러나 sapinit 스크립트를 강제로 Stop하기 위해서는 root 사용자로 sapinit stop 명령어를 수행하여 sapinit 스크립트를 중지할 수 잇습니다.

2)sapstartsrv 프로세스를 시작하는 단계입니다.

sapstartsrv process는 OS가 시작하면 자동으로 시작하는 것으로 Linux OS가 시작하면 startsrv process가 시작되어 있는 것을 확인 할 수 있습니다. 명령어 ps –ef | grep sapstarupsrv 로 프로세스가 시작되었는지 확인 할 수 있습니다.그리고 사용자가 강제로 Stop할수 있는데 사용자 <SID>adm 으로 로그인 하여 “stopsap sapstartsrv” 명령어를 수행하면 sapstartsrv process를 중지 할 수 있습니다.

3)S/4 HANA 의 Application을 시작하는 단계입니다. SAP ERP가 시작하는 것으로 사용자 <SID>adm 으로 로그인 하여 “startsap R3” 명령어를 수행하면 S/4 HANA의 Application이 시작합니다. 중지 할때는 <SID>adm 으로 로그인 하여 “stopsap R3” 수행합니다. Startsap R3를 수행하면 Message Server와 Enqueue Server가 시작합니다. 그리고 ABAP Dispatcher, Dialog Work Process, Gateway Server가 시작합니다.

  1. SAP System이 시작할 때 환경 파일을 참고하여 SAP S/4 HANA가 시작하게 됩니다. 일반적인 S/W인 Application 은 모두 같은 방식으로 환경변수 및 환경파일을 구성하여 S/W를 사용하고 있습니다. S/4 HANA가 어떤 파일을 읽어서 Application을 Start하는지 알고 있으면 S/4 HANA가 Start가 안되었을 때 문제점을 찾을 수 있습니다.

1)OS가 Start하면 sapinit script가 기동하게 되는데 여기에서는 sapservices 파일을 읽어서 환경을 구성합니다. sapservices파일은 /usr/sap아래에 존재합니다.

2)sapstartsrv process가 Start할때는 ACSS의 Instance Profile을 읽어서 Start합니다.

SID_<Instance><Instance Number>_<hostname> 으로 구성되어 있습니다.

예)HVH_ACSC01_heva

3)sapstart R3 명령어를 수행하면 S/4 HANA의 Application이 시작합니다. S/4 HANA의 Application이 시작하면 Default Profile과 PAS Instance Profile을 읽어서 Start합니다.

Default Profile : DEFAULT.PFL

PAS Instance Profile : SID_<Instance><Instance Number>_<hostname> 으로 구성

예)HVH_D00_heva

  1. SAP ERP 6.0 System이 Start할 때 Profile을 참고하는 것은 나타내는 그림입니다.SAP ERP 6.0이 Database로 Oracle을 사용하면 아래 그림에 일치합니다. 그러나 S/4 HANA인 경우에 차이점은 S/4 HANA는 HANA DB를 사용하기 때문에 HANA DB는 별도를 Start해줘야 하는 것입니다.

1)sapstartsrv는 ASCS Instance Profile을 읽어서 Start합니다.

2)sapcpe는 Global Directory에 있는 exe파일을 Instance Directory에 Copy합니다.

3)PAS가 DB와 같은 Computer에 있을때는 DB를 Start합니다.

4)ASCS , PAS, AAS Instance 시작할때는 Default Profile과 Instance Profile을 읽어서 Start합니다.

  1. Linux에서 SAP System이 Start하는 절차를 설명한 그림입니다. 이것은 SAP S/4 HANA의 Start하는 순서를 각 Profile을 Start Script에 대한 것을 복잡하게 설명한 그림입니다.

1)OS가 Boot하면 sapinit script가 Start합니다.

2)sapinit script는 sapstartsrv를 Start합니다.

3)sapstart 명령어는 sapstartsrv가 시작되어야 sapstart 명령어를 수행할 수 있습니다.

4)startsap 명령어로 disp+work, message server(msg_server), Gateway server(gwrd), ICM(icman) process를 시작합니다

  1. SAP S/4 HANA에 해당되는 SAP ABAP System의 구조(Architecture)에 대해서 먼저 설명을 하겠습니다. S/4 HANA는 NetWeaver 7.5 ABAP Stack을 기반으로 구성되어 있습니다.

SAP Basis -> SAP NetWeaver(AS ABAP)으로 진화하였습니다.

즉 SAP S/4 HANA는 SAP AS ABAP System(SAP Application Server ABAP System)입니다.

1)Central System은 1대의 H/W에 ABAP PAS(Primary Application Server) + Database Server로 구성되어 있습니다. 즉, 물리적인 서버 1대에 S/4 HANA와 HANA DB가 같이 설치되어 있는 구성입니다. 그래서 1 BOX의 서버의 CPU, Memory를 공유해서 사용한 구성입니다.

2)Distributed System은 각각 서버를 분리하여 구성한 구성입니다. 1대의 H/W에 Database Server가 설치되어 있고, 다른 1대에서는 ASCS(ABAP System Central Services)가 설치 되어 있습니다. 다른 1대에는 ABAP PAS(Primary Application Server)가 설치 되어 있고, 나머지 1대에는 ABAP AAS(Additional Application Server)가 설치되어 있습니다.

  1. SAP System에서 ABAP Central System의 Start하는 순서를 설명하겠습니다. Central System의 가장 큰 특징은 1대의 H/W에 Database와 SAP System이 같이 존재한다는 것입니다.이와 같은 구성은 개발 System(DEV System)이나 검증 System(QAS System)을 구성할때 사용하고 있습니다. 즉 1 BOX의 CPU와 메모리, 디스크 자원을 공유해서 사용하는 구조입니다.

1)사용자가 <SID>adm으로 로그인 합니다. startsap 명령어를 수행합니다.

2)startsap 명령어를 수행하면 Database가 시작하고 있지 않으면 Database를 Start합니다. 여기에서 HANA DB인 경우에는 HANA DB의 사용자 <SID>adm로 로그인 하여 HDB start 명령어를 수행해야 합니다. 만약 오라클인 경우 DB가 자동으로 Start됩니다.

3)ASCS에 해당되는 Message Server와 Enqueue Server가 Start합니다.

4)ABAP Dispatcher와 Dialog Work Process, Gateway Process, ICM Process가 Start합니다.

여기까지 사용자는 startsap 명령어 한번만 수행하여 DB(오라클인경우)와 SAP Application을 Start하는 방법을 설명하였습니다.

  1. SAP 분배(Distributed) System에 대해서 설명하겠습니다. 분배(Distributed) System은 여러대의 서버에 각각의 SAP Application을 설치하는 구성입니다. 1대의 서버에 Database Server를 설치하고 다른 한대에는 ABAP ASCS Instance를 설치하고 ABAP PAS Instance도 다른 별도의 서버에 설치하는 구성입니다.

1)DB사용자인 <SID>adm으로 로그인하여 HDB start 명령어를 수행합니다. 그러면 sapstartsrv가 Start되어 있지 않으면 sapstartsrv를 Start하고 HANA DB를 Start합니다.

2)root로 로그인하여 sapcontrol –function start 명령어를 수행하면 ASCS, PAS, AAS의 모든 Instance가 동시에 Start 하게 됩니다. 순서에는 조금 차이는 있지만 sapcontrol 명령어를 사용하면 각각의 Server에 로그인 하지 않고 하나의 명령어로 ASCS, ABAP PAS, ABAP AAS의 SAP System이 Start하게 됩니다.

 

안녕하세요. 사이트를 방문해주셔서 감사합니다.

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다