kubesphere中间件部署

2023-09-14 18:26:36

微服务部署前中间件部署

一、MySQL部署

1.1 使用Docker实现MySQL主从复制

docker run -p 3307:3306 --name mysql-master \
-v /mydata/mysql/master/log:/var/log/mysql \
-v /mydata/mysql/master/data:/var/lib/mysql \
-v /mydata/mysql/master/conf:/etc/mysql \
-e MySQL_ROOT_PASSWORD=root \
-d mysql:5.7 
vim /mydata/mysql/master/conf/my.cnf

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

skip-name-resolve一定要加,不然连接mysql 会慢

server_id=1
log_bin=mysql-bin
read-only=0
binlog-do-db=mall_oms
binlog-do-db=mall_pms
binlog-do-db=mall_sms
binlog-do-db=mall_ums
binlog-do-db=mall_wms

replicate-ignore-db=mysql
replicate-ignore-db=sys
replicate-ignore-db=information_schema
replicate-ignore-db=performance_schema
docker run -p 3317:3306 --name mysql-slaver-01 \
-v /mydata/mysql/slaver/log:/var/log/mysql \
-v /mydata/mysql/slaver/data:/var/lib/mysql \
-v /mydata/mysql/slaver/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
vim /mydata/mysql/slaver/conf/my.cnf

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
server_id=2
log_bin=mysql-bin
read-only=1
binlog-do-db=mall_oms
binlog-do-db=mall_pms
binlog-do-db=mall_sms
binlog-do-db=mall_ums
binlog-do-db=mall_wms

replicate-ignore-db=mysql
replicate-ignore-db=sys
replicate-ignore-db=information_schema
replicate-ignore-db=performance_schema
docker restart mysql-master mysql-slaver-01

为master授权用户实现数据同步

进入master容器
docker exec -it mysql /bin/bash

访问mysql数据库
mysql -uroot -proot

授权root可以远程访问,为了方便连接使用
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
flush privileges;

添加用于同步用户
grant replication slave on *.* to 'backup'@'%' identified by '123456';

查看master状态
show master status\G;

配置slaver同步master数据

进入slaver容器
docker exec -it mysql-slaver-01 /bin/bash

访问mysql数据库
mysql -uroot -proot

授权root可以远程访问,为了方便连接使用
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
flush privileges;

设置主库连接
changer master to
master_host='192.168.56.10'
master_user='backup'
master_password='123456'
master_log_file='mysql-bin.000001'
master_log_pos=0
master_port=3307

启动从库同步
start slave;

查看从库的状态
show slave status\G;

可以使用kubesphere快速完成MySQL部署

  • 有状态服务抽取配置为ConfigMap
  • 有状态服务必须使用PVC持久化存储数据
  • 服务集群内访问使用DNS提供稳定的域名

1.2 通过KubeSphere实现MySQL主从复制部署

1.2.1 持久存储准备

1.2.1.1 master节点存储

在这里插入图片描述

1.2.1.2 slave节点存储

在这里插入图片描述

1.2.2 配置文件准备

1.2.2.1 master节点配置文件

在这里插入图片描述

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

server_id=1
log_bin=mysql-bin
read-only=0
binlog-do-db=mall_oms
binlog-do-db=mall_pms
binlog-do-db=mall_sms
binlog-do-db=mall_ums
binlog-do-db=mall_wms

replicate-ignore-db=mysql
replicate-ignore-db=sys
replicate-ignore-db=information_schema
replicate-ignore-db=performance_schema
1.2.2.2 slave节点配置文件

在这里插入图片描述

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

server_id=2
log_bin=mysql-bin
read-only=1
binlog-do-db=mall_oms
binlog-do-db=mall_pms
binlog-do-db=mall_sms
binlog-do-db=mall_ums
binlog-do-db=mall_wms

replicate-ignore-db=mysql
replicate-ignore-db=sys
replicate-ignore-db=information_schema
replicate-ignore-db=performance_schema

1.2.3 mysql管理员root用户密码

在这里插入图片描述

1.2.4 master部署

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

# dig -t a mysql-master.sangomall.svc.cluster.local. @10.96.0.10

1.2.5 slaver部署

在这里插入图片描述

在这里插入图片描述

# dig -t a mysql-slave.sangomall.svc.cluster.local. @10.96.0.10

1.2.6 MySQL主从复制

1.2.6.1 MySQL Master节点授权

在这里插入图片描述

