丐版pxc集群

这篇具有很好参考价值的文章主要介绍了丐版pxc集群。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

同步

systemctl stop firewalld && systemctl disable firewalld
systemctl stop NetworkManager && systemctl disable NetworkManager

setenforce 0
sed -i s/SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config

swapoff -a
sed -ri 's/.swap./#&/' /etc/fstab

yum install chrony -y
systemctl enable chronyd --now
chronyc sources

ip修改(这里改成核弹发送密码)
10.1.161.28
10.1.161.26(原本是25,被人占了ip)
10.1.161.6
主机名设置

sudo hostnamectl set-hostname node01
sudo hostnamectl set-hostname node02
sudo hostnamectl set-hostname node03
全部
bash

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install -y kernel-lt
grep initrd16 /boot/grub2/grub.cfg
grub2-set-default 0
reboot
uname -a

镜像拉我们的私有库:我们的仓库地址():
https://10.1.161.110:5000/
私有库使用步骤:
-----------------------------可省略:这个弄起来太麻烦,一般情况下,都会用k8s整一个插件,用k8s喊我就行,一般情况就下个镜像包load一下就好,大多数镜像都是可以直接拉下来的。

或者有时间也可以去b站自己学k8s...,找时间最新的。docker和k8s不走外部代理,所以代理是没有用的。解决方法就是用k8s的那个插件

docker pull percona/percona-xtradb-cluster:5.7.27
docker pull swarm

docker tag percona/percona-xtradb-cluster:5.7.27 10.1.161.110:5000/percona/percona-xtradb-cluster:5.7.27
docker tag swarm:latest 10.1.161.110:5000/percona/swarm:latest

docker push 10.1.161.110:5000/percona/percona-xtradb-cluster:5.7.27
docker push 10.1.161.110:5000/percona/swarm:latest
---------------------------------------可省略--------------

curl -fsSL https://get.docker.com | bash

yum -y install docker-ce
sudo systemctl start docker
sudo systemctl enable docker

docker pull percona/percona-xtradb-cluster:5.7.21

pxc无法映射目录,只能创建数据卷,分别创建mysql数据卷和配置卷

docker volume create mysql-data
docker volume create mysql-conf
docker run -d -v mysql-data:/var/lib/mysql --restart always -e TZ=Asia/Shanghai
-e CLUSTER_NAME=PXC -v mysql-conf:/etc/mysql
-e MYSQL_ROOT_PASSWORD=123456 -e EXTRABACKUP_PASSWROD=123456
--privileged --name=mysql-node1 --net=host percona/percona-xtradb-cluster:5.7.21

navicat看下能不能连,能连说明node1安装成功
(附加:
sql_model的模式如果要更改的话:
查一下:docker inspect mysql-conf
修改my.cnf
然后docker restart mysql-node1
)
跟第一个差不多:

pxc无法映射目录,只能创建数据卷,分别创建mysql数据卷和配置卷

docker volume create mysql-data

docker volume create mysql-conf

docker run -idt -v mysql-data:/var/lib/mysql --restart always -e TZ=Asia/Shanghai
-e CLUSTER_NAME=PXC -v mysql-conf:/etc/mysql -e CLUSTER_JOIN=10.1.161.28
-e MYSQL_ROOT_PASSWORD=123456 -e EXTRABACKUP_PASSWROD=123456
--privileged --name=mysql-node2 --net=host percona/percona-xtradb-cluster:5.7.21

然后重复第一个节点的步骤,修改my.cnf然后重启
node2也好了

测试一下:
node1新建一个用户:
CREATE USER 'haproxy'@'%' IDENTIFIED BY '';
node2用户表看一下有没有这个用户

可选:
继续负载均衡:

拉取haprox镜像

docker pull haproxy

新建目录

mkdir -p /data/haproxy

新建配置文件

vi /data/haproxy/haproxy.cfg

haproxy.cfg配置:注意改一下server,server就是两个数据库的连接

global
#工作目录,这边要和创建容器指定的目录对应
# chroot /usr/local/etc/haproxy
#日志文件
log 127.0.0.1 local5 info
#守护进程运行
daemon
defaults
log global
mode http
#日志格式
option httplog
#日志中不记录负载均衡的心跳检测记录
option dontlognull
#连接超时(毫秒)
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_monitor
#统计报告格式
stats realm Global\ statistics
#登陆帐户信息
stats auth admin:admin
#数据库负载均衡
listen proxy-mysql
#访问的IP和端口,haproxy开发的端口为3306
#假如有人访问haproxy的3306端口,则将请求转发给下面的数据库实例
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 10.1.161.28:3306 check weight 1 maxconn 2000
server MySQL_2 10.1.161.26:3306 check weight 1 maxconn 2000
#使用keepalive检测死链
option tcpka

启动一下:

在主节点创建haproxy容器

docker run -d -p 8888:8888 -p 3307:3306 -v /data/haproxy:/usr/local/etc/haproxy
--name haproxy --privileged haproxy

