mysql8主从复制集群_rancher 2.X 搭建小型web集群+mysql主从复制
一,环境配置
rancher 2.1.6
二,配置harbor私有仓库
见上文
三,配置私有镜像
01,总文件
dockerfile 为主配置文件,html 为站点文件wordpress.,官网下载更加
1 FROM centos:7.4.1708
2 MAINTAINER kingle3 ENV PHP_VARSION 5.5.32
4 ENV NGINX_VERSION 1.14.0
5 ADD . /usr/local/share/
6 RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
7 RUN curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo && \
8 curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo9 RUN yum install -y pcre pcre-devel openssl openssl-devel gcc make gcc-c++
10 RUN cd /usr/local/share/ && tar zxf nginx-1.14.0.tar.gz && \
11 useradd www -s /bin/nologin -M12 WORKDIR /usr/local/share/nginx-1.14.0/
13 RUN ./configure --user=www --group=www \
14 --prefix=/application/nginx \
15 --with-http_stub_status_module --with-http_ssl_module && \
16 make -j 4 &&make install17 RUN yum install vim net-tools zlib-devel openssl-devel openssl libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel libxslt-devel libmcrypt-devel mcrypt mhash -y18 RUN cd /usr/local/share/ && tar zxf libmcrypt-2.5.8.tar.gz && tar zxf mcrypt-2.6.8.tar.gz && tar zxf mhash-0.9.9.9.tar.gz19 RUN cd /usr/local/share/libmcrypt-2.5.8 && \
20 ./configure && make && make install && \
21 ln -s /usr/local/bin/libmcrypt_config /usr/bin/libmcrypt_config && \
22 export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
23 RUN cd /usr/local/share/mhash-0.9.9.9 && \
24 ./configure && make &&make install25 RUN cd /usr/local/share/mcrypt-2.6.8 && \
26 ./configure && make &&make install27 RUN cd /usr/local/share/ && tar zxf libiconv-1.14.tar.gz && \
28 tar zxf php-5.5.32.tar.gz && \
29 cd /usr/local/share/libiconv-1.14 && \
30 sed -i -e '/gets is a security/d' srclib/stdio.in.h && \
31 ./configure --prefix=/usr/local/libiconv && make -j 4 &&make install32 RUN cd /usr/local/share/php-5.5.32 && ./configure --prefix=/application/php --with-fpm-user=www \
33 --with-fpm-group=www \
34 --with-iconv=/usr/local/libiconv \
35 --with-mysqli \
36 --with-pdo-mysql \
37 --with-openssl \
38 --with-gd \
39 --with-zlib \
40 --with-gettext \
41 --with-curl \
42 --with-png-dir \
43 --with-jpeg-dir \
44 --with-freetype-dir \
45 --with-xmlrpc \
46 --with-mhash \
47 --with-openssl \
48 --enable-fpm \
49 --enable-xml \
50 --enable-shmop \
51 --enable-sysvsem \
52 --enable-inline-optimization \
53 --enable-mbregex \
54 --enable-mbstring \
55 --enable-ftp \
56 --enable-gd-native-ttf \
57 --enable-mysqlnd \
58 --enable-pcntl \
59 --enable-sockets \
60 --enable-zip \
61 --enable-soap \
62 --enable-session \
63 --enable-bcmath \
64 --enable-exif \
65 --enable-fileinfo \
66 --enable-opcache=no \
67 --disable-rpath \
68 --disable-debug \
69 --without-pear && \
70 touch ext/phar/phar.phar && \
71 make -j 4 && make install && \
72 cp ./php.ini-production /application/php/lib/php.ini && \
73 cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm && \
74 cp /application/php/etc/php-fpm.conf.default /application/php/etc/php-fpm.conf75 RUN chmod +x /etc/init.d/php-fpm76 RUN echo "export PATH=$PATH:/application/php/sbin/:/application/nginx/sbin/" >>/etc/profile && source /etc/profile77 add start.sh /root/start.sh78 RUN /etc/init.d/php-fpm start79 RUN chmod +x /root/start.sh80 WORKDIR /application/
81 ADD html/conf/nginx.conf /application/nginx/conf/nginx.conf82 CMD ["/application/nginx/sbin/nginx","-c","/application/nginx/conf/nginx.conf"]
02,构建镜像
docker build -t web-11:v3 .
03,搭建mysql镜像
可以通过官方的docker镜像源进行安装比较块
wget https://codeload.github.com/docker-library/mysql/zip/master
另一种自定义:
1 [root@k8s3 mysql]#cat docker-compose.yml
2 version: '2'
3 services:
4 mysql-master:
5 build:
6 context: ./
7 dockerfile: master/Dockerfile8 environment:
9 - "MYSQL_ROOT_PASSWORD=root"
10 - "MYSQL_DATABASE=replicas_db"
11 links:
12 - mysql-slave13 ports:
14 - "33065:3306"
15 restart:always16 hostname: mysql-master17 mysql-slave:
18 build:
19 context: ./
20 dockerfile: slave/Dockerfile21 environment:
22 - "MYSQL_ROOT_PASSWORD=root"
23 - "MYSQL_DATABASE=replicas_db"
24 ports:
25 - "33066:3306"
26 restart:always27 hostname: mysql-slave
1 [root@k8s3 mysql]#cat master/Dockerfile
2 FROM mysql:5.7.17
3 MAINTAINER kingle4 ADD ./master/my.cnf /etc/mysql/my.cnf5 EXPOSE 3306
6 CMD ["mysqld"]
[root@k8s3 mysql]#cat master/my.cnf
[mysqld]
server_id=100binlog-ignore-db=mysqllog-bin=replicas-mysql-bin
binlog_cache_size=1M
binlog_format=mixed
expire_logs_days=7slave_skip_errors=1062
1 [root@k8s3 mysql]#cat slave/Dockerfile
2 FROM mysql:5.7.17
3 MAINTAINER kingle4 ADD ./slave/my.cnf /etc/mysql/my.cnf5 EXPOSE 3306
6 CMD ["mysqld"]
1 [root@k8s3 mysql]#cat slave/my.cnf
2 [mysqld]3 server_id=101
4 binlog-ignore-db=mysql5 log-bin=replicas-mysql-slave1-bin6 binlog_cache_size=1M7 binlog_format=mixed8 expire_logs_days=7
9 slave_skip_errors=1062
10 relay_log=replicas-mysql-relay-bin11 log_slave_updates=1
12 read_only=1
运行命令:
1 docker-compose up -d
等待配置完成
四,push镜像到harbor
docker images 可以看见编排出来的包,
这三个包弄了一下午的编排
docker tag 192.168.0.167/web/ngphp:v0.1 192.168.0.167/web/ngphp:v3
docker tag192.168.0.167/web/mysql-slave:0.1 192.168.0.167/web/mysql-slave:v0.1docker tag192.168.0.167/web/mysql-master:0.1 192.168.0.167/web/mysql-master:v0.1
登入harbor私有仓库
docker push 192.168.0.167/web/web1:v0.1dockerpush 192.168.0.167/web/mysql-master:v0.1dockerpush 192.168.0.167/web/mysql-slave:v0.1
到harbor查看
上传成功了
五,rancher 搭建
配置rancher
等待启动完成
站点访问:
六,配置数据库主从
主库从库搭建就命名不一样,其余参照下面搭建
点击启动即可
查看你
查看主库ip
命令编辑
授权给从库
create user 'repl'@'%' identified by '123456'
GRANT REPLICATION SLAVE ON *.* to 'rep1'@'%' identified by '123456';
FLUSH PRIVILEGES;
show mater slave
从库配置
1 CHANGE MASTER TO MASTER_HOST='10.42.1.31', MASTER_USER='repl', MASTER_PASSWORD='123456', MASTER_LOG_FILE='replicas-mysql-bin.000003',MASTER_LOG_POS=1144353;
发现一个问题:
解决:
主库:
刷写日志: 记录好binlog 和pos
从库
stop slave
stop slave ;resetslave;
CHANGE MASTER TO MASTER_HOST='10.42.1.31', MASTER_USER='repl', MASTER_PASSWORD='123456', MASTER_LOG_FILE='replicas-mysql-bin.000004',MASTER_LOG_POS=154;
start slave;
成功解决
从库也一样了
七,wordpress 配置
根据步骤填写,回不去,少了截图,大家正常发挥,有问题联系,邮箱在下面.
点击安装即可
mysql8主从复制集群_rancher 2.X 搭建小型web集群+mysql主从复制相关推荐
- 单机 搭建kafka集群 本地_10分钟搭建单机Kafka集群
单机版kafka集群有什么作用 练习上手用. 搭建zookeeper集群首先下载zookeeper解压 apache zookeeper tar -zxvf apache-zookeeper-3.5. ...
- 安卓手机安装php服务器地址,利用Android手机搭建小型Web服务器
使用背景 手头有一个项目的网页需要跨终端展示,考虑到一些数据的保密性,不能放在公网上的虚拟主机上面,所以需要在局域网中搭建一个小型的Web服务器 现在电子设备更新换代的很快,手里有一些闲置的安卓设备使 ...
- aproxy配合Nginx搭建Web集群部署实验(图文详解)
文章目录 一.常见的Web集群调度器 二.Haproxy应用分析 三.Haproxy调度算法原理 四.Haproxy搭建 Web 群集 实验所需安装包 环境配置 1.部署haproxy服务器(192. ...
- 高效多用的群集-Haproxy搭建Web集群
Haproxy搭建Web集群 Haproxy搭建Web集群 一.Haproxy前言 二.常见的Web集群调度器 三.Haproxy应用分析 四.Haproxy高性能负载均衡主要优点 五.四层与七层负载 ...
- 集群(三)——haproxy+nginx搭建web集群
集群(三)--haproxy+nginx搭建web集群 一.Haproxy 前言 二.Haproxy 简介 1.常见的web集群调度器 2.Haproxy应用分析 3.Haproxy高性能负载均衡的主 ...
- Spark基础学习笔记07:搭建Spark HA集群
文章目录 零.本讲学习目标 一.Spark HA集群概述 二.Spark HA集群架构 三.集群角色分配表 四.Spark HA集群搭建步骤 (一)安装配置ZooKeeper 1.在虚拟机master ...
- Docker中搭建redis分片集群,搭建redis哨兵结构,实现springboot中对redis分片集群、哨兵结构的访问,Redis缓存雪崩、缓存击穿处理(非关系型数据库技术课程 第十二周)
文章目录 一.要求: 二.知识总结 缓存雪崩 解决方案 docker中redis分片集群搭建 配置好配置文件 redis-6380.conf redis-6381.conf redis-6382.co ...
- Amazon ElastiCache 飞速搭建缓存服务集群,这才叫快
前言 我们平时工作中,缓存服务这个词出现频率不低,Redis.Memcached 是我们经常用到的缓存服务. 运维人员.测试人员.研发人员.实施人员,是否都有过对集群服务搭建.部署及管理的烦恼,常常捣 ...
- 跟老男孩学 Linux 运维:Web 集群实战
内容简介 本书针对中小规模网站集群的搭建.部署.优化进行了详细讲解,全书可分为三大部分,其中第一部分讲的是 Linux 相关的基础且重要的知识,第二部分针对当下流行的 Web 环境架构(LNMP)的搭 ...
最新文章
- Qt 视图框架示例 Colliding Mice 的翻译
- 十大滤波算法程序大全
- ExtJs ComboBox 在IE 下 自动完成功能无效的解决方案
- 下列哪个不是java的数据类型_下面哪个不是Java基本数据类型?()
- 字符集和编码规范:ASCII,Unicode和UTF-8, latin1,BIG5,GBK
- 陈皓:谈谈职业规划——CSDN对我的采访
- twitter数据集_推特宠物数据整理及分析
- day16【前台】项目展示
- MariaDB一之编译安装MariaDB、MariaDB初始化及MariaDB的图形化工具
- 台式计算机如何连接网络,台式机如何去连接网络
- Arduino入门-Arduino编程语言入门教程
- 计算机光驱无法启用,光驱提示:无法访问G:\函数不正确解决方法
- 微博自动同步发表到微头条工具使用说明
- 数据标注工具下载中遇到的各种问题
- php echo 后必须die,die 提示的消息都去哪了?
- ViewDragHelper实战,实现滑动解锁
- Java虚拟机:Java虚拟机结构
- 即插即用和热插拔的区别
- 工商管理专业知识与实务(初级)【1】
- 腾讯云使用phpStudy部署网站(附腾讯云优惠券)
热门文章
- This dependency was not found: * !!vue-style-loader!css-loader? 解决方案
- SpringBoot文件上传异常之提示The temporary upload location xxx is not valid
- Java:转换列表 String 到一个字符串
- 什么是Android上的“上下文”?
- HTML复选框可以设置为只读吗?
- SpringMVC多种参数接收
- 软景php,你不得不知的软景配置标准
- 问答| 在四轮驱动机器人(SSMR)运动学模型中,左右虚拟轮的线速度vl和vr如何得到?
- securecrt遇到一个致命的错误且必须关闭_高性能服务器之路 | 浅谈 Valgrind 内存错误检查神器 Memcheck...
- 高德地图 map.setcenter 动画_娄底三维动画制作公司价格2020行情-立艺数字