亚洲中文久久精品无码软件_精品刺激公共露出_蜜桃秘 免费一区二区三区_欧美日韩福利性插视频_久女女热精品视频在线观看

Docker - 搭建Mysql PXC高可用集群環(huán)境部署

時(shí)間:2023-03-10 11:02:56     來源:騰訊云

Docker 基本用法

1.安裝 docker

yum -y updateyum install -y docker

2.啟動(dòng) / 關(guān)閉 / 重啟 docker


【資料圖】

service docker start / systemctl start dockerservice docker stop / systemctl stop dockerservice docker restart / systemctl restart docker

ps:我本地機(jī)器用第二個(gè)命令啟動(dòng)成功的。

3.配置docker鏡像加速器

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh |sh -s http://f1361db2.m.daocloud.io  #linuxhttp://f1361db2.m.daocloud.io #macOshttp://f1361db2.m.daocloud.io #Windows

ps:設(shè)置如果報(bào)錯(cuò),去配置文件修改,去掉最后的一個(gè)逗號(hào),路徑vim /etc/docker/daemon.json, 修改配置完,最好重啟docker,以避免不必要的錯(cuò)誤。

如果是添加阿里云docker的加速器,開通加速服務(wù)在配置項(xiàng)里找到對應(yīng)的命令,

sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-"EOF"{  "registry-mirrors": ["https://lgltjulp.mirror.aliyuncs.com"]}EOFsudo systemctl daemon-reloadsudo systemctl restart docker

4.查找并安裝鏡像

docker search java  #查找鏡像docker pull docker.io/java #安裝你需要的鏡像

5.查看docker中已經(jīng)安裝的鏡像

docker images

6.導(dǎo)入和導(dǎo)出鏡像

docker save docker.io/java > /home/docker/java.tar.gz #導(dǎo)出docker鏡像docker load < /home/docker/java.tar.gz 導(dǎo)入docker鏡像docker imagesdocker rmi java

7.啟動(dòng)容器

docker run -it docker.io/java bash -p 9000:8080 -p 9001:8085  # -p 映射宿主機(jī)和虛擬機(jī)的端口-v /home/project:/soft  #-v 映射宿主機(jī)和虛擬機(jī)的文件夾--privileged # 目錄權(quán)限--name myjava
docker run -it -p 9000:8080 -p 9001:8085 -v /home/project:/soft --privileged --name myjava docker.io/java bash

8.暫停和停止容器

docker pause myjava # 暫停容器docker unpause myjava #恢復(fù)容器的運(yùn)行docker stop myjava #暫停容器docker start -i myjava #重啟

9.查看運(yùn)行的容器

docker ps -a docker run -it -p 9000:8080 -p 9001:8085 -v /home/project:/soft--privileged --name myjava docker.io/java bash

Mysql PXC集群環(huán)境部署

PXC集群特點(diǎn):

同步復(fù)制,事務(wù)在所有的集群節(jié)點(diǎn)要么同時(shí)提交,要么同時(shí)不提交Replication采用異步復(fù)制,無法保證數(shù)據(jù)的一致性

1.下載鏡像

docker pull percona/percona-xtradb-cluster

2.出于安全考慮,需要給pxc集群實(shí)例創(chuàng)建docker內(nèi)部網(wǎng)絡(luò)

docker network create --subnet=172.20.1.0/24 net1docker network inspect net1docker network rm net1

ps:阿里云服務(wù)器沒有成功???!!中間遇到了一個(gè)小問題,Error response from daemon, 這個(gè)是因?yàn)?72.18 的網(wǎng)段已經(jīng)存在,可以docker network ls查看,換一個(gè)網(wǎng)段就解決了

3.創(chuàng)建docker卷

docker volume create --name v1docker volume create --name v2docker volume create --name v3docker volume create --name v4docker volume create --name v5

4.查看docker卷信息

docker inspect v1#創(chuàng)建第一個(gè)節(jié)點(diǎn)docker run -d -p 3310:3306 -e MYSQL_ROOT_PASSWORD=123456-e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456 --name=node1 --net=net1 --ip 172.20.1.2 pxc#創(chuàng)建第二個(gè)節(jié)點(diǎn)docker run -d -p 3311:3306 -e MYSQL_ROOT_PASSWORD=123456-e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456-e CLUSTER_JOIN=node1--name=node2 --net=net1 --ip 172.20.1.3 pxc#創(chuàng)建第三個(gè)節(jié)點(diǎn)docker run -d -p 3315:3306 -e MYSQL_ROOT_PASSWORD=123456-e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456-e CLUSTER_JOIN=node1 --name=node3 --net=net1 --ip 172.20.1.7 pxc#創(chuàng)建第四個(gè)節(jié)點(diǎn)docker run -d -p 3313:3306 -e MYSQL_ROOT_PASSWORD=123456-e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456-e CLUSTER_JOIN=node1  --name=node4 --net=net1 --ip 172.20.1.5 pxc#創(chuàng)建第五個(gè)節(jié)點(diǎn)docker run -d -p 3314:3306 -e MYSQL_ROOT_PASSWORD=123456-e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456-e CLUSTER_JOIN=node1--name=node5  --net=net1 --ip 172.20.1.6 pxc

