Browse Source

07env-install-centos.sh

master
lizw 3 years ago
parent
commit
27f6e9b3ed
  1. 148
      00base/07env-install-centos.sh
  2. 0
      05shengke/03xxljob.groovy

148
00base/07env-install-centos.sh

@ -41,6 +41,10 @@ JENKINS_FILE_NAME="jenkins.war"
JENKINS_JAVA_URL="https://d6.injdk.cn/oraclejdk/11/jdk-11.0.16.1_linux-x64_bin.tar.gz" JENKINS_JAVA_URL="https://d6.injdk.cn/oraclejdk/11/jdk-11.0.16.1_linux-x64_bin.tar.gz"
JENKINS_JAVA_FILE_NAME="jdk-11.0.16.1_linux-x64_bin.tar.gz" JENKINS_JAVA_FILE_NAME="jdk-11.0.16.1_linux-x64_bin.tar.gz"
JENKINS_JAVA_DIR_NAME="jdk-11.0.16.1" JENKINS_JAVA_DIR_NAME="jdk-11.0.16.1"
#--- redis Latest Stable
REDIS_URL="https://download.redis.io/redis-stable.tar.gz"
REDIS_FILE_NAME="redis-stable.tar.gz"
REDIS_DIR_NAME="redis-stable"
# 安装标识 # 安装标识
#--- SSH用户 #--- SSH用户
@ -68,6 +72,7 @@ JAVA_TAG="1"
GRADLE_TAG="1" GRADLE_TAG="1"
MAVEN_TAG="1" MAVEN_TAG="1"
JENKINS_TAG="1" JENKINS_TAG="1"
REDIS_TAG="1"
# 脚本设置 # 脚本设置
TMP_DIR="$(rm -rf /tmp/env-install* && mktemp -d -t env-install.XXXXXXXXXX)" TMP_DIR="$(rm -rf /tmp/env-install* && mktemp -d -t env-install.XXXXXXXXXX)"
@ -550,6 +555,141 @@ EOF
log::info "[jenkins]" "停止jenkins: ${BASE_DIR}/jenkins/kill.sh" log::info "[jenkins]" "停止jenkins: ${BASE_DIR}/jenkins/kill.sh"
} }
# 安装redis环境
function init:redis() {
log::info "[redis]" "安装redis环境..."
local host="127.0.0.1"
local redis_path="${BASE_DIR}/redis/${REDIS_DIR_NAME}"
local redis_install_path="${BASE_DIR}/redis/${REDIS_DIR_NAME}-install"
command::exec "${host}" "
if [ ! -d "$redis_path" ]; then
mkdir -p ${BASE_DIR}/redis
wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate ${REDIS_URL} -O ${BASE_DIR}/redis/${REDIS_FILE_NAME}
cd ${BASE_DIR}/redis
tar -zxvf ${REDIS_FILE_NAME}
cd $redis_path
yum -y install gcc
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
echo 'source /opt/rh/devtoolset-9/enable' >> /etc/profile
gcc -v
cd $redis_path
make install PREFIX=$redis_install_path
# 写文件start.sh文件
cat << EOF > $redis_install_path/redis.conf
# bind 127.0.0.1
protected-mode yes
port 6379
tcp-backlog 511
timeout 300
tcp-keepalive 300
daemonize yes
supervised auto
pidfile $redis_install_path/redis.pid
loglevel notice
logfile $redis_install_path/redis.log
databases 16
always-show-logo yes
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
rdb-del-sync-files no
dir $redis_install_path/
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-diskless-load disabled
repl-disable-tcp-nodelay no
replica-priority 100
acllog-max-len 128
requirepass sk123456
# 限制内存4GB = 4294967296 bytes
maxmemory 4294967296
maxmemory-policy allkeys-lfu
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
lazyfree-lazy-user-del no
oom-score-adj no
oom-score-adj-values 0 200 800
appendonly no
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit replica 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes
jemalloc-bg-thread yes
EOF
cat << EOF > $redis_install_path/start.sh
#!/bin/bash
#set -x
set -e
pid=\\\`ps -ef | grep '$redis_install_path/bin/redis-server' | grep -v 'grep' | awk '{print \\\$2}'\\\`
cd $redis_install_path
if [ -z \\\$pid ];then
$redis_install_path/bin/redis-server $redis_install_path/redis.conf
echo 'redis启动成功!'
else
echo 'redis正在运行...'
fi
echo '查看日志: tail -F $redis_install_path/redis.log -n 100'
EOF
# 写文件kill.sh文件
cat << EOF > $redis_install_path/kill.sh
#!/bin/bash
#set -x
set -e
pid=\\\`ps -ef | grep '$redis_install_path/bin/redis-server' | grep -v 'grep' | awk '{print \\\$2}'\\\`
if [ -z \\\$pid ];then
echo 'redis未运行'
else
ps -ef | grep '$redis_install_path/bin/redis-server' | grep -v 'grep' | awk '{print \\\$2}' | xargs kill
echo 'redis已停止!'
fi
EOF
chmod +x $redis_install_path/start.sh
chmod +x $redis_install_path/kill.sh
fi
"
check::exit_code "$?" "redis" "$host 安装redis环境" "exit"
log::info "[redis]" "redis环境安装成功!"
log::info "[redis]" "启动redis: $redis_install_path/start.sh"
log::info "[redis]" "停止redis: $redis_install_path/kill.sh"
}
###################################################################################################### ######################################################################################################
# 主调用逻辑 # 主调用逻辑
###################################################################################################### ######################################################################################################
@ -578,6 +718,7 @@ Flag:
-gradle 是否安装gradle环境, 默认: '1' -gradle 是否安装gradle环境, 默认: '1'
-maven 是否安装maven环境, 默认: '1' -maven 是否安装maven环境, 默认: '1'
-jenkins 是否安装jenkins环境, 默认: '1' -jenkins 是否安装jenkins环境, 默认: '1'
-redis 是否安装redis环境, 默认: '1'
Example: Example:
env-install-centos.sh init \\ env-install-centos.sh init \\
@ -593,7 +734,8 @@ Example:
-java 1 \\ -java 1 \\
-gradle 0 \\ -gradle 0 \\
-maven 0 \\ -maven 0 \\
-jenkins 0 -jenkins 0 \\
-redis 0 \\
EOF EOF
exit 1 exit 1
@ -649,6 +791,9 @@ while [ "${1:-}" != "" ]; do
-jenkins ) shift -jenkins ) shift
JENKINS_TAG=${1:-JENKINS_TAG} JENKINS_TAG=${1:-JENKINS_TAG}
;; ;;
-redis ) shift
REDIS_TAG=${1:-REDIS_TAG}
;;
* ) help::usage * ) help::usage
exit 1 exit 1
esac esac
@ -672,6 +817,7 @@ if [[ "${INIT_TAG:-}" == "1" ]]; then
[[ "${GRADLE_TAG:-}" == "1" ]] && { init:gradle; } [[ "${GRADLE_TAG:-}" == "1" ]] && { init:gradle; }
[[ "${MAVEN_TAG:-}" == "1" ]] && { init:maven; } [[ "${MAVEN_TAG:-}" == "1" ]] && { init:maven; }
[[ "${JENKINS_TAG:-}" == "1" ]] && { init:jenkins; } [[ "${JENKINS_TAG:-}" == "1" ]] && { init:jenkins; }
[[ "${REDIS_TAG:-}" == "1" ]] && { init:redis; }
else else
help::usage help::usage
fi fi

0
00base/03xxljob.groovy → 05shengke/03xxljob.groovy

Loading…
Cancel
Save