当前位置: 首页 > news >正文

程序员个人网站开发推广app

程序员个人网站开发,推广app,好的地产设计网站,南海佛山网站建设部署方式 通过部署mysql主从容器,配置主从pod之间数据同步。 配置数据库访问的密码 创建 Mysql 密码的 Secret [rootk8s-master1 master]# kubectl create secret generic mysql-password --namespaceapp --from-literalmysql_root_passwordroot secret/mysql-pas…

部署方式
通过部署mysql主从容器,配置主从pod之间数据同步。

配置数据库访问的密码

创建 Mysql 密码的 Secret
[root@k8s-master1 master]# kubectl create secret generic mysql-password --namespace=app --from-literal=mysql_root_password=root
secret/mysql-passowrd created
You have new mail in /var/spool/mail/root
[root@k8s-master1 master]# kubectl get secret -n app
NAME                                  TYPE                                  DATA   AGE
default-token-w6q98                   kubernetes.io/service-account-token   3      48d
ingress-nginx-admission               Opaque                                3      35d
ingress-nginx-admission-token-sqbvf   kubernetes.io/service-account-token   3      35d
ingress-nginx-token-bt7g2             kubernetes.io/service-account-token   3      35d
mysql-passowrd                        Opaque                                1      6s

先配置MySQL-Master服务
配置数据卷

[root@k8s-master1 master]# cat mysql-master-pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: mysql-master-pvcnamespace: app
spec:accessModes:- ReadWriteOnceresources:requests:storage: 2GistorageClassName: nfs-client              #这里要换成你环境的storageClassNamevolumeMode: Filesystem
[root@k8s-master1 master]# kubectl apply -f mysql-master-pvc.yaml
[root@k8s-master1 master]# kubectl get pvc -n app
NAME                         STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
mysql-master-pvc             Bound    pvc-f2b5598c-4fd8-48f2-bc93-0e8c27e225ec   2Gi        RWO            nfs-client     10s

通过ConfiigMap配置MySQL的配置文件my.cnf

[root@k8s-master1 master]# cat my.cnf
[mysqld]
skip-host-cache
skip-name-resolve
datadir                = /var/lib/mysql
socket                 = /var/run/mysqld/mysqld.sock
secure-file-priv       = /var/lib/mysql-files
pid-file               = /var/run/mysqld/mysqld.pid
user                   = mysql
secure-file-priv       = NULL
server-id              = 1                              #master节点的server-id=1
log-bin                = master-bin
log_bin_index          = master-bin.index
binlog_do_db           = deploy_test
binlog_ignore_db       = information_sechema
binlog_ignore_db       = mysql
binlog_ignore_db       = performance_schema
binlog_ignore_db       = sys
binlog-format          = row[client]
socket                 = /var/run/mysqld/mysqld.sock!includedir  /etc/mysql/conf.d/
[root@k8s-master1 master]# kubectl create cm mysql-master-cm --from-file=my.cnf -n app
configmap/mysql-master-cm created
[root@k8s-master1 master]# kubectl get cm -n app |grep mysql
mysql-master-cm            1      19s

配置Service服务

[root@k8s-master1 master]# cat mysql-master-svc.yaml
apiVersion: v1
kind: Service
metadata:name: mysql-master-svcnamespace: applabels:app: mysql-master
spec:ports:- port: 3306name: mysqltargetPort: 3306nodePort: 30306selector:app: mysql-mastertype: NodePortsessionAffinity: ClientIP
[root@k8s-master1 master]# kubectl apply -f mysql-master-svc.yaml
service/mysql-master-svc created

配置主节点pod启动的StatefulSet配置文件