mysql>grant replication slave on *.* to 'backup'@'%' identified by '123456';
mysql>show master status\G;
1.2.6.2 MySQL Slave配置

在这里插入图片描述

mysql>change master to
master_host='mysql-master.sangomall.svc.cluster.local.',
master_user='backup',
master_password='123456',
master_log_file='mysql-bin.000003',
master_log_pos=439,
master_port=3306;
mysql>start slave;
mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: mysql-master.sangomall.svc.cluster.local.
                  Master_User: backup
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000003
          Read_Master_Log_Pos: 439
               Relay_Log_File: mysql-slave-v1-0-relay-bin.000002
                Relay_Log_Pos: 652
        Relay_Master_Log_File: mysql-bin.000003
             Slave_IO_Running: Yes  一定要为Yes
            Slave_SQL_Running: Yes  一定要为Yes
              Replicate_Do_DB:
1.2.6.3 验证

在这里插入图片描述

二、Redis部署

2.1 准备配置PVC

在这里插入图片描述

2.2 准备配置文件

在这里插入图片描述

2.3 部署Redis

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

# dig -t a redis.sangomall.svc.cluster.local. @10.96.0.10

在这里插入图片描述

三、ES&Kibana部署

3.1 elasticsearch pvc准备

在这里插入图片描述

3.2 elasticsearch 配置文件准备

在这里插入图片描述

http.host: 0.0.0.0
discovery.type: single-node
ES_JAVA_OPTS: -Xms64m -Xmx512m

3.3 elasticsearch 部署

在这里插入图片描述
在这里插入图片描述

3.4 kibana部署

ELASTICSEARCH_HOSTS=http://elasticsearch.sangomall.svc.cluster.local.:9200

在这里插入图片描述
在这里插入图片描述

3.5 kibana访问

lb.kubesphere.io/v1alpha1: openelb
protocol.openelb.kubesphere.io/v1alpha1: layer2
eip.openelb.kubesphere.io/v1alpha2: layer2-eip
[root@dnsserver ~]# cat /var/named/msb.com.zone
$TTL 1D
@       IN SOA  msb.com admin.msb.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       NS      ns.msb.com.
ns      A       192.168.10.145
harbor  A       192.168.10.146
reg-test        A       192.168.10.72
kibana  A       192.168.10.73
[root@dnsserver ~]# systemctl restart named

在这里插入图片描述

四、RabbitMQ部署

4.1 RabbitMQ持久存储准备 PVC

在这里插入图片描述

4.2 RabbitMQ部署

在这里插入图片描述

在这里插入图片描述

4.3 RabbitMQ访问

在这里插入图片描述

五、Nacos部署

5.1 Nacos Server数据持久存储 PVC

在这里插入图片描述

5.2 Nacos Server部署

在这里插入图片描述

MODE: standalone

在这里插入图片描述

# dig -t a nacos-server.sangomall.svc.cluster.local. @10.96.0.10

5.3 Nacos Server访问

在这里插入图片描述

[root@dnsserver ~]# cat /var/named/msb.com.zone
$TTL 1D
@       IN SOA  msb.com admin.msb.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       NS      ns.msb.com.
ns      A       192.168.10.145
harbor  A       192.168.10.146
nacos-server    A       192.168.10.72 添加主机记录
[root@dnsserver ~]# systemctl restart named

六、链路跟踪服务 zipkin

6.1 依赖服务检查

在这里插入图片描述

# dig -t a elasticsearch.sangomall.svc.cluster.local. @10.96.0.10

6.2 zipkin部署

在这里插入图片描述

STORAGE_TYPE: elasticsearch
ES_HOSTS: elasticsearch.sangomall.svc.cluster.local.:9200
# dig -t a zipkin-server.sangomall.svc.cluster.local. @10.96.0.10

6.3 zipkin访问

在这里插入图片描述

[root@dnsserver ~]# cat /var/named/msb.com.zone
$TTL 1D
@       IN SOA  msb.com admin.msb.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       NS      ns.msb.com.
ns      A       192.168.10.145
harbor  A       192.168.10.146

zipkin-server    A       192.168.10.72 添加主机记录
[root@dnsserver ~]# systemctl restart named

七、sentinel 流量卫兵

7.1 获取容器镜像

在这里插入图片描述

7.2 sentinel部署

在这里插入图片描述

bladex/sentinel-dashboard:latest
#  dig -t a sentinel-server.sangomall.svc.cluster.local. @10.96.0.10

7.3 sentinel访问

