范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

云原生MySQLonk8s环境部署

  一、概述
  MySQL  是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。这里主要讲mysql部署在k8s上,mysql部署在k8s上的优势主要有以下几点:资源隔离 动态弹性扩缩容 环境一致性 运维方便
  官方文档:https://docs.oracle.com/en-us/iaas/mysql-database/doc/getting-started.html
  MySQL 原理介绍也可以参考我这篇文章:MySQL原理介绍
  二、开始部署(一主两从)
  1)添加源helm repo add bitnami https://charts.bitnami.com/bitnami helm pull bitnami/mysql tar -xf mysql-9.3.3.tgz2)修改配置修改 mysql/values.yaml  ...  image:   registry: myharbor.com   repository: bigdata/mysql   tag: 8.0.30-debian-11-r15  ...  architecture: replication  ...  primary:   persistence:     enabled: true     size: 10Gi     storageClass: "mysql-local-storage"     # 目录需要提前在宿主机上创建     local:     - name: mysql-0       host: "local-168-182-110"       path: "/opt/bigdata/servers/mysql/data/data1"   service:     type: NodePort     nodePorts:       mysql: "30306"  secondary:   replicaCount: 2   persistence:     enabled: true     size: 10Gi     storageClass: "mysql-local-storage"     # 目录需要提前在宿主机上创建     local:     - name: mysql-1       host: "local-168-182-111"       path: "/opt/bigdata/servers/mysql/data/data1"     - name: mysql-2       host: "local-168-182-112"       path: "/opt/bigdata/servers/mysql/data/data1"   service:     type: NodePort     nodePorts:       mysql: "30307"  ...  metrics:   ## @param metrics.enabled Start a side-car prometheus exporter   ##   enabled: true   image:     registry: myharbor.com     repository: bigdata/mysqld-exporter     tag: 0.14.0-debian-11-r33添加 mysql/templates/pv.yaml  {{- range .Values.primary.persistence.local }} --- apiVersion: v1 kind: PersistentVolume metadata:   name: {{ .name }}   labels:     name: {{ .name }} spec:   storageClassName: {{ $.Values.primary.persistence.storageClass }}   capacity:     storage: {{ $.Values.primary.persistence.size }}   accessModes:     - ReadWriteOnce   local:     path: {{ .path }}   nodeAffinity:     required:       nodeSelectorTerms:         - matchExpressions:             - key: kubernetes.io/hostname               operator: In               values:                 - {{ .host }} --- {{- end }}  {{- range .Values.secondary.persistence.local }} --- apiVersion: v1 kind: PersistentVolume metadata:   name: {{ .name }}   labels:     name: {{ .name }} spec:   storageClassName: {{ $.Values.secondary.persistence.storageClass }}   capacity:     storage: {{ $.Values.secondary.persistence.size }}   accessModes:     - ReadWriteOnce   local:     path: {{ .path }}   nodeAffinity:     required:       nodeSelectorTerms:         - matchExpressions:             - key: kubernetes.io/hostname               operator: In               values:                 - {{ .host }} --- {{- end }}添加 mysql/templates/storage-class.yaml  kind: StorageClass apiVersion: storage.k8s.io/v1 metadata:   name: {{ .Values.primary.persistence.storageClass }} provisioner: kubernetes.io/no-provisioner3)开始安装# 创建持久化目录 mkdir -p /opt/bigdata/servers/mysql/data/data1  # 先准备好镜像 docker pull docker.io/bitnami/mysql:8.0.30-debian-11-r15 docker tag docker.io/bitnami/mysql:8.0.30-debian-11-r15 myharbor.com/bigdata/mysql:8.0.30-debian-11-r15 docker push myharbor.com/bigdata/mysql:8.0.30-debian-11-r15  # mysqld-exporter docker pull docker.io/bitnami/mysqld-exporter:0.14.0-debian-11-r33 docker tag docker.io/bitnami/mysqld-exporter:0.14.0-debian-11-r33 myharbor.com/bigdata/mysqld-exporter:0.14.0-debian-11-r33 docker push myharbor.com/bigdata/mysqld-exporter:0.14.0-debian-11-r33  # 开始安装 helm install mysql ./mysql -n mysql --create-namespace
  NOTES NAME: mysql LAST DEPLOYED: Mon Sep 19 23:57:18 2022 NAMESPACE: mysql STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: CHART NAME: mysql CHART VERSION: 9.3.3 APP VERSION: 8.0.30  ** Please be patient while the chart is being deployed **  Tip:    Watch the deployment status using the command: kubectl get pods -w --namespace mysql  Services:    echo Primary: mysql-primary.mysql.svc.cluster.local:3306   echo Secondary: mysql-secondary.mysql.svc.cluster.local:3306  Execute the following to get the administrator credentials:    echo Username: root   MYSQL_ROOT_PASSWORD=$(kubectl get secret --namespace mysql mysql -o jsonpath="{.data.mysql-root-password}" | base64 -d)  To connect to your database:    1. Run a pod that you can use as a client:        kubectl run mysql-client --rm --tty -i --restart="Never" --image  myharbor.com/bigdata/mysql:8.0.30-debian-11-r15 --namespace mysql --env MYSQL_ROOT_PASSWORD=$MYSQL_ROOT_PASSWORD --command -- bash    2. To connect to primary service (read/write):        mysql -h mysql-primary.mysql.svc.cluster.local -uroot -p"$MYSQL_ROOT_PASSWORD"    3. To connect to secondary service (read-only):        mysql -h mysql-secondary.mysql.svc.cluster.local -uroot -p"$MYSQL_ROOT_PASSWORD"    To access the MySQL Prometheus metrics from outside the cluster execute the following commands:      kubectl port-forward --namespace mysql svc/mysql-metrics 9104:9104 &     curl http://127.0.0.1:9104/metrics
  查看pod状态 kubectl get pods,svc -n mysql -owide
  4)测试验证
  【温馨提示】从库(slave)是只读的。就是简单的读写测试,还有就是pod挂了,能否正常拉起等等。这个测试验证比较简单。这里就不一步步的演示了。 5)Prometheus监控
  Prometheus:https://prometheus.k8s.local/targets?search=mysql
  可以通过命令查看采集数据 kubectl get --raw http://10.244.0.74:9104/metrics kubectl get --raw http://10.244.1.125:9104/metrics kubectl get --raw http://10.244.2.178:9104/metrics
  Grafana:https://grafana.k8s.local/
  账号: admin  ,密码通过下面命令获取kubectl get secret --namespace grafana grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
  导入grafana模板,集群资源监控: 7362
  官方模块下载地址:https://grafana.com/grafana/dashboards/
  6)卸载helm uninstall mysql -n mysql   kubectl delete pod -n mysql `kubectl get pod -n mysql |awk "NR>1{print $1}"` --force kubectl patch ns mysql -p "{"metadata":{"finalizers":null}}" kubectl delete ns mysql --force
  这里只是实现了mysql 的主从,没有实现高可用,官方目前没有出mysql ok k8s高可用的实现方案,虽然网上也有高可用的实现方案,但是我们公司没真正去落地使用,所以不予评价网上的高可用的方案,有兴趣的小伙伴可以去试试,其实mysql在大数据领域一般只是作为元数据存储,主挂了,影响不是很大。目前也在研究mysql on k8s 的高可用实现方案,如果后期有mysql on k8s高可用真正落地到生产环境中使用,到时候再来分享一下。MySQL on k8s 环境部署就先这里了,有疑问的小伙伴欢迎给我留言~

