1、建立redis-cluster資料夾
mkdir /www
cd /www
mkdir redis-cluster
cd redis-cluster
2、檔案目錄結構
# 專案檔案 ├── /www/redis-cluster/redis-cluster.tmpl
# ├── /www/redis-cluster/redis.sh
# ├── /www/redis-cluster/stop.sh
3、redis-cluster.tmpl檔案:配置如下幾個引數,此檔案的目的是生成每乙個redis例項的redis.conf
#埠
port $
#非保護模式
protected-mode no
#啟用集群模式
cluster-enabled yes
cluster-config-file nodes.conf
#超時時間
cluster-node-timeout 5000
cluster-announce-ip 10.1.1.198
cluster-announce-port $
cluster-announce-bus-port 1$
#後台執行
#daemonize yes
pidfile /var/run/redis_$.pid
#集群加密
masterauth a123456
requirepass a123456
#!/bin/bash
#在/www/redis-cluster下生成conf和data目標,並生成配置資訊
for port in `seq 6000 6005`;
do mkdir -p ./$/conf && port=$ envsubst < ./redis-cluster.tmpl > ./$/conf/redis.conf && mkdir -p ./$/data;
done
#建立6個redis容器
for port in `seq 6000 6005`;
do docker run -d -it -p $:$ -p 1$:1$ -v /www/redis-cluster/$/conf/redis.conf:/usr/local/etc/redis/redis.conf -v /www/redis-cluster/$/data:/data --restart always --name redis-$ --net redis-net --sysctl net.core.somaxconn=1024 redis redis-server /usr/local/etc/redis/redis.conf;
done
#查詢ip
for port in `seq 6000 6005`;
do echo -n "$(docker inspect --format '}' "redis-$")":$" ";
done
#換行echo -e "\n"
#輸入資訊
read -p "請把輸入要啟動的docker容器名稱,預設redis-6000:" docker_name
#判斷是否為空
if [ ! $docker_name ];
then docker_name='redis-6000';
fi#進入容器
docker exec -it redis-6000 /bin/bash
5、stop.sh:解除安裝redis集群
#!/bin/bash
docker stop redis-6000 redis-6001 redis-6002 redis-6003 redis-6004 redis-6005
docker rm redis-6000 redis-6001 redis-6002 redis-6003 redis-6004 redis-6005
rm -rf 6000 6001 6002 6003 6004 6005
6、設定許可權:
chmod 755 redis.sh stop.sh
7、建立自定義network(redis-net)
docker network create redis-net
6、執行redis.sh指令碼自動建立redis容器,然後自動進入redis-6000
./redis.sh
6、設定許可權:
chmod 755 redis.sh stop.sh
7、建立自定義network(redis-net)
docker network create redis-net
6、執行redis.sh指令碼自動建立redis容器,然後自動進入redis-6000
7、執行集群,然後輸入:yes,啟動集群(-a a123456 是密碼)。
#執行集群
8、進入redis
redis-cli -c -p 6000 -a a123456
9、問題處理
如果遇到: waiting for the cluster to join 一直等待,可能問題是:
開啟防火牆埠:
firewall-cmd --zone=public --add-port=6000-6005/tcp --permanentfirewall-cmd --zone=public --add-port=16000-16005/tcp --permanentfirewall-cmd --reload
virtualbox下centos7配置靜態ip
最新的virtualbox 5.2.12 七種網路型別區別 官方解釋 vm host vm1 vm2 vm internet vm internet host only internal bridged nat port forwarding nat network port forwarding ...
centos7下安裝janusGraph單機版
janusgraph是一款圖資料庫,繼承自titan,支援分布式,可以整合了多種資料庫,大資料平台,如hbase,hadoop,spark,elasticsearch等。詳細介紹大家可參考官方文件janusgraph官方文件。下面我們介紹如何在centos7上安裝配置單機版本的janusgraph....
centos7下安裝tensorflow gpu版
我的版本 cuda 8.0 cudaa6.0 python3.5.1 tensorflow gpu1.4.0 說說遇到的坑 折騰了一下午 1.查資料說是python3.6可以與其他軟體相容,於是我就安裝了python3.6.6版本,結果後面測試import tensorflow時會報錯importe...