在这里插入图片描述

[root@dnsserver ~]# cat /var/named/msb.com.zone
$TTL 1D
@       IN SOA  msb.com admin.msb.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       NS      ns.msb.com.
ns      A       192.168.10.145
harbor  A       192.168.10.146

sentinel-server    A       192.168.10.72 添加主机记录
[root@dnsserver ~]# systemctl restart named

八、Skywalking部署

8.1 获取容器镜像方法及ES服务确认

8.1.1 获取Skywalking oap server及Skywalking ui容器镜像

在这里插入图片描述

8.1.2 elasticsearch服务确认

在这里插入图片描述

elasticsearch.sangomall.svc.cluster.local.

8.2 Skywalking oap server部署

CPU及内存限制要注意:CPU 500m至1000m,内存 100M至2000M

在这里插入图片描述

SW_STORAGE  elasticsearch

SW_STORAGE_ES_CLUSTER_NODES    elasticsearch.sangomall.svc.cluster.local.:9200

在这里插入图片描述

# dig -t a skywalking-oap-server.sangomall.svc.cluster.local. @10.96.0.10

8.3 Skywalking ui部署

在这里插入图片描述

SW_OAP_ADDRESS: http://skywalking-oap-server.sangomall.svc.cluster.local.:12800

在这里插入图片描述

# dig -t a skywalking-ui.sangomall.svc.cluster.local. @10.96.0.10

8.4 Skywalking ui访问

在这里插入图片描述

[root@dnsserver ~]# cat /var/named/msb.com.zone
$TTL 1D
@       IN SOA  msb.com admin.msb.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       NS      ns.msb.com.
ns      A       192.168.10.145
harbor  A       192.168.10.146
reg-test        A       192.168.10.72
kibana          A       192.168.10.72
rabbitmq        A       192.168.10.72
nacos-server    A       192.168.10.72
zipkin-server   A       192.168.10.72
sentinel-server A       192.168.10.72
skywalking-ui   A       192.168.10.72
[root@dnsserver ~]# systemctl restart named

九、RocketMQ部署

9.1 rocketmq namesrv存储准备

在这里插入图片描述

9.2 rocketmq namesrv部署

在这里插入图片描述

启动命令:
 /bin/bash
 参数:
 mqnamesrv
环境变量
JAVA_OPT_EXT: -Xms512M -Xmx512M -Xmn128m
dig -t a  rocketmq-namesrv.sangomall.svc.cluster.local. @10.96.0.10

9.3 rocketmq broker存储准备

在这里插入图片描述

9.4 rocketmq broker部署

在这里插入图片描述

启动命令:
/bin/bash

参数:
mqbroker,-n,rocketmq-namesrv.sangomall.svc.cluster.local.:9876
JAVA_OPT_EXT: -server -Xms128m -Xmx128m -Xmn128m
NAMESRV_ADDR: rocketmq-namesrv.sangomall.svc.cluster.local.:9876

9.5 rocketmq dashboard部署

在这里插入图片描述

JAVA_OPTS: -Drocketmq.namesrv.addr=rocketmq-namesrv.sangomall.svc.cluster.local.:9876

9.6 rocketmq dashboard创建应用路由

在这里插入图片描述

9.7 rocketmq dashboard访问

[root@dnsserver ~]# cat /var/named/msb.com.zone
$TTL 1D
@       IN SOA  msb.com admin.msb.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       NS      ns.msb.com.
ns      A       192.168.10.145
harbor  A       192.168.10.146
reg-test        A       192.168.10.72
kibana          A       192.168.10.72
rabbitmq        A       192.168.10.72
nacos-server    A       192.168.10.72
zipkin-server   A       192.168.10.72
sentinel-server A       192.168.10.72
skywalking-ui   A       192.168.10.72
rocketmq-dashboard      A       192.168.10.72
[root@dnsserver ~]# systemctl restart named

在这里插入图片描述

更多推荐

《计算机视觉中的多视图几何》笔记(3)

3ProjectiveGeometryandTransformationsof3D这章主要讲的是3D的射影几何,与2D的射影几何差不多。主要区别是:3D射影几何对偶的是点和平面,直线是自对偶的。3D空间中直线有4个自由度,这一现象并不是那么容易直接得出。一种方法是把直线用正交平面两个交点表示。文章目录3Projecti

【Rust 基础篇】Rust 父trait:扩展和组织trait的继承体系

