Commit 20aeaaa7 authored by 智勇's avatar 智勇

并发

parent 6719f903
...@@ -41,6 +41,18 @@ work_dir=/home/qa-deploy-utils/db-utils ...@@ -41,6 +41,18 @@ work_dir=/home/qa-deploy-utils/db-utils
sync_config_folder=~/db_sync_configs sync_config_folder=~/db_sync_configs
db_backup_folder=~/db_backups db_backup_folder=~/db_backups
trap "exec 1000>&-;exec 1000<&-;exit 0" 2
tempfifo=$$.fifo
echo "mkfifo /tmp/$tempfifo"
mkfifo /tmp/$tempfifo
exec 1000<>/tmp/$tempfifo
rm -rf /tmp/$tempfifo
for ((i=1; i<=2; i++))
do
echo >&1000
done
function valid_ip() function valid_ip()
{ {
local ip=$1 local ip=$1
...@@ -121,11 +133,16 @@ fi ...@@ -121,11 +133,16 @@ fi
echo "database_list:${database_list}" echo "database_list:${database_list}"
for db_name in $database_list for db_name in $database_list
do do
echo "----------------------------------------------------" read -u1000
echo "--- start sync $db_name ---" {
db_schema_sync $db_name echo "----------------------------------------------------"
run_sql_file $db_name echo "--- start sync $db_name ---"
echo "--- end sync $db_name ---" db_schema_sync $db_name
run_sql_file $db_name
echo "--- end sync $db_name ---"
echo >&1000
}&
done done
wait
echo "----------------------------------------------------" echo "----------------------------------------------------"
...@@ -43,97 +43,97 @@ echo "并发生成3个环境的配置文件,预计执行时间一分钟左右 ...@@ -43,97 +43,97 @@ echo "并发生成3个环境的配置文件,预计执行时间一分钟左右
#for ip_last_num in '15' #for ip_last_num in '15'
for ip_last_num in ${ips[@]} for ip_last_num in ${ips[@]}
do do
read -u1000 read -u1000
{ {
echo "`date +%T.%N` 开始生成 ${IP_host_first}${ip_last_num}" echo "`date +%T.%N` 开始生成 ${IP_host_first}${ip_last_num}"
cd /home/sub_config_file_dont_rm cd /home/sub_config_file_dont_rm
#不能直接RM 整个文件,会造成mount失效 #不能直接RM 整个文件,会造成mount失效
#rm -rf ${IP_host_first}${ip_last_num} #rm -rf ${IP_host_first}${ip_last_num}
mkdir -p ${IP_host_first}${ip_last_num} mkdir -p ${IP_host_first}${ip_last_num}
cd ${IP_host_first}${ip_last_num} cd ${IP_host_first}${ip_last_num}
rm -rf java rm -rf java
rm -rf node rm -rf node
rm -rf ui rm -rf ui
rm -rf python rm -rf python
rm -rf public rm -rf public
rm -rf nginx_conf.d rm -rf nginx_conf.d
rm -rf pem_file rm -rf pem_file
dir=`pwd` dir=`pwd`
#java项目发布 #java项目发布
mkdir -p $dir/java mkdir -p $dir/java
mkdir -p $dir/public/java mkdir -p $dir/public/java
cp -rf /home/config_files/java/* $dir/java/ cp -rf /home/config_files/java/* $dir/java/
cp -rf /home/config_files/java/* $dir/public/java/ cp -rf /home/config_files/java/* $dir/public/java/
sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/java/* sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/java/*
sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/public/java/* sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/public/java/*
sed -i "s/target_mq_host_name/${IP_host_first}${ip_last_num}/" $dir/java/* sed -i "s/target_mq_host_name/${IP_host_first}${ip_last_num}/" $dir/java/*
sed -i "s/target_mq_host_name/${IP_host_first}${ip_last_num}/" $dir/public/java/* sed -i "s/target_mq_host_name/${IP_host_first}${ip_last_num}/" $dir/public/java/*
#gu-bei的回调接口都改成外网接口 #gu-bei的回调接口都改成外网接口
#sed -i "s/callback=http:\/\/${IP_host_first}${ip_last_num}:7006/callback=http:\/\/${public_ip}:${ip_last_num}06/g" $dir/java/gu-bei.properties #sed -i "s/callback=http:\/\/${IP_host_first}${ip_last_num}:7006/callback=http:\/\/${public_ip}:${ip_last_num}06/g" $dir/java/gu-bei.properties
#sed -i "s/pay_notify_url=http:\/\/${IP_host_first}${ip_last_num}:7006/pay_notify_url=http:\/\/${public_ip}:${ip_last_num}06/g" $dir/java/gu-bei.properties #sed -i "s/pay_notify_url=http:\/\/${IP_host_first}${ip_last_num}:7006/pay_notify_url=http:\/\/${public_ip}:${ip_last_num}06/g" $dir/java/gu-bei.properties
sed -i "s/ip_last/$ip_last_num/g" $dir/java/* sed -i "s/ip_last/$ip_last_num/g" $dir/java/*
sed -i "s/ip_last/$ip_last_num/g" $dir/public/java/* sed -i "s/ip_last/$ip_last_num/g" $dir/public/java/*
#python项目发布 #python项目发布
mkdir -p $dir/python mkdir -p $dir/python
cp -rf /home/config_files/python/* $dir/python/ cp -rf /home/config_files/python/* $dir/python/
sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/python/* sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/python/*
sed -i "s/ip_last/$ip_last_num/g" $dir/python/* sed -i "s/ip_last/$ip_last_num/g" $dir/python/*
#node项目发布 #node项目发布
mkdir -p $dir/node mkdir -p $dir/node
mkdir -p $dir/public/node mkdir -p $dir/public/node
cp -rf /home/config_files/node/* $dir/node/ cp -rf /home/config_files/node/* $dir/node/
cp -rf /home/config_files/node/* $dir/public/node/ cp -rf /home/config_files/node/* $dir/public/node/
sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/node/* sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/node/*
sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/g" $dir/public/node/* sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/g" $dir/public/node/*
sed -i "s/ip_last/$ip_last_num/g" $dir/node/* sed -i "s/ip_last/$ip_last_num/g" $dir/node/*
sed -i "s/ip_last/$ip_last_num/g" $dir/public/node/* sed -i "s/ip_last/$ip_last_num/g" $dir/public/node/*
#ui配置发布 #ui配置发布
mkdir -p $dir/ui mkdir -p $dir/ui
mkdir -p $dir/public/ui mkdir -p $dir/public/ui
cp -rf /home/config_files/ui/* $dir/ui/ cp -rf /home/config_files/ui/* $dir/ui/
cp -rf /home/config_files/ui/* $dir/public/ui/ cp -rf /home/config_files/ui/* $dir/public/ui/
sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/g" $dir/ui/* sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/g" $dir/ui/*
sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/g" $dir/public/ui/* sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/g" $dir/public/ui/*
#if [ $ip_last_num -lt 100 ]; then #if [ $ip_last_num -lt 100 ]; then
# sed -i "s/target_host_name:7/${public_ip}:${ip_last_num}/g" $dir/public/ui/* # sed -i "s/target_host_name:7/${public_ip}:${ip_last_num}/g" $dir/public/ui/*
#else #else
#fi #fi
sed -i "s/ip_last/$ip_last_num/g" $dir/public/ui/* sed -i "s/ip_last/$ip_last_num/g" $dir/public/ui/*
sed -i "s/ip_last/$ip_last_num/g" $dir/ui/* sed -i "s/ip_last/$ip_last_num/g" $dir/ui/*
#替换公网 #替换公网
for multi in ${multis[@]} for multi in ${multis[@]}
do do
{ {
pro=`echo $multi | awk -F '|' '{print $1}'` pro=`echo $multi | awk -F '|' '{print $1}'`
port=`echo $multi | awk -F '|' '{print $2}'` port=`echo $multi | awk -F '|' '{print $2}'`
#find $dir/public/ -type f -print | xargs -i sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" {} #find $dir/public/ -type f -print | xargs -i sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" {}
#echo "sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" $dir/public/*" #echo "sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" $dir/public/*"
sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" $dir/public/java/* sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" $dir/public/java/*
sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" $dir/public/node/* sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" $dir/public/node/*
sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" $dir/public/ui/* sed -i "s/${IP_host_first}${ip_last_num}:$port/${pro}-${ip_last_num}.${public_ip}/g" $dir/public/ui/*
} }
done done
#find $dir/public/ -type f -print | xargs -i sed -i "s/${IP_host_first}${ip_last_num}/www.${public_ip}/g" {} #find $dir/public/ -type f -print | xargs -i sed -i "s/${IP_host_first}${ip_last_num}/www.${public_ip}/g" {}
#ngxin conf.d发布 #ngxin conf.d发布
mkdir -p $dir/nginx_conf.d mkdir -p $dir/nginx_conf.d
cp -rf /home/config_files/nginx_conf.d/* $dir/nginx_conf.d/ cp -rf /home/config_files/nginx_conf.d/* $dir/nginx_conf.d/
#baitiao pem发布 #baitiao pem发布
mkdir -p $dir/pem_file mkdir -p $dir/pem_file
cp -rf /home/config_files/pem_file/* $dir/pem_file/ cp -rf /home/config_files/pem_file/* $dir/pem_file/
# sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/nginx_conf.d/* # sed -i "s/target_host_name/${IP_host_first}${ip_last_num}/" $dir/nginx_conf.d/*
echo "`date +%T.%N` 结束 ${IP_host_first}${ip_last_num}" echo "`date +%T.%N` 结束 ${IP_host_first}${ip_last_num}"
echo "---------" echo "---------"
echo >&1000 echo >&1000
}& }&
done done
wait wait
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment