动态焦点:Docker - 搭建Mysql PXC高可用集群环境部署
2023-03-10 14:10:35
Docker 基本用法
1.安装 docker
yum -y updateyum install -y docker2.启动 / 关闭 / 重启 docker
service docker start / systemctl start dockerservice docker stop / systemctl stop dockerservice docker restart / systemctl restart dockerps:我本地机器用第二个命令启动成功的。
(资料图)
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 #Windowsps:设置如果报错,去配置文件修改,去掉最后的一个逗号,路径vim /etc/docker/daemon.json, 修改配置完,最好重启docker,以避免不必要的错误。
如果是添加阿里云docker的加速器,开通加速服务在配置项里找到对应的命令,
sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-"EOF"{ "registry-mirrors": ["https://lgltjulp.mirror.aliyuncs.com"]}EOFsudo systemctl daemon-reloadsudo systemctl restart docker4.查找并安装镜像
docker search java #查找镜像docker pull docker.io/java #安装你需要的镜像5.查看docker中已经安装的镜像
docker images6.导入和导出镜像
docker save docker.io/java > /home/docker/java.tar.gz #导出docker镜像docker load < /home/docker/java.tar.gz 导入docker镜像docker imagesdocker rmi java7.启动容器
docker run -it docker.io/java bash -p 9000:8080 -p 9001:8085 # -p 映射宿主机和虚拟机的端口-v /home/project:/soft #-v 映射宿主机和虚拟机的文件夹--privileged # 目录权限--name myjavadocker run -it -p 9000:8080 -p 9001:8085 -v /home/project:/soft --privileged --name myjava docker.io/java bash8.暂停和停止容器
docker pause myjava # 暂停容器docker unpause myjava #恢复容器的运行docker stop myjava #暂停容器docker start -i myjava #重启9.查看运行的容器
docker ps -a docker run -it -p 9000:8080 -p 9001:8085 -v /home/project:/soft--privileged --name myjava docker.io/java bashMysql PXC集群环境部署
PXC集群特点:
同步复制,事务在所有的集群节点要么同时提交,要么同时不提交Replication采用异步复制,无法保证数据的一致性1.下载镜像
docker pull percona/percona-xtradb-cluster2.出于安全考虑,需要给pxc集群实例创建docker内部网络
docker network create --subnet=172.20.1.0/24 net1docker network inspect net1docker network rm net1ps:阿里云服务器没有成功???!!中间遇到了一个小问题,Error response from daemon, 这个是因为172.18 的网段已经存在,可以docker network ls查看,换一个网段就解决了
3.创建docker卷
docker volume create --name v1docker volume create --name v2docker volume create --name v3docker volume create --name v4docker volume create --name v54.查看docker卷信息
docker inspect v1#创建第一个节点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#创建第二个节点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#创建第三个节点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#创建第四个节点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#创建第五个节点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 pxcps:在这个地方又遇到了个问题,创建了5个node节点,但是只启动了2个,3个失败???暂时还不知道原因???启动的状态都为Exited???!!
使用这句命令全部启动实例docker ps -aq | xargs -I {} docker start {}
5.mysql的负载均衡haproxy
docker pull haproxy6.实例化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 haproxyglobal#工作目录chroot /usr/local/etc/haproxy#日志文件,使用rsyslog服务中local5日志设备(/var/log/local5),等级infolog 127.0.0.1 local5 info#守护进程运行daemondefaultslogglobalmodehttp#日志格式optionhttplog#日志中不记录负载均衡的心跳检测记录optiondontlognull #连接超时(毫秒)timeout connect 5000 #客户端超时(毫秒)timeout client 50000#服务器超时(毫秒) timeout server 50000#监控界面listen admin_stats#监控界面的访问的IP和端口bind 0.0.0.0:8888#访问协议 mode http#URI相对地址 stats uri /dbs#统计报告格式 stats realm Global\ statistics#登陆帐户信息 stats auth admin:abc123456#数据库负载均衡listen proxy-mysql#访问的IP和端口bind 0.0.0.0:3306 #网络协议mode tcp#负载均衡算法(轮询算法)#轮询算法:roundrobin#权重算法:static-rr#最少连接算法:leastconn#请求源IP算法:source balance roundrobin#日志格式 option tcplog#在MySQL中创建一个没有权限的haproxy用户,密码为空。 #Haproxy使用这个账户对MySQL数据库心跳检测 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 tcpka7.登陆到交互容器里
docker exec -it h1 bash8.安装keepalive 完成双机热备,登录haproxy,执行命令
apt-get updateapt-get install keepalived9.配置keepalive,
#创建第2个Haproxy负载均衡服务器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 haproxyvrrp_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 }}#启动Keepalivedservice keepalived start#宿主机执行ping命令ping 172.20.1.201#创建第2个Haproxy负载均衡服务器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#进入h2容器,启动Haproxydocker exec -it h2 bashhaproxy -f /usr/local/etc/haproxy/haproxy.cfg 标签:
- 动态焦点:Docker - 搭建Mysql PXC高可用集群环境部署
- 十四届全国人大一次会议选举产生第十四届全国人大常委会副委员长、秘书长
- 番禺海鸥岛沙北村规划红线图_番禺海鸥岛|天天热资讯
- 播报:触电歌词完整版_触电歌词
- 八仙过海是哪八仙图片_八仙过海的八仙是谁
- Temu海外扩张加速 观点
- 自助餐怎么吃不容易饱_自助餐怎么吃 热点
- 两地好人重聚黄河边,完成一场兰州与西宁的约定-全球今热点
- 越秀房托(00405)2022年整体经营稳健,连续17年实现100%分派_天天简讯
- 【全球热闻】鲁能贴吧推荐坎特_鲁能贴吧
- 核裂变铀变成了什么_铀核裂变的核反应方程
- 韩媒:韩国总统尹锡悦将于3月16日至17日访问日本
- 集装箱办公室租赁_集装箱办公室 环球速讯
- 海洋中最多的生物是哪种生物_海洋中最多的生物是哪类生物 天天快讯
- 评测:宝马3系怎么样及雷丁i3怎么样
- 拎稳“菜篮子”,给设施农业升级(“一号文件”新提法传递哪些信号④)
- 当前聚焦:交管12123期满换领驾驶证说未检测到体检信息什么意思 _驾驶证换证过期怎么办
- 世界报道:gta5线上是online_gta online什么意思
- 【天天时快讯】word按空格键就把后面的字删除了怎么找回(word按空格键就把后面的字删除)
- 酒吧开招待啥意思?_酒吧开招待什么意思简介介绍
- 智能马桶有水箱的和无水箱的哪个更耐用_智能马桶有水箱和无水箱有什么区别 要闻
- 黄金战船鱼和招财鱼_黄金战船
- 世界看热讯:心理网站
- 热评两会丨致敬了不起的“她” 当前最新
- 天乙银饰今日银价多少一克(2023年03月08日) 焦点热讯
- 戚迹-新视野
- 环球信息:11月天适合去哪里旅游_11月国内最佳旅游地方
- 意难忘电视剧剧情_每日报道
- 世界聚焦:骆驼祥子批注第五章_骆驼祥子批注一页一处
- 飞达音响
x
广告
- 《高山清渠》播出过半 李健用真实形象诠释黄大发的奋斗轨迹
- 现实题材电视剧《分界线》8月1日播出 何冰张国强强手过招
- 花篮的花儿香!民族歌剧《唱响南泥湾》在保利剧院迎来首演
- 韩国电信公布未来五年非基础设施投资预算拨出12万亿韩元
- 冰墩墩设计者给北京四中学生回信:祝福可爱奋进的中国少
- 江苏南通发现1人检测结果呈阳性 系外地返通人员
- 湖南郴州报告2例香港返湘人员新冠肺炎确诊病例
- 广西百色疫情社区传播链基本阻断
- 广西新增1例本土确诊病例 本轮本土疫情累计报告确诊病例
- 葫芦岛市两医院不再收治非绥中地区患者 就医患者闭环管理
- 苏州14日新增本土确诊1例,无症状感染者3例 详情及轨迹公布
- 2021年北京空气质量创历史最优 首次全面达标
x
广告