导言Rust是一种以安全性和高效性著称的系统级编程语言,其设计哲学是在不损失性能的前提下,保障代码的内存安全和线程安全。在Rust中,trait是一种用于抽象类型行为的机制。有时候,我们需要在一个trait的基础上扩展更多的行为,或者将多个trait组合起来形成一个更大的trait继承体系。这时,Rust的父trait

vue3 - 前端 Vue 项目提交GitHub 使用Actions自动化部署

GitHubDemo地址在线预览参考文章使用GithubActions发布Vue网站到GithubPage使用GithubActions将Vue项目部署到GithubPages前端使用githubpages部署自己的网站GitHubActions自动化部署前端项目指南前言vue前端项目写好之后,想部署到线上通过在线地址

助力经销商打赢旺季攻坚战,全兴在全国范围内拉开“兴风暴”

执笔|姜姜编辑|萧萧中秋、国庆历来是白酒消费的旺季,也是完成当年任务的关键期,尤其今年“双节”合一,各大食品饮料企业都憋足了劲,白酒促销大戏也轮番上演。作为中国“老八大名酒”之一的全兴酒业谋定而动,以积极奔跑的姿态,不断精耕重点区域地级市场,紧抓双节动销,助力渠道伙伴在白酒旺销季打一场大胜仗。对话金牌酒商,老名酒筑牢大

终于还是熬不住了,转行了,分享一波刚学到的知识吧,字符串的自带函数.py

网传IT行业很难,没错我是真真正正的体验到了(😭)大家好,我原来是在大学自学了java的大部分技术,基本上可以达到企业级开发了,大三一结束我就在浙江杭州开始找工作,找了两个月,中间一共找到过三个关于后端开发的工作,加在一起工作了半个月左右,种种原因都没有继续工作。后来面试了一个Python爬虫做rpa自动化的实习生,

华为云CodeArts Check代码检查服务用户声音反馈集锦(6)

CodeArtsCheck(原CodeCheck),是自主研发的代码检查服务。建立在华为30年自动化源代码静态检查技术积累与企业级应用经验的沉淀之上,为用户提供代码风格、通用质量与网络安全风险等丰富的检查能力,提供全面质量报告、便捷的问题闭环处理帮助企业有效管控代码质量,助力企业成功:感兴趣的小伙伴可以点此>>体验下服

马斯洛需求层次模型分析之云安全浅谈

基于马斯洛需求层次模型,我们可以将互联网云安全建设和运营分析分为五个阶段,每个阶段对应一些关键的安全关键词,以下内容是对这些阶段的浅显分析:第一阶段:基础设施安全(生理需求)在初始阶段,云服务提供商需要确保基础设施的安全性,包括数据中心、网络、系统等方面。这涉及到的关键词有:数据中心安全:确保数据中心物理设施的安全,如

kubernetes(k8s)PVC

概念PVC的全称是:PersistentVolumeClaim(持久化卷声明),PVC是用户存储的一种声明,PVC和Pod比较类似,Pod消耗的是节点,PVC消耗的是PV资源,Pod可以请求CPU和内存,而PVC可以请求特定的存储空间和访问模式。对于真正使用存储的用户不需要关心底层的存储实现细节,只需要直接使用PVC即

【AGC】认证服务开发问题汇总

1.开发者在服务端集成认证服务SDK,想通过验证用户凭据接口来验证从客户端获取的token,在调用过程中响应数据报code203818355的错误解决方案:该错误显示accessToken格式不正确。首先确认Authorization中的accesstoken是通过管理员角色,项目为N/A的ClientID和Clien

【mysql】—— 函数的基本介绍

前言:MySQL是一种常用的关系型数据库管理系统,它提供了许多内置的函数来进行数据操作和处理。本期,我将给大家介绍的就是关于“函数”的相关知识!!!目录(一)日期函数(二)字符串函数(三)数学函数(四)其它函数总结(一)日期函数MySQL提供了一系列用于处理日期和时间的内置函数,可以对日期值进行提取、格式化、计算和比较

企业蓄电池怎么实时监测?这个方法最简单使用!

在这个数字时代,企业对电力的依赖性愈发显著,这使得电池系统成为维持业务连续性的不可或缺的一环。蓄电池监控不仅有助于实时跟踪电池系统的性能和状态,还有助于预测问题,提前采取措施以防止电力中断。它还可以帮助企业降低能源成本,延长电池寿命,提高能源效率,以及满足可持续性和环保目标。客户案例常州某制药公司生产设施在各地内分布,

热文推荐