今回はAlmaLinuxにSAP NetWeaver AS ABAPをインストールする手順の紹介が主です。
SAP自動化については次回から詳しく述べていきます。
SAPとその自動化ツール
自動化を考える上で、その対象としてERPを操作することが多いです。
ERPは「Enterprise Resource Planning」の略で、組織が多様化したビジネスプロセスを統合できるように「統合プラットフォーム」を提供するアプリケーションです。
そのERPのシェアで一番高いのはドイツSAP SE社のERPである「SAP ECC | SAPS/4 HANA」です。
SAPは「Systems, Applications, and Products」の略で、グローバル市場で最も主要なERPビジネスアプリケーションとして知られており、各RPAベンダーもSAP向けに個別の機能を提供しています。
https://www.uipath.com/ja/solution/sap-gui
https://www.blueprism.com/japan/products/blue-prism-accelerators-for-use-with-sap-erp/
実はSAP社自体もRPAのような自動化ツール「SAP Process Automation」を持っており、自動化のツール選択で悩むところです。
https://www.sap.com/japan/products/process-automation.html
ではハイパーオートメーションの観点ではどのツールを使うのがよいかなどを述べていきたいと思いますが、まずはSAP検証環境を準備したいと思います。
SAP NetWeaver AS ABAP Developer Edition 7.52 SP04 on AlmaLinux 8
SAP NetWeaver Application Serverをインストールします。
SAP NetWeaver Application Serverは主な目的としてはSAPで使われている「ABAP」という言語の開発環境のサーバー側として使われることが多いです。
また、今回はOSは「AlmaLinux 8」への導入となります。
CentOS 8は、2021年12月31日でサポートが終了しており、RHEL 9のリビルドとしてのCentOS 9をリリースしないことがアナウンスされているため、RHELのダウンストリーム(Downstream)であるAlmaLinuxが今後増えていくと考えているためです。
あくまで検証目的なので、ちょっと実験的に環境構築してみたいと思います。
サーバーインストール準備
AWSのEC2でインスタンスを起動する
今回はAWS環境にて構築したいと思います。まずはAlmaLinux OS 8のイメージを使ってインスタンスを作成します。
必要なハードウェア要件は以下のとおりです。
- x86_64 Processor based hardware
- At least 4 GB RAM plus about 8 GB swap space
- About 100 GB free disk space for server installation (インストール完了段階で約50GBの使用量になります)
ホスト名を変更する
$ sudo hostnamectl set-hostname primesap
$ sudo vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.31.33.73 primesap
SELinuxを非強制にする
$ sudo vi /etc/selinux/config
#SELINUX=enforcing
SELINUX=permissive
$ sudo /sbin/reboot
必要なパッケージを導入する
$ sudo dnf -y install wget csh libnsl libaio
$ wget https://forensics.cert.org/centos/cert/8/x86_64/unrar-5.4.0-1.el8.x86_64.rpm
$ sudo rpm -ivh unrar-5.4.0-1.el8.x86_64.rpm
インストール資材を転送する
SCP/SFTPなどで圧縮・分割されているインストール資材をサーバーに転送します。
$ ls -al
total 14248664
drwxrwxr-x. 3 ec2-user ec2-user 4096 May 31 01:50 .
drwx------. 4 ec2-user ec2-user 152 May 30 14:32 ..
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 30 14:59 TD752SP04part01.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 30 15:12 TD752SP04part02.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 30 16:04 TD752SP04part03.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 30 15:26 TD752SP04part04.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 30 15:39 TD752SP04part05.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 30 15:52 TD752SP04part06.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 31 01:11 TD752SP04part07.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 31 01:24 TD752SP04part08.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 31 01:38 TD752SP04part09.rar
-rw-rw-r--. 1 ec2-user ec2-user 1450000000 May 31 01:50 TD752SP04part10.rar
-rw-rw-r--. 1 ec2-user ec2-user 90622541 May 31 01:51 TD752SP04part11.rar
転送が完了したらunrarコマンドで展開します。
$ unrar x '*.rar'
UNRAR 5.40 freeware Copyright (c) 1993-2016 Alexander Roshal
Extracting from TD752SP04part01.rar
Extracting readme.html OK
Creating server OK
Creating server/TAR OK
Creating server/TAR/x86_64 OK
(略)
Extracting client/JavaGUI/PlatinManual750_5-80002496.ZIP OK
Extracting client/JavaGUI/PlatinGUI750_5-80002496.JAR OK
All OK
インストーラーのシェルのパーミッションを変更します。
$ chmod 755 install.sh
SYBASEライセンスファイルを更新する
実は初期インストール資材に入っているSYBASEライセンスファイルは有効期限が切れているため、新しいライセンスファイルが追加でアップされています。
これをダウンロードして展開し、所定のフォルダ(server/TAR/x86_64)に配置することで、インストール時に自動的にライセンスファイルが置き換えられます。
$ ls
client install.sh SAP_COMMUNITY_DEVELOPER_License TD752SP04part01.rar TD752SP04part03.rar TD752SP04part05.rar TD752SP04part07.rar TD752SP04part09.rar TD752SP04part11.rar
img readme.html server TD752SP04part02.rar TD752SP04part04.rar TD752SP04part06.rar TD752SP04part08.rar TD752SP04part10.rar
$ unrar x License.rar
UNRAR 5.40 freeware Copyright (c) 1993-2016 Alexander Roshal
Extracting from License.rar
Creating License OK
Extracting License/info.txt OK
Creating License/SYBASE_ASE_TestDrive OK
Extracting License/SYBASE_ASE_TestDrive/SYBASE_ASE_TestDrive.lic OK
All OK
$ cp License/SYBASE_ASE_TestDrive/SYBASE_ASE_TestDrive.lic /home/ec2-user/sapimage/server/TAR/x86_64
サーバーインストール実行
インストールを実行する
最初に「almalinuxはテストされていません」と出ますが、今回はそのままyesでインストールを進めます。
$ sudo ./install.sh
Hostname primesap assumed to be SAP compliant
Your distribution 'almalinux' was not tested. Do you want to continue? y
You have chosen to continue with install in non tested distribution
and we encourage you to share your experience with the SAP community
Error: /sbin/uuidd: not executable file
Do you want to continue regardless of the missing dependencies? yes/no: y
#============================================
#
# Installing SAP Developer Edition
#
#============================================
You are about to install the SAP Developer Edition
Please make sure you have carefully read and understood the documentation
To install this TestDrive you have to accept
the SAP COMMUNITY DEVELOPER License (DEV).
SAP DEVELOPER CENTER
MASTER SOFTWARE DEVELOPER LICENSE AGREEMENT
Please scroll down and read the following SAP Developer Center Software Developer License Agre
ement (?Developer Agreement?) carefully. By clicking ?I Accept? or by attempting to access or
use the SAP Software, You agree that this Developer Agreement forms a legally binding agreemen
t between You (?You? or ?Your?) and SAP AG, for and on behalf of itself and its subsidiaries a
nd affiliates (as defined in Section 15 of the German Stock Corporation Act) (?SAP?) and You a
gree to be bound by all of the terms and conditions stated in this Developer Agreement. If You
are trying to access or download the SAP Software on behalf of Your employer or as a consulta
nt or agent of a third party (either "Your Company"), You represent and warrant that You have
the authority to act on behalf of and bind Your Company to the terms of this Developer Agreeme
nt and everywhere in this Developer Agreement that refers to ?You? or ?Your? shall also includ
e Your Company. If You do not agree to these terms, do not click "I Accept", and do not access
or use the SAP Software.
Do you agree to the above license terms? yes/no:y
Now we need the passwords for the OS users.
Please enter a password which will be used
for all operating system users.
Please enter a password:(任意のパスワード)
Please re-enter password for verification:(任意のパスワード)
Now we begin with the installation.
Be patient, this will take a while ...
extracting data archives...
extracting /home/ec2-user/sapimage/server/TAR/x86_64/dbdata.tgz-*
sybase/NPL/sapdata_1/
(略)
Removed directory /root/.sapinst/primesap/1408.
Configure profiles for 4GB physical memory
Profile /sapmnt/NPL/profile/NPL_D00_primesap: changing PHYS_MEMSIZE from 1536 to 2048
Profile /sapmnt/NPL/profile/NPL_D00_primesap: changing abap/shared_objects_size_MB from 200 to 386
Configuring strong TLS according to SAP Note 510007
Profile /sapmnt/NPL/profile/DEFAULT.PFL: adding ssl/ciphersuites = 135:PFS:HIGH::EC_P256:EC_HIGH
Profile /sapmnt/NPL/profile/DEFAULT.PFL: adding ssl/client_ciphersuites = 150:PFS:HIGH::EC_P256:EC_HIGH
Checking syb Database
Database is running
-------------------------------------------
Starting Startup Agent sapstartsrv
OK
Instance Service on host primesap started
-------------------------------------------
starting SAP Instance ASCS01
Startup-Log is written to /home/npladm/startsap_ASCS01.log
-------------------------------------------
/usr/sap/NPL/ASCS01/exe/sapcontrol -prot NI_HTTP -nr 01 -function Start
Instance on host primesap started
Starting Startup Agent sapstartsrv
OK
Instance Service on host primesap started
-------------------------------------------
starting SAP Instance D00
Startup-Log is written to /home/npladm/startsap_D00.log
-------------------------------------------
/usr/sap/NPL/D00/exe/sapcontrol -prot NI_HTTP -nr 00 -function Start
Instance on host primesap started
Installation of NPL successful
おおよそ20分程度でインストールが完了します。
停止確認を行う
正常停止できるか確認する。SAPサービスの起動停止はインストール時に作成されるnpladmユーザーを利用して実施します。
$ sudo su - npladm
Last login: Tue May 31 15:11:40 UTC 2022 on pts/0
primesap:npladm 2> stopsap all
Checking syb Database
Database is running
-------------------------------------------
stopping the SAP instance D00
Shutdown-Log is written to /home/npladm/stopsap_D00.log
-------------------------------------------
/usr/sap/NPL/D00/exe/sapcontrol -prot NI_HTTP -nr 00 -function Stop
Instance on host primesap stopped
Waiting for cleanup of resources
..........
stopping the SAP instance ASCS01
Shutdown-Log is written to /home/npladm/stopsap_ASCS01.log
-------------------------------------------
/usr/sap/NPL/ASCS01/exe/sapcontrol -prot NI_HTTP -nr 01 -function Stop
Instance on host primesap stopped
Waiting for cleanup of resources
..
stopping database NPL ...
stop database completed successfully
Checking syb Database
Database is not available via R3trans
-------------------------------------------
primesap:npladm 3> exit
logout
起動確認をする
一度サーバーを再起動させます。
$ sudo /sbin/reboot
npladmユーザーになり、「startsap all」でSAPが正常起動するか確認します。
$ sudo su - npladm
Last login: Tue May 31 15:17:05 UTC 2022 on pts/0
primesap:npladm 4> startsap all
Checking syb Database
Database is not available via R3trans
-------------------------------------------
starting database NPL ...
Log file: /sybase/NPL/startdb.log
parse level 0: identified message 'Database 'master' is now online.'
parse level 1: identified message 'Database 'tempdb' is now online.'
parse level 2: identified message 'Database 'sybsystemprocs' is now online.'
parse level 3: identified message 'Recovery complete.'
Recovery Complete
startdb completed successfully
Starting Startup Agent sapstartsrv
OK
Instance Service on host primesap started
-------------------------------------------
starting SAP Instance ASCS01
Startup-Log is written to /home/npladm/startsap_ASCS01.log
-------------------------------------------
/usr/sap/NPL/ASCS01/exe/sapcontrol -prot NI_HTTP -nr 01 -function Start
Instance on host primesap started
Starting Startup Agent sapstartsrv
OK
Instance Service on host primesap started
-------------------------------------------
starting SAP Instance D00
Startup-Log is written to /home/npladm/startsap_D00.log
-------------------------------------------
/usr/sap/NPL/D00/exe/sapcontrol -prot NI_HTTP -nr 00 -function Start
Instance on host primesap started
自動生成されるユーザー一覧
インストール時に以下のSAPユーザーが作成されます(OSユーザーではありません)。
username | client(s) | password | description |
---|---|---|---|
DEVELOPER | 001 | Down1oad | Developer User |
BWDEVELOPER | 001 | Down1oad | Developer User |
DDIC | 000/001 | Down1oad | Data Dictionary User |
SAP* | 000/001 | Down1oad | SAP Administrator |
クライアントインストール
インストール資材の「50144807_6\BD_NW_7.0_Presentation_7.50_Comp.2\PRES1\GUI\WINDOWS\Win32」にあるSAPGUIインストーラー「SetupAll.exe」を実行します。
起動するとインストールオプションの選択画面になるので、今回は「SAP GUI for Windows 7.50 (Compilation 2)」を選択します。
インストール先フォルダを選択します(デフォルトで問題ありません)。
インストールが完了するまで待ちます。(約2分程度かかります)
SAPサーバーについて名前解決ができるようにhostsファイルに追記します。
スタートメニューから「SAP Logon」を選択します。
初期は何も接続情報がないため「新規アイテム」を選択します。
そのまま「次画面」を選択します。
「アプリケーションサーバ」「インスタンス番号」「システムID」を入力し「次画面」を選択します。
作成したアイテムを選択します。
インストール時に自動作成されたSAPユーザーを利用してログインを実行します。
正常にMenu画面が表示されたら、接続完了です。
次回に向けて
無事、AlmaLinux8環境にSAP NetWeaver AS ABAPをインストールすることができました。では、次回はこの環境を利用して、SAPの自動化を実際にやってみたいと思います。