1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【SAP】NW AS ABAP Developer Editionで開発環境を作る(2)Cloud Platformとの接続

Last updated at Posted at 2020-11-01

##はじめに
この記事では、DockerコンテナにインストールしたSAP NW AS ABAPをCloud Connectorを使いCloud Platformと接続します。

前回の記事:【SAP】NW AS ABAP Developer Editionで開発環境を作る(1)

##構成
環境はAWSのEC2上のUbuntu(18.04)です。
Cloud ConnectorはNW AS ABAPとは別のコンテナにインストールします。
image.png

##Cloud Connectorのインストール
###概要
インストールの手順は以下のGitHubリポジトリで説明されている通りです。
https://github.com/SAP-samples/cloud-platform-workflow-virtual-event/blob/master/exercises/03/readme.md

ただし、リポジトリにあるDockerfileだとChromeで実行ができないので、プルリクエストにある修正を追加してからDockerイメージを作成してください。

###つまづいたところ
今回はNW AS ABAPとCloud Connectorが別々のコンテナにあるので、Cloud Connectorの設定でちょっとつまづきました。

NW AS ABAPにはUbuntuのブラウザからlocalhost(127.0.0.1)でアクセスできていたので、Internal Hostを127.0.0.1:8000としたところNot Reachableとなってしまいました。
image.png

実際には、ここにはCloud Connectorのコンテナから見てアクセスできるIPアドレスを指定する必要がありました。2つのコンテナはデフォルトのネットワークである"bridge"につながっており、ネットワーク内でそれぞれのコンテナにIPが振られていました。Cloud ConnectorからNW AS ABAPのコンテナにアクセスするには172.17.0.2を指定すればよさそうです。
image.png

コンテナのIPは以下のコマンドで見ることができます。

docker inspect <コンテナ名> 

一番下に"Networs"というセクションがあり、そこのIPAddressを見ます。
image.png

Internal Hostに172.17.0.2を指定したところ、Reachableになりました。ただ、このIPはコンテナの起動順によって変わってしまいそうな気がします。対応として、NW AS ABAP → Cloud Connectorの順に起動するようにします。
image.png

###起動・停止用のシェルを修正
Part1で作成した起動、停止用のシェルにCloud Connectorの起動・停止を追加します。

managesap
#!/bin/bash

start_sap(){
  #start container	
  sudo docker container start nwabap752
  #start sap
  sudo docker exec -it nwabap752 /usr/sbin/uuidd 
  sudo docker exec -it nwabap752 su - npladm -c "startsap ALL"
}	

stop_sap(){
  #stop sap	
  sudo docker exec -it nwabap752 su - npladm -c "stopsap ALL"
  #stop container
  sudo docker container stop nwabap752
}

start_scc(){
  #start scc
  sudo docker container start myscc
}	

stop_scc(){
  #stop scc
  sudo docker container stop myscc
}	

start_env(){
  start_sap
  start_scc
}	

stop_env(){
  stop_scc
  stop_sap
}	

これ以降、SAPとSCCを同時に起動するときはstart_env、停止するときはstop_envを実行します。

##Cloud PlatformのDestination登録
Cloud Platform(CF)にDestinationを登録します。
image.png

Additional Propertiesの内容は以下の通りです。

パラメータ 設定値
HTML5.DynamicDestination true
HTML5.Timeout 60000
sap-client 001
WebIDEEnabled true
WebIDESystem NPL
WebIDEUsage odata_abap

Check Connectionを実行すると以下のようにエラーが出ますが、Business Application Studioから接続できていれば問題ありません。
image.png

##ここまでできたこと

  • ローカルのNW AS ABAPとCloud Platformが接続できるようになりました。
  • Business Application StudioからNW AS ABAPのODataサービスを使用することができます。

次回は、Fioriアプリケーションの開発とデプロイをやってみたいと思います。

##参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?