redis集群自动配置脚本

news/2024/7/3 2:52:13

自动安装脚本:

#!/bin/bash
#
if [[ $1 == "" ]];then
echo "Usage: $0 ipaddr***"
exit 0
fi
masterIp=$1
cd /usr/local/src/
tar -zxvf redis-2.6.12.tar.gz
cd /usr/local/src/redis-2.6.12
make && make install
mkdir -p /etc/redis/
mkdir -p /export/data/redis_data/6379
mkdir -p /export/data/redis_data/6380
sed -i "s/127.0.0.1/$masterIp/g" /usr/local/src/6380.conf
cp -rf /usr/local/src/6379.conf /etc/redis/
cp -rf /usr/local/src/6380.conf /etc/redis/
cat >> /etc/sysctl.conf <<EOF
net.core.somaxconn = 32768
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 0
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time = 100
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_max_tw_buckets = 20000
EOF
modprobe bridge
sysctl -p
/usr/local/bin/redis-server /etc/redis/6379.conf
/usr/local/bin/redis-server /etc/redis/6380.conf

6379.conf

daemonize yes
pidfile /var/run/redis_6379.pid
port 6379
timeout 300
tcp-keepalive 0
loglevel notice
#logfile stdout
databases 16
unixsocketperm 0
maxmemory 2000000000
maxmemory-policy volatile-lru
maxmemory-samples 3
maxclients 10000
#save 900 1
#save 300 10
#save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir /export/data/redis_data/6379
slave-serve-stale-data yes
slave-read-only yes
repl-ping-slave-period 10
repl-timeout 60
repl-disable-tcp-nodelay no
slave-priority 100
appendonly no
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 1024
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10

6380.conf

daemonize yes
pidfile /var/run/redis_6380.pid
port 6380
timeout 300
tcp-keepalive 0
loglevel notice
#logfile stdout
databases 16
unixsocketperm 0
maxmemory 2000000000
maxmemory-policy volatile-lru
maxmemory-samples 3
maxclients 10000
#save 900 1
#save 300 10
#save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir /export/data/redis_data/6380
slaveof 127.0.0.1 6379
slave-serve-stale-data yes
slave-read-only yes
repl-ping-slave-period 10
repl-timeout 60
repl-disable-tcp-nodelay no
slave-priority 100
appendonly yes
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 1024
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10



http://www.niftyadmin.cn/n/4464092.html

相关文章

(转)need_resched 是怎么使用的(ZT)

终于在《情景》&think hard地情况下,想明白了&#xff01; 一 系统调用do_fork() 1 当前进程调用fork&#xff08;&#xff09;创建子进程&#xff0c;进入kernel 2 当前进程分一半多时间片给子进程&#xff0c; 3 如果当前进程时间片剩余为0&#xff0c;设定当前进程…

nginx环境下配置nagios-关于nginx.conf

nginx.conf配置 user nagios nagios; worker_processes 4; worker_cpu_affinity 00000001 00000010 00000100 00001000; error_log /export/servers/nginx/logs/nginx_error.log notice; pid /export/servers/nginx/l…

need_sched 一些讨论

我想写一个简单的设备驱动, 但对驱动模块的可重入方面不甚了解. 有的书说驱动模块不会被中断, 除非主动地调用schedule()(或是隐式 地调用, 如vmalloc()); 有的书则说即使schedule()被调用, 它也不会 去作进程切换, 因为schedule()不对内核态进程切换. 不知谁对? 望高人指…

nginx环境下配置nagios-关于nagios配置文件

接上文&#xff1a;nginx环境下配置nagios-关于nginx.conf nagios文件应该处于conf/domain/目录下 nagios配置如下&#xff1a; server {listen 80;server_name 192.168.44.44;index index.html index.htm index.php;root /usr/local/nagios/share;auth_basic "…

操作系统多级页表计算问题

某计算机有64位虚地址空间&#xff0c;页大小是2048B.每个页表项长为4B。因为所有页表都必须包含在一页中&#xff0c;故使用多级页表&#xff0c;问一共需要多少级&#xff1f; 最佳答案2048B2^11 64-1153&#xff08;地址中扣除页内地址位数&#xff09; 共有2^53页一页中可…

nginx环境下配置nagiosQL-关于nagiosql配置文件

接上文&#xff1a;nginx环境下配置nagios-关于nginx.conf nagiosql文件应该处于conf/domain/目录下 nagiosql配置如下&#xff1a; server {listen 8088;server_name 192.168.44.44;index index.html index.htm index.php;root /usr/local/nagios/nagiosql/;locatio…

函数ERR_PTR,PTR_ERR还有IS_ERR理解

ERR_PTR()和PTR_ERR()都是很简单的类型转换&#xff0c;没有什么可说的。 IS_ERR()有一些妙处。 内核中的函数常常返回指针&#xff0c;问题是如果出错&#xff0c;也希望能够通过返回的指针体现出来。 所幸的是&#xff0c;内核返回的指针一般是指向页面的边界(4K边界)&#x…

nginx环境下配置nagios-关于start_perl_cgi.sh

文件配置如下&#xff1a; #!/bin/bash set -x dir/export/servers/nginxstop () { #pkill -f $dir/perl-fcgi.pl kill $(cat $dir/logs/perl-fcgi.pid) rm $dir/logs/perl-fcgi.pid 2>/dev/null rm $dir/logs/perl-fcgi.sock 2>/dev/null echo "stop perl-fcgi d…