運用中のCORBAアプリケーションやパラメーターを変更する流れを以下に示します。
以下の手順でCORBAアプリケーション配備済みDockerイメージを再作成し、Red Hat OpenShift上でDockerコンテナを作成します。
本番開発環境でCORBAアプリケーションの再作成やInterstageのパラメーターの変更を行い、Interstage資源を移出します。
「5.2.2 CORBAアプリケーションを配備したDockerイメージの作成」の手順に従い、CORBAアプリケーション配備済みDockerイメージを作成します。
この時、ホスト情報変更用シェルスクリプト(/interstage/backup_restore/chhostname.sh)のOD_PORTをステージング環境用のNodePortに修正します。
「5.2.3 Red Hat OpenShift上でのCORBAアプリケーションの実行」の手順に従い、「手順2」で作成したDockerイメージをRed Hat OpenShift上でステージング環境としてコンテナを実行します。
この時、Red Hat OpenShiftアプリケーションの設定ファイルを編集して、「NodePortタイプのサービス定義」のNodePortの値をステージング環境用に修正します。詳細は、「B.3 CORBAサービス」を参照してください。
ステージング環境の動作が確認できたら、ステージング環境をプロダクション環境として公開します。
以下は、ステージング環境をプロダクション環境として公開する手順の例です。
「手順2」で作成したDockerイメージから、Dockerコンテナを作成し、起動します。
以下は、docker runコマンドを使用し、イメージ名"corbaapp:1.1"のCORBAアプリケーション配備済みDockerイメージから、コンテナ名"tmpcorbaapp"のコンテナを作成する場合の例です。
# docker run --privileged --name tmpcorbaapp -di corbaapp:1.1
Dockerコンテナのシェルを実行します。
以下は、"tmpcorbaapp"コンテナで"/bin/bash"を実行する場合の例です。
# docker exec -it tmpcorbaapp /bin/bash
ホスト情報変更用シェルスクリプト(/interstage/backup_restore/chhostname.sh)のOD_PORTをプロダクション環境用のNodePortに修正し、Dockerコンテナのシェルを終了します。
CORBAサービスのアプリケーション配備済みDockerイメージを作成します。
以下は、コンテナ名"tmpcorbaapp"のコンテナを元に、イメージ名"corbaapp:2.0"のCORBAサービスのアプリケーション配備済みDockerイメージを作成する場合の例です。
# docker commit tmpcorbaapp corbaapp:2.0
コンテナ名"tmpcorbaapp"のコンテナを停止し、削除します。
# docker stop tmpcorbaapp # docker rm tmpcorbaapp
Red Hat OpenShiftからアクセス可能なリポジトリに、「手順4-4」で作成したDockerイメージを登録します。
以下は、ローカルリポジトリ"docker-registry.aps.svc:5000"に、Dockerイメージ"corbaapp:2.0"を"docker-registry.aps.svc:5000/corbaapp:2.0"として登録する例です。
# docker tag corbaapp:2.0 docker-registry.aps.svc:5000/corbaapp:2.0 # docker push docker-registry.aps.svc:5000/corbaapp:2.0
プロダクション環境のデプロイ設定(DeploymentConfig)を編集し、プロダクション環境で使用するDockerイメージを更新します。
以下は、実行中のデプロイ設定(DeploymentConfig)"corbamyapp"のimageを"corbaapp:2.0"として登録する例です。
# oc set triggers deploymentconfigs/corbamyapp --from-image=corbaapp:2.0 -c corbamyapp