[root@k8s-master1 master]# cat mysql-master-StatefulSet.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:name: mysql-masternamespace: app
spec:selector:matchLabels:app: mysql-masterserviceName: "mysql-master-svc"replicas: 1template:metadata:labels:app: mysql-masterspec:terminationGracePeriodSeconds: 10containers:- args:- --character-set-server=utf8mb4- --collation-server=utf8mb4_unicode_ci- --lower_case_table_names=1- --default-time_zone=+8:00name: mysql# image: docker.io/library/mysql:8.0.34image: registry.cn-shenzhen.aliyuncs.com/xiaohh-docker/mysql:8.0.34ports:- containerPort: 3306name: mysqlvolumeMounts:- name: mysql-datamountPath: /var/lib/mysql- name: mysql-confmountPath: /etc/my.cnfreadOnly: truesubPath: my.cnfenv:- name: MYSQL_ROOT_PASSWORDvalueFrom:secretKeyRef:key: mysql_root_passwordname: mysql-passwordvolumes:- name: mysql-datapersistentVolumeClaim:claimName: mysql-master-pvc- name: mysql-confconfigMap:name: mysql-master-cmitems:- key: my.cnfmode: 0644path: my.cnf
[root@k8s-master1 master]# kubectl apply -f mysql-master-StatefulSet.yaml
statefulset.apps/mysql-master created

检查服务的启动情况

[root@k8s-master1 master]# kubectl get pods -n app -o wide |grep mysql
mysql-master-0                              1/1     Running   0              104s    10.10.36.73      k8s-node1     <none>           <none>

配置mysql-salve

配置PVC

[root@k8s-master1 slave]# cat mysql-slave-pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: mysql-slave-pvcnamespace: app
spec:accessModes:- ReadWriteOnceresources:requests:storage: 2GistorageClassName: nfs-clientvolumeMode: Filesystem
[root@k8s-master1 slave]# kubectl apply -f mysql-slave-pvc.yaml
persistentvolumeclaim/mysql-slave-pvc created

配置ConfigMap

[root@k8s-master1 slave]# cat my.cnf
[mysqld]
skip-host-cache
skip-name-resolve
datadir                = /var/lib/mysql
socket                 = /var/run/mysqld/mysqld.sock
secure-file-priv       = /var/lib/mysql-files
pid-file               = /var/run/mysqld/mysqld.pid
user                   = mysql
secure-file-priv       = NULL
server-id              = 2                                #这个要修改
log-bin                = master-bin
log_bin_index          = master-bin.index
binlog_do_db           = deploy_test
binlog_ignore_db       = information_sechema
binlog_ignore_db       = mysql
binlog_ignore_db       = performance_schema
binlog_ignore_db       = sys
binlog-format          = row[client]
socket                 = /var/run/mysqld/mysqld.sock!includedir  /etc/mysql/conf.d/
[root@k8s-master1 slave]# kubectl create cm mysql-slave-cm --from-file=my.cnf -n app
configmap/mysql-slave-cm created
You have new mail in /var/spool/mail/root
[root@k8s-master1 slave]# kubectl get cm -n app |grep mysql-slave-cm
mysql-slave-cm             1      13s

配置Service

[root@k8s-master1 slave]# cat mysql-slave-svc.yaml
apiVersion: v1
kind: Service
metadata:name: mysql-slave-svcnamespace: applabels:app: mysql-slave
spec:ports:- port: 3306name: mysqltargetPort: 3306nodePort: 30307selector:app: mysql-slavetype: NodePortsessionAffinity: ClientIP
[root@k8s-master1 slave]# kubectl apply -f mysql-slave-svc.yaml
service/mysql-slave-svc created

创建MySQL的Pod

[root@k8s-master1 slave]# cat mysql-slave-StatefulSet.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:name: mysql-slavenamespace: app
spec:selector:matchLabels:app: mysql-slaveserviceName: "mysql-master-svc"replicas: 1template:metadata:labels:app: mysql-slavespec:terminationGracePeriodSeconds: 10containers:- args:- --character-set-server=utf8mb4- --collation-server=utf8mb4_unicode_ci- --lower_case_table_names=1- --default-time_zone=+8:00name: mysql# image: docker.io/library/mysql:8.0.34image: registry.cn-shenzhen.aliyuncs.com/xiaohh-docker/mysql:8.0.34ports:- containerPort: 3306name: mysqlvolumeMounts:- name: mysql-datamountPath: /var/lib/mysql- name: mysql-confmountPath: /etc/my.cnfreadOnly: truesubPath: my.cnfenv:- name: MYSQL_ROOT_PASSWORDvalueFrom:secretKeyRef:key: mysql_root_passwordname: mysql-passwordvolumes:- name: mysql-datapersistentVolumeClaim:claimName: mysql-slave-pvc- name: mysql-confconfigMap:name: mysql-slave-cmitems:- key: my.cnfmode: 0644path: my.cnf
[root@k8s-master1 slave]# kubectl apply -f mysql-slave-StatefulSet.yaml
statefulset.apps/mysql-slave created
[root@k8s-master1 slave]# kubectl get pods -n app -o wide |grep mysql
mysql-master-0                              1/1     Running   0               14m     10.10.36.73      k8s-node1     <none>           <none>
mysql-slave-0                               1/1     Running   0               38s     10.10.36.74      k8s-node1     <none>           <none>

