Dockerコンテナのホスト名を変更するためのホスト情報変更用シェルスクリプト(chhostname.sh)の記述例を以下に記載します。
赤字の部分は環境に合わせて修正してください。
イベントサービスを使用する場合は、esbackupsys、esrestoresysの行のコメントアウト"#"を解除してください。
#!/bin/sh DIR=`dirname $0` CONTAINER_HOST=`/usr/bin/hostname` MASTER_HOST="mwocp39master" cp -p /etc/hosts /etc/hosts.bak sed -e "s/${CONTAINER_HOST}/${CONTAINER_HOST} ${MASTER_HOST}/g" /etc/hosts.bak > /etc/hosts OD_PORT="31563" COMMON_PATH=${DIR}/backup /usr/bin/date > ${DIR}/chhostname.log 2>&1 if [ ! -d ${COMMON_PATH} ] ; then mkdir -p ${COMMON_PATH} /opt/FJSVtd/bin/iscbackupsys ${COMMON_PATH} >> ${DIR}/chhostname.log 2>&1 /opt/FJSVod/bin/odbackupsys ${COMMON_PATH} >> ${DIR}/chhostname.log 2>&1 /opt/FJSVtd/bin/tdbackupsys ${COMMON_PATH} >> ${DIR}/chhostname.log 2>&1 # /opt/FJSVes/bin/esbackupsys -d ${COMMON_PATH} >> ${DIR}/chhostname.log 2>&1 fi if [ $? -eq 0 ] ; then /opt/FJSVtd/bin/iscrestoresys ${COMMON_PATH} >> ${DIR}/chhostname.log 2>&1 /opt/FJSVod/bin/odrestoresys -h ${MASTER_HOST} -p ${OD_PORT} ${COMMON_PATH} >> ${DIR}/chhostname.log 2>&1 /opt/FJSVtd/bin/tdrestoresys ${COMMON_PATH} >> ${DIR}/chhostname.log 2>&1 # /opt/FJSVes/bin/esrestoresys -d ${COMMON_PATH} >> ${DIR}/chhostname.log 2>&1 /opt/FJSVod/bin/OD_set_env -n ${MASTER_HOST} >> ${DIR}/chhostname.log 2>&1 exit 0 else exit 1 fi
注意
MASTER_HOSTのホスト名にはRed Hat OpenShiftのマスター環境のホスト名を設定し、CORBAクライアント側で名前解決できるようにしてください。
以下は、Linux環境でhostsファイルを修正してホスト名"mwocp39master"をIPアドレス"203.0.113.2"で名前解決するときの設定例です。
# cat /etc/hosts 203.0.113.2 mwocp39master
OD_PORTにはRed Hat OpenShiftのサービスに設定するNodePortと同じポートを設定してください。NodePortはDockerイメージを作成する前にRed Hat OpenShiftで採番しておく必要があります。