ps:在這個(gè)地方又遇到了個(gè)問題,創(chuàng)建了5個(gè)node節(jié)點(diǎn),但是只啟動(dòng)了2個(gè),3個(gè)失敗???暫時(shí)還不知道原因???啟動(dòng)的狀態(tài)都為Exited???!!

使用這句命令全部啟動(dòng)實(shí)例docker ps -aq | xargs -I {} docker start {}

5.mysql的負(fù)載均衡haproxy

docker pull haproxy

6.實(shí)例化haproxy

docker run -it -d -p 4001:8888 -p 4002:3306 -v /home/soft/haproxy:/usr/local/etc/haproxy --name h1 --privileged --net=net1 --ip 172.20.1.10 haproxy
global#工作目錄chroot /usr/local/etc/haproxy#日志文件,使用rsyslog服務(wù)中l(wèi)ocal5日志設(shè)備(/var/log/local5),等級(jí)infolog 127.0.0.1 local5 info#守護(hù)進(jìn)程運(yùn)行daemondefaultslogglobalmodehttp#日志格式optionhttplog#日志中不記錄負(fù)載均衡的心跳檢測記錄optiondontlognull   #連接超時(shí)(毫秒)timeout connect 5000   #客戶端超時(shí)(毫秒)timeout client  50000#服務(wù)器超時(shí)(毫秒)   timeout server  50000#監(jiān)控界面listen  admin_stats#監(jiān)控界面的訪問的IP和端口bind  0.0.0.0:8888#訪問協(xié)議   mode        http#URI相對地址   stats uri   /dbs#統(tǒng)計(jì)報(bào)告格式   stats realm     Global\ statistics#登陸帳戶信息   stats auth  admin:abc123456#數(shù)據(jù)庫負(fù)載均衡listen  proxy-mysql#訪問的IP和端口bind  0.0.0.0:3306   #網(wǎng)絡(luò)協(xié)議mode  tcp#負(fù)載均衡算法(輪詢算法)#輪詢算法:roundrobin#權(quán)重算法:static-rr#最少連接算法:leastconn#請求源IP算法:source   balance  roundrobin#日志格式   option  tcplog#在MySQL中創(chuàng)建一個(gè)沒有權(quán)限的haproxy用戶,密碼為空。    #Haproxy使用這個(gè)賬戶對MySQL數(shù)據(jù)庫心跳檢測   option  mysql-check user haproxy   server  MySQL_1 172.20.1.2:3306 check weight 1 maxconn 2000   server  MySQL_2 172.20.1.3:3306 check weight 1 maxconn 2000   server  MySQL_3 172.20.1.7:3306 check weight 1 maxconn 2000   server  MySQL_4 172.20.1.5:3306 check weight 1 maxconn 2000   server  MySQL_5 172.20.1.6:3306 check weight 1 maxconn 2000#使用keepalive檢測死鏈   option  tcpka

7.登陸到交互容器里

docker exec -it h1 bash

8.安裝keepalive 完成雙機(jī)熱備,登錄haproxy,執(zhí)行命令

apt-get updateapt-get install keepalived

9.配置keepalive,

#創(chuàng)建第2個(gè)Haproxy負(fù)載均衡服務(wù)器docker run -it -d -p 4003:8888 -p 4004:3306 -v /home/soft/haproxy:/usr/local/etc/haproxy --name h2 --privileged --net=net1 --ip 172.20.1.10 haproxy
vrrp_instance  VI_1 {    state  MASTER    interface  eth0    virtual_router_id  51    priority  100    advert_int  1    authentication {        auth_type  PASS        auth_pass  123456    }    virtual_ipaddress {        172.20.1.201    }}#啟動(dòng)Keepalivedservice keepalived start#宿主機(jī)執(zhí)行ping命令ping 172.20.1.201
#創(chuàng)建第2個(gè)Haproxy負(fù)載均衡服務(wù)器docker run -it -d -p 4003:8888 -p 4004:3306 -v /home/soft/haproxy:/usr/local/etc/haproxy --name h2 --privileged --net=net1 --ip 172.20.1.11 haproxy#進(jìn)入h2容器,啟動(dòng)Haproxydocker exec -it h2 bashhaproxy -f /usr/local/etc/haproxy/haproxy.cfg

標(biāo)簽:

最新文章推薦

熱點(diǎn)資訊