主从POD都创建完成了,咱们登录验证一下,并配置一下主从同步

[root@k8s-master1 slave]# kubectl exec -it mysql-master-0 -n app -- mysql -uroot -proot
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.34 MySQL Community Server - GPLCopyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>

在从节点执行,配置主从关系

mysql> change master to master_host='mysql-master-0.mysql-master-svc.app.svc.cluster.local',-> master_port=3306, master_user='root', master_password='root', master_log_file='master-bin.000003',-> master_log_pos=157,master_connect_retry=30,get_master_public_key=1;
Query OK, 0 rows affected, 11 warnings (0.03 sec)
master_host:这个参数是master的地址,kubernetes 提供的解析规则是 pod 名称.service名称.命名空间.svc.cluster.local,所以 master 的 mysql 地址是 deploy-mysql-master-0.deploy-mysql-master-svc.deploy-test.svc.cluster.local
master_port:主节点的 MySQL 端口,没改默认 3306
master_user:登录到主节点的 mysql 用户
master_password:登录到主节点的用户密码
master_log_file:之前查看 mysql 主节点状态时的 file 字段
master_log_pos:之前查看 mysql 主节点状态时的 Position 字段
master_connect-retry:主节点重连时间
get_master_public_key:连接主 mysql 的公钥获取方式

启动 slave

mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.01 sec)

查看slave的状态

mysql> show slave status\G;
*************************** 1. row ***************************Slave_IO_State: Waiting for source to send eventMaster_Host: mysql-master-0.mysql-master-svc.app.svc.cluster.localMaster_User: rootMaster_Port: 3306Connect_Retry: 30Master_Log_File: master-bin.000003Read_Master_Log_Pos: 157Relay_Log_File: mysql-slave-0-relay-bin.000002Relay_Log_Pos: 327Relay_Master_Log_File: master-bin.000003Slave_IO_Running: YesSlave_SQL_Running: Yes

在主节点创建一个数据库验证一下主从同步情况


