大家前期可能在部署时使用测试域名或者使用的是IP地址,为了方便大家进行域名替换,写了如下脚本.使用过程中注意,如有使用访问IP与内部IP一样的,该脚本可能导致异常
#!/bin/bash####################################### author:Daoge# description: 为opsany替换域名# version: v1.1#######################################设置旧域名OLD_DOMAIN_NAME=""#设置新域名NEW_DOMAIN_NAME=""if [ -z "${OLD_DOMAIN_NAME}" -o -z "${NEW_DOMAIN_NAME}" ];thenecho "Please enter domain name"exit 1fiSHELL_NAME=$(basename $0)SHELL_LOG=${SHELL_NAME}.logshell_log(){info="$1"CTIME=$(date '+%F %T')echo "============[${CTIME}] ${info}================="echo "[${CTIME}] ${info}" >> ${SHELL_LOG}}# 引入安装环境变量cd /opt/opsany-paas/installgrep '^[A-Z]' install.config > install.envsource ./install.env && rm -f install.envshell_log "Replace PaaS config files"# 替换默认安装文件中的配置sed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/cmdb/toolkit/configs.pysed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/control/toolkit/configs.pysed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/rbac/toolkit/configs.pysed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/task/toolkit/configs.pysed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/workbench/toolkit/configs.pysed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/monitor/toolkit/configs.pysed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/cmp/toolkit/configs.pysed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/devops/toolkit/configs.pysed -i "s/${OLD_DOMAIN_NAME}/${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/esb/apis/bastion/toolkit/configs.py# 替换环境配置文件sed -i -e "s|\(PAAS_DOMAIN = '\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" \-e "s|\(BK_COOKIE_DOMAIN = '\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" \${INSTALL_PATH}/conf/settings_production.py.paassed -i "s|\(BK_COOKIE_DOMAIN = '\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/conf/settings_production.py.login# 替换nginx配置文件echo "替换nginx域名,替换后如无法访问,请自行检查nginx配置"sed -i "s/server_name.*${OLD_DOMAIN_NAME}/server_name ${NEW_DOMAIN_NAME}/g" ${INSTALL_PATH}/conf/nginx-conf.d/nginx_paas.confshell_log "Replace SaaS config files"# 替换已经安装的saas服务域名(可采用重新部署)sed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/rbac/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/workbench/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/cmdb/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/control/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/job/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/cmp/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/devops/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/monitor/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/bastion/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/pipeline/conf/supervisord.confsed -i "s|\(BK_PAAS_HOST=\"https://\)${OLD_DOMAIN_NAME}|\1${NEW_DOMAIN_NAME}|g" ${INSTALL_PATH}/saas/apps/projects/deploy/conf/supervisord.conf#重启Paasdocker ps -q | xargs docker restart#重启Saascd /opt/opsany-paas/install./saas-restart.sh