你会为了省钱买二手车吗?为了省钱买二手车,不存在的,怎么可能呢?这是我6年前的想法。3年前的我突然买了一部二手车,确切来说是一部准新二手车,新车落地接近13万,但是车主开了1年半卖给我的时候,我砍价砍到了有爱喝酱香酒的老酒友吗,请问有什么年夜饭酱香酒推荐?春节,中国的传统节日,我们都格外的重视,因为是阖家团聚的日子,只要有聚会,自然少不了酒。白的啤的,沿海地区还喝洋酒红酒,而在我们茅台镇喝的自然也就是酱香白酒。酱香白酒品类很多,我一下一部手机,你会买华为还是苹果?就因为华为的强大。得到了国人自发的认可与尊重与支持。有人说这是华为的海军。那些在网络上整天抹黑华为,抹黑国货那些人是不是美帝跟西方的走狗呢????我想问,华为请的代言人跟高管有谁说谁最记得你的生日?最记得你生日的往往不是你最亲近的人,而是银行保险公司通讯公司歌华有线汽车4s店,这些利益相关的人!可惜他们记得的却不是我真实的生日,怎么回事那?我妈生我的那一天,同院老徐太太生了一有哪些大学听着像985高校,但其实是普通一本?江西省就有两所大学听着非常像985211高校,但在全国范围来讲它们只是普通的一本大学!虽然是普通一本大学,但是实力也不容小觑。第一所东华理工大学。很多人会分不清东华理工大学和华东理本人经常运动深呼吸,持续有一年多了,能看到六块腹肌,但一直没练出腹肌,如何突破?恭喜你已经完成了完美腹肌的第一步(呼吸训练)。当腹肌内收的功能很强后,你的腰线应该已经出来了。如果你感觉腹肌不是很清晰,那第二步就是腹肌的功能性训练。也就是你需要强化它的力量。网上当初湖人给了800万合同挽留易建联,为何阿联仍然执意离开?易建联是当今中国男篮的绝对领袖,曾经也因为天赋异禀被雄鹿以6号签身份选中。很多人期待阿联能够继承姚明的衣钵在NBA闯出一番天地,但最终却因为性格腼腆语言沟通伤病毁掉了自己NBA的职怀孕头两个月可以吃虾吗?孕前期能吃虾?1。只要孕妇不过敏是可以吃的。因为虾含有丰富的镁,镁对心脏活动具有非常重要的调节作用,且虾肉质松软,易消化,富含磷钙,对胎儿和孕妇都是有好处的,只要注意适量即可。2。婴儿晚上不睡觉怎么办?婴儿晚上不睡觉怎么办?婴儿晚上不睡觉家长需要寻找原因,然后处理,主要区分生理性原因还是病理性原因。生理性中看是否是因为饿了尿布太湿衣服太紧太热等情况引起。及时哺乳更换尿布,安抚婴儿湿疹一般多久会消失?湿疹一股多久会消失?如果单独回答这个湿疹的消失时间,一般治疗,干预后就是37天就会缓解。用药的情况最快二天之后有好转,如果热毒湿疹其实是戒口就会好的快,因为湿疹是病,如果作为病来医有没有刚开始看片名觉得是烂片,但看了几集便一发不可收拾的剧?毛骗遇到王沥川讲述了一个来自瑞士的有点残疾的建筑设计师王沥川和一个在校大学生谢小秋的爱情故事。刚开始看的时候,觉得女主角也不是很漂亮,并且情节也很俗套,就是总裁爱上灰姑娘的故事。看
39万人血本无归!创始人卷款138亿跑路被抓或面临超4万年监禁币圈套路深。在币圈,用户无法提现虚拟货币交易所跑路等屡见不鲜。一家虚拟货币平台创始人被捕的消息,又在沉寂许久的币圈掀起风浪。近日,带着20亿美元跑路的虚拟货币交易平台Thodex的西王集团入围2022年山东民营企业100强列第26位山东省工商联公示了2022年山东民营企业100强入围名单,西王集团顺利上榜,名列第26位。据悉,2022年山东民营企业100强发布活动,由省工商联省科技厅省工业和信息化厅省人力资源销售额连续三月霸榜达20亿,新东方准备孵化更多董宇辉俞敏洪说允许东方甄选每年亏一个亿,但今年就盈利了。文中国企业家记者赵东山编辑李薇头图来源微博截图我特别希望我能勤奋聪明一些,等新东方好的时候,把他们再接回来。6月15日,在一次东方淮安楼市一周大事,有话讲又到了开学季,神兽归笼,家长们终于结束了为期两个月的亲子夏令营。今年军训的学生应该很开心,天气终于没那么热了,早晚甚至还有点冷。看看这一周,淮安楼市发生了什么。18月销售榜单出炉,民进党当局已沦为美政客攫取私利的提款机民进党当局已沦为美政客攫取私利的提款机(日月谈)美国共和党参议员葛理汉今年4月窜台时,曾当面要求台湾地区领导人蔡英文购买24架波音787客机,当电视画面流出,岛内舆论为之哗然,民进俄对华天然气出口,以卢布和人民币5050比例结算来源环球网据俄罗斯卫星通讯社消息,俄总统普京当地时间7日表示,俄罗斯天然气工业股份公司(俄气公司)和中国合作伙伴已决定以卢布和人民币5050的比例支付天然气供应费用。普京7日出席东1964年中国原子弹试爆成功,伟人先封锁消息,率先通知日本中国原子弹爆炸成功后,为何要第一个通知日本?原来是迫不得已。1964年10月16日随着中国一声震天动地的爆炸,炸出了世界第五个有核国家。这一炸,炸得美国春心荡漾,炸的日本人心惶惶。北京楼市城六区之外,没有房地产,此文管十年京房会拥有十年以上楼市实操经验,已为超过11000个购房家庭提供投资购房建议,是北京极少能从宏观市场切入微观市场每一个交易环节的实战专家累计实地勘查社区超10000个,1500余次北京楼市央行组织了一张网,我们都在局中京房会拥有十年以上楼市实操经验,已为超过11000个购房家庭提供投资购房建议,是北京极少能从宏观市场切入微观市场每一个交易环节的实战专家累计实地勘查社区超10000个,1500余次胡同里的人情味儿,横扫西城,砖塔儿胡同,寻找地道老北京缸瓦市,白塔寺,这是西城非常有名的两个地儿,这两个地方对于很多北京人来说,是既熟悉又陌生,熟悉的是地名儿,陌生的是其中隐含的各种讲究,比方说缸瓦市的这座万松老人塔,真的是大塔套小塔智能家居火了?转转买品质二手家电,躺平还省钱进门时,无需钥匙按下指纹就能开锁,开门的同时屋内灯光亮起睡觉时,一声令下就能关闭家中的所有灯光休息时,扫地机器人会自动打扫卫生随着科技进步,诸如此类的场景不断在消费者的生活中出现,