專注于為中小企業(yè)提供做網(wǎng)站、網(wǎng)站制作服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)建湖免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上1000家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
卸載舊版本docker uninstall old version
sudo yum remove docker \
????????????????? docker-client \
????????????????? docker-client-latest \
????????????????? docker-common \
????????????????? docker-latest \
????????????????? docker-latest-logrotate \
????????????????? docker-logrotate \
????????????????? docker-engine
安裝repo install docker repo
sudo yum install -y yum-utils \
? device-mapper-persistent-data \
? lvm2
sudo yum-config-manager \
--add-repo \
??? https://download.docker.com/linux/centos/docker-ce.repo
安裝社區(qū)版本install Docker Engine-Community
sudo yum install -y docker-ce docker-ce-cli containerd.io --skip-broken
設(shè)置服務(wù)啟動和測試鏡像
sudo systemctl start docker
sudo systemctl enable docker
sudo docker run hello-world
安裝git和下載代碼
sudo yum install -y git
git clone https://github.com/AliyunContainerService/redis-cluster
cd redis-cluster
檢查docker compose文件
cat docker-compose.yml
master:
image: redis:3
slave:
image: redis:3
command: redis-server --slaveof redis-master 6379
links:
- master:redis-master
sentinel:
build: sentinel
environment:
- SENTINEL_DOWN_AFTER=5000
- SENTINEL_FAILOVER=5000
links:
- master:redis-master
- slave
在模板中定義了下面一系列服務(wù)
cat sentinel.conf
# Example sentinel.conf can be downloaded from http://download.redis.io/redis-stable/sentinel.conf
port 26379
dir /tmp
sentinel monitor mymaster redis-master 6379 $SENTINEL_QUORUM
sentinel down-after-milliseconds mymaster $SENTINEL_DOWN_AFTER
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster $SENTINEL_FAILOVER
并以sentinel模式啟動容器。其配置文件如下,其中包含了sentinel對名為"mymaster"的集群的監(jiān)控配置
注意:
sudo yum install -y docker-compose
sudo docker-compose up -d
容我上個廁所
。。。。。。。。。。。
廁所回來都好了
docker ps
怎么只有2個哨兵,擴展到3個
docker-compose scale sentinel=3
順大便擴容2個slave redis
docker-compose scale slave=2
看下目前跑的內(nèi)容
docker ps|sort -k2
改一個測試redis宕機的腳本
vi test.sh
MASTER_IP=$(docker inspect --format '{{ .NetworkSettings.IPAddress }}' rediscluster_master_1)
SLAVE_IP=$(docker inspect --format '{{ .NetworkSettings.IPAddress }}' rediscluster_slave_1)
SENTINEL_IP=$(docker inspect --format '{{ .NetworkSettings.IPAddress }}' rediscluster_sentinel_1)
echo Redis master: $MASTER_IP
echo Redis Slave: $SLAVE_IP
echo ------------------------------------------------
echo Initial status of sentinel
echo ------------------------------------------------
docker exec rediscluster_sentinel_1 redis-cli -p 26379 info Sentinel
echo Current master is
docker exec rediscluster_sentinel_1 redis-cli -p 26379 SENTINEL get-master-addr-by-name mymaster
echo ------------------------------------------------
echo Stop redis master
docker pause rediscluster_master_1
echo Wait for 10 seconds
sleep 10
echo Current infomation of sentinel
docker exec rediscluster_sentinel_1 redis-cli -p 26379 info Sentinel
echo Current master is
docker exec rediscluster_sentinel_1 redis-cli -p 26379 SENTINEL get-master-addr-by-name mymaster
echo ------------------------------------------------
echo Restart Redis master
docker unpause rediscluster_master_1
sleep 5
echo Current infomation of sentinel
docker exec rediscluster_sentinel_1 redis-cli -p 26379 info Sentinel
echo Current master is
docker exec rediscluster_sentinel_1 redis-cli -p 26379 SENTINEL get-master-addr-by-name mymaster
./test.sh
發(fā)現(xiàn)redis master 進行了切換
但是一臺主機的3個redis和3個sentinel 不能算高可用,需要將redis和sentinel部署到不同區(qū)域的多個主機中
文章題目:DockerCompose單機部署Redis+Senti
分享URL:http://bm7419.com/article4/jcshie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、品牌網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計公司、網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)