CORBAアプリケーションを配備したDockerイメージの作成の流れを以下に示します。
Dockerイメージの作成環境で以下の手順に従い、CORBAアプリケーション配備済みDockerイメージを作成します。
Interstage資源の用意
本番開発環境から移出したInterstage資源をDockerイメージ作成環境のディレクトリ"/docker/backup/"にコピーしてください。また、CORBAアプリケーションを"/docker/app/"にコピーしてください。
注意
Red Hat OpenShift上(プロダクション環境)に新規にCORBAサービス実行環境を作成する場合、本番開発環境にプロダクション環境と同じ構成のCORBAサービス実行環境を作成し、Interstage資源を移出してください。
本番開発環境は、オンプレミスやVM、コンテナどれでも可能です。
Interstage資源の移入とIPCパラメーターの設定解除
「5.2.1 CORBAサービスベアイメージの作成」で作成したDockerイメージから、--privilegedオプションを指定しDockerコンテナを作成します。
以下は、docker runコマンドを使用し、イメージ名"corbabareimage:1.0"のベアイメージから、コンテナ名"tmpcorbaapp"のコンテナを作成する場合の例です。
# docker run --privileged --name tmpcorbaapp -di corbabareimage:1.0
「手順1」で用意したInterstage資源を、「手順2-1」で作成したDockerコンテナにコピーします。
アプリケーションが参照していてInterstage資源に含まれていないファイルがある場合は、そのファイルについてもDockerコンテナにコピーしてください。
以下は、ディレクトリ"/docker/backup"にコピーしたInterstage資源とCORBAアプリケーションを格納したディレクトリ"/docker/app/"を、docker cpコマンドを使用してコンテナ名"tmpcorbaapp"のコンテナ内のディレクトリ"/interstage/backup_restore/"にコピーする場合の例です。
# docker exec -it tmpcorbaapp rm -rf /interstage/backup_restore/backup/ # docker cp /docker/backup tmpcorbaapp:/interstage/backup_restore/ # docker cp /docker/app tmpcorbaapp:/interstage/backup_restore/
Interstage資源を移入するためにDockerコンテナのシェルを実行します。
以下は、"tmpcorbaapp"コンテナで"/bin/bash"を実行する場合の例です。
# docker exec -it tmpcorbaapp /bin/bash
Dockerコンテナ内でInterstageを停止します。
/opt/FJSVisas/bin/isservicestop.shコマンドを使うと、すべての機能を停止することができます。
# /opt/FJSVisas/bin/isservicestop.sh
Interstage資源を移入します。
Interstage資源移出元ディレクトリは、chhostname.shのCOMMON_PATHに設定しているディレクトリです。
# COMMON_PATH=/interstage/backup_restore/backup # /opt/FJSVtd/bin/iscrestoresys ${COMMON_PATH} # /opt/FJSVod/bin/odrestoresys ${COMMON_PATH} # /opt/FJSVtd/bin/tdrestoresys ${COMMON_PATH}
イベントサービスを使用している場合は、イベントサービスの移入も実施してください。
# COMMON_PATH=/interstage/backup_restore/backup # /opt/FJSVes/bin/esrestoresys -d ${COMMON_PATH}
移入方法の詳細については、以下を参照してください。
「運用ガイド(基本編)」の「メンテナンス(資源のバックアップ/他サーバへの資源移行/ホスト情報の変更)」-「他サーバへの資源移行」-「資源移入手順」
IPCパラメーターの設定を解除します。
Red Hat OpenShiftのPod に対するIPC パラメーターの設定を有効にするために、/etc/sysctl.confのIPCパラメーターの設定をコメントアウトする必要があります。
以下の例のように、「### for IAPS ###」に続く"kernel."で始まるパラメーターの設定をコメントアウトしてください。
### for IAPS ### #kernel.sem = 1100 35406 200 1600 #kernel.shmall = 4294967296 #kernel.shmmax = 68719476736 #kernel.shmmni = 4315 #kernel.msgmax = 65536 #kernel.msgmnb = 4194304 #kernel.msgmni = 8199
Red Hat OpenShift上でのDockerコンテナ作成時に不要な以下のファイルを削除します。
シスログの出力先、/var/log/messages
「手順2-3」で実行したDockerコンテナのシェルを終了します。
# exit
CORBAアプリケーション配備済みDockerイメージの作成
docker commitコマンドを実行し、「手順2」で作成したDockerコンテナを元に、CORBAアプリケーション配備済みDockerイメージを作成します。
以下は、コンテナ名"tmpcorbaapp"のコンテナを元に、イメージ名"corbaapp:1.0"のCORBAアプリケーション配備済みDockerイメージを作成する場合の例です。
# docker commit tmpcorbaapp corbaapp:1.0
コンテナ名"tmpcorbaapp"のコンテナを停止し、削除します。
# docker stop tmpcorbaapp # docker rm tmpcorbaapp