测一下有没有通:
http://10.1.161.28:8888/dbs_monitor
admin admin

连一下:
10.1.161.28:3306

root 123456

新建一个数据库瞅瞅,发现都同步了,至此,丐版pxc集群完成。文章来源地址https://www.toymoban.com/news/detail-845562.html

到了这里,关于丐版pxc集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Elasticsearch --- 数据同步、集群

    elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,elasticsearch也必须跟着改变,这个就是elasticsearch与mysql之间的 数据同步 。   思路分析: 常见的数据同步方案有三种: 同步调用 异步通知 监听binlog   方案一:同步调用 基本步骤如下: hotel-demo对外提供接

    2024年02月03日
    浏览(40)
  • Kafka 集群如何实现数据同步?

    哈喽大家好,我是咸鱼 最近这段时间比较忙,将近一周没更新文章,再不更新我那为数不多的粉丝量就要库库往下掉了 T﹏T 刚好最近在学 Kafka,于是决定写篇跟 Kafka 相关的文章(文中有不对的地方欢迎大家指出) 考虑到有些小伙伴可能是第一次接触 Kafka ,所以先简单介绍

    2024年02月05日
    浏览(41)
  • Ubuntu系统安装chrony时间同步服务(局域网集群内同步)

    Chrony是一个开源自由的网络时间协议 NTP 的客户端和服务器软软件。它能让计算机保持系统时钟与时钟服务器(NTP)同步,因此让你的计算机保持精确的时间,Chrony也可以作为服务端软件为其他计算机提供时间同步服务。 Chrony由两个程序组成,分别是chronyd和chronyc chronyd是一个

    2024年02月08日
    浏览(42)
  • Mac丐版将软件安装在外置移动硬盘方法(软链接)

    以前一直用黑苹果,硬盘,需要多大的,自己就买个多大的。根据自己的需求去。 而现在苹果还是弃用Inter处理器了,采用Arm架构的处理器,估计黑苹果也用不了多久了,迟早的事情。而且黑苹果在大版本升级的时候,可能会遇到麻烦。为了能一直使用比较心仪的MacOS。在一

    2024年01月21日
    浏览(52)
  • 集群时钟同步必读-NTP和chrony

      搭建和维护集群环境中时钟同步是非常重要一环。如果集群的时间不统一,例如ceph集群就会报错无法更新数据、CDH集群无法添加客户端等等。目前主流在Linux系统搭建集群用到NTP和chrony软件,本文简单介绍两者的集群搭建。 根据chrony官网描述,主要区别如下图:(图太大了,截

    2023年04月24日
    浏览(41)
  • Kafka集群间同步数据方案-Flume

    Apache Flume 是一个分布式、高可靠、高可用的用来收集、聚合、转移不同来源的大量日志数据到中央数据仓库的工具。 系统要求 Java运行环境 - Java 1.8或更高版本 体系结构 Event是Flume定义的一个数据流传输的最小单元。Agent就是一个Flume的实例,本质是一个JVM进程,该JVM进程控制

    2024年02月11日
    浏览(47)
  • RocketMQ双主双从同步集群部署

    🎈 作者: 互联网-小啊宇 🎈 简介: CSDN 运维领域创作者、阿里云专家博主。目前从事 Kubernetes运维相关工作,擅长Linux系统运维、开源监控软件维护、Kubernetes容器技术、CI/CD持续集成、自动化运维、开源软件部署维护等领域。 🎈 博客首页:CSDN【互联网-小阿宇】 、阿里云

    2024年02月12日
    浏览(40)
  • hive表向es集群同步数据20230830

    背景:实际开发中遇到一个需求,就是需要将hive表中的数据同步到es集群中,之前没有做过,查看一些帖子,发现有一种方案挺不错的,记录一下。 我的电脑环境如下 软件名称 版本 Hadoop 3.3.0 hive 3.1.3 jdk 1.8 Elasticsearch 7.10.2 kibana 7.10.2 logstash 7.10.2 ES-Hadoop 7.10.2 ES-Hadoop的引入

    2024年02月09日
    浏览(35)
  • HDFS 跨集群数据同步(hive,hadoop)

    两个不同的HDFS 集群数据迁移( A集群的数据 - B 集群) 采用的是 SHELL 脚本  按表进行; 日期分区进行; #!/bin/bash ##################### #创建人:DZH #创建日期: 2020-04 #内容: 数据迁移 ##################### ##################################### [ \\\"$#\\\" -ne 0 ] FILE=$1 path=$(cd `dirname $0`; pwd) ############## 获取执

    2024年04月27日
    浏览(56)
  • 聊聊在集群环境中本地缓存如何进行同步

    之前有发过一篇文章聊聊如何利用redis实现多级缓存同步。有个读者就给我留言说,因为他项目的redis版本不是6.0+版本,因此他使用我文章介绍通过MQ来实现本地缓存同步,他的同步流程大概如下图 他原来的业务流程是每天凌晨开启定时器去爬取第三方的数据,并持久化到r

    2024年02月12日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包