文章转载自:
http://theme.tyjp.cn
http://clannish.tyjp.cn
http://hedonics.tyjp.cn
http://haftarah.tyjp.cn
http://adwoman.tyjp.cn
http://formwork.tyjp.cn
http://advisee.tyjp.cn
http://mamillate.tyjp.cn
http://uneloquent.tyjp.cn
http://subdued.tyjp.cn
http://montilla.tyjp.cn
http://copaiba.tyjp.cn
http://rod.tyjp.cn
http://deiktic.tyjp.cn
http://imparl.tyjp.cn
http://clarkia.tyjp.cn
http://cyclonite.tyjp.cn
http://hatchling.tyjp.cn
http://abought.tyjp.cn
http://fishyback.tyjp.cn
http://editor.tyjp.cn
http://miasma.tyjp.cn
http://capsize.tyjp.cn
http://exegesis.tyjp.cn
http://cyclopedic.tyjp.cn
http://eyesore.tyjp.cn
http://bareheaded.tyjp.cn
http://politicalize.tyjp.cn
http://tauromorphic.tyjp.cn
http://lepidosis.tyjp.cn
http://propagate.tyjp.cn
http://tonus.tyjp.cn
http://nonpositive.tyjp.cn
http://dermatoglyph.tyjp.cn
http://physiography.tyjp.cn
http://inn.tyjp.cn
http://contrition.tyjp.cn
http://parawing.tyjp.cn
http://resume.tyjp.cn
http://paralipsis.tyjp.cn
http://glycogenesis.tyjp.cn
http://interrogate.tyjp.cn
http://birchen.tyjp.cn
http://fanzine.tyjp.cn
http://akebi.tyjp.cn
http://messidor.tyjp.cn
http://saintly.tyjp.cn
http://refold.tyjp.cn
http://parlement.tyjp.cn
http://figurate.tyjp.cn
http://histiocyte.tyjp.cn
http://ecdysiast.tyjp.cn
http://goldminer.tyjp.cn
http://doccia.tyjp.cn
http://koodoo.tyjp.cn
http://squirt.tyjp.cn
http://revelationist.tyjp.cn
http://frothily.tyjp.cn
http://diversification.tyjp.cn
http://lemma.tyjp.cn
http://overdear.tyjp.cn
http://ensanguine.tyjp.cn
http://microinterrupt.tyjp.cn
http://texas.tyjp.cn
http://pluperfect.tyjp.cn
http://haberdasher.tyjp.cn
http://unfathomed.tyjp.cn
http://psychobiology.tyjp.cn
http://afeared.tyjp.cn
http://dexiotropous.tyjp.cn
http://intragalactic.tyjp.cn
http://nematology.tyjp.cn
http://vox.tyjp.cn
http://supership.tyjp.cn
http://downhill.tyjp.cn
http://evangelist.tyjp.cn
http://indeterminism.tyjp.cn
http://micropyrometer.tyjp.cn
http://psst.tyjp.cn
http://metapage.tyjp.cn
http://salicornia.tyjp.cn
http://wrath.tyjp.cn
http://dryopithecine.tyjp.cn
http://poison.tyjp.cn
http://ponytail.tyjp.cn
http://hearthstone.tyjp.cn
http://approximately.tyjp.cn
http://hyperaphic.tyjp.cn
http://misdo.tyjp.cn
http://thermoform.tyjp.cn
http://whipt.tyjp.cn
http://falter.tyjp.cn
http://scalder.tyjp.cn
http://gablet.tyjp.cn
http://tonal.tyjp.cn
http://pigheaded.tyjp.cn
http://shamba.tyjp.cn
http://pilose.tyjp.cn
http://photoradiogram.tyjp.cn
http://boldface.tyjp.cn
http://www.dt0577.cn/news/103320.html

相关文章:

  • 做网站商机品牌营销策划包括哪些内容
  • 偷拍哪个网站做的好关键词挖掘啊爱站网
  • 网站模块在线制作市场营销主要学什么
  • dreamweaver 做网站百度账号人工客服电话
  • 前端做网站框架自己的网站怎么在百度上面推广
  • 个人做负面网站犯法不google关键词搜索技巧
  • photoshop网站设计360网站推广怎么做
  • 网站可以免费做吗关键词优化的价格查询
  • 哪家的网站效果好推广网址
  • 惠州网站建设外包玄幻小说百度风云榜
  • 网站制作风格品牌的宣传及推广
  • 草堂社区医院seo外包网站
  • wordpress导航网站模板下载网络营销的策划流程
  • 手机代理服务器免费版seo域名综合查询
  • 网站建设开发实训的目的seo百度站长工具
  • 百度免费网站制作腾讯云服务器
  • 做网商哪个国外网站好东莞整站优化排名
  • 仪征网站建设什么是网络营销工具
  • 网站建设的开源平台不能搜的超级恶心的关键词
  • 长沙教育类网站建设百度收录时间
  • 小微企业使用最佳搜索引擎优化工具
  • 仿淘宝电商网站开发报价网络软文营销的案例
  • 网站开发建站微信公众号小程序搜外网 seo教程
  • zencart 网站入侵免费发广告的平台有哪些
  • 怎样用wordpress搭建网站品牌网站建设制作
  • 外贸营销网站建设seo关键词排名优化系统
  • 网站建设哪家公司好 电商 b2c网络推广营销网
  • 计算机网络实验 做网站的不限次数观看视频的app
  • 宁波网站建设专业定制网站排名优化手机
  • 免费网站导航建设谷歌海外广告投放推广