K8s部署单机mysql

文章目录

  • 一、K8s部署单机mysql
    • 1.1 说明
    • 1.2 不足
  • 二、部署
  • 三、检查

一、K8s部署单机mysql

1.1 说明

  1. 定制配置数据存放在configMap
  2. mysql数据放在/opt/mysql目录下(/opt/mysql目录需要事先创建)
  3. root账号密码使用环境变量env
  4. 服务暴露方式为nodePort,端口30336

1.2 不足

  1. 这里为了简单,PV使用了hostPath,所以需要将pod固定在一个node上。可考虑使用nfs。

mysql57_deploy.yml

## single mysql deployment 
apiVersion: v1
kind: Namespace
metadata:name: mysql-test
---
apiVersion: v1
kind: ConfigMap
metadata:name: mysql-confignamespace: mysql-test
data:my.cnf: |-[client]default-character-set=utf8mb4[mysql]default-character-set=utf8mb4[mysqld] max_connections=2000default-time_zone='+8:00'character-set-server=utf8mb4collation-server=utf8mb4_unicode_ci
---
apiVersion: v1
kind: PersistentVolume
metadata:name: mysql-pv
spec:accessModes:- ReadWriteOncecapacity:storage: 10GistorageClassName: mysql-localhostPath:path: /opt/mysql
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: mysql-pvcnamespace: mysql-test
spec:accessModes:- ReadWriteOnceresources:requests:storage: 1Gilimits:storage: 10GistorageClassName: mysql-local
---
apiVersion: apps/v1
kind: Deployment
metadata:name: mysql-deploymentnamespace: mysql-test
spec:replicas: 1selector:matchLabels:app: mysqltemplate:metadata:labels:app: mysqlspec:containers:- name: mysql57env:- name: MYSQL_ROOT_PASSWORDvalue: Nssg1234*!image: docker.io/library/mysql:5.7.42imagePullPolicy: IfNotPresentresources:requests:cpu: 500mmemory: 512Milimits:cpu: 1000mmemory: 1GilivenessProbe:exec:command: ["mysqladmin", "-uroot", "-p${MYSQL_ROOT_PASSWORD}", "ping"]initialDelaySeconds: 20readinessProbe:exec:command: ["mysqladmin", "-uroot", "-p${MYSQL_ROOT_PASSWORD}", "ping"]initialDelaySeconds: 10volumeMounts:- name: datamountPath: /var/lib/mysql- name: configmountPath: /etc/mysql/conf.d/my.cnfsubPath: my.cnf- name: localtimemountPath: /etc/localtimevolumes:- name: datapersistentVolumeClaim:claimName:mysql-pvc- name: configconfigMap:name: mysql-config- name: localtimehostPath:path: /etc/localtime
---
apiVersion: v1
kind: Service
metadata:name: mysql-svcnamespace: mysql-test
spec:selector:app: mysqltype: NodePortports:- name: mysqlport: 3306targetPort: 3306nodePort: 30336

二、部署

mkdir /opt/mysql
ctr -n k8s.io i pull docker.io/library/mysql:5.7.42
kubectl apply -f mysql57_deploy.yml

三、检查

kubectl get deployment -n mysql-test
kubectl get pods -n mysql-test
kubectl exec -it [pod_name] -n mysql-test -- /bin/sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/58790.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ViewModel的基本使用

目录 一、基本使用二、ViewModel DataBinding LiveData结合使用1. java版本2. kotlin版本 一、基本使用 MyViewModel.kt package com.example.myviewmodelimport androidx.lifecycle.ViewModelclass MyViewModel : ViewModel() {// 数据放这 进行横竖屏切换不会丢失var num…

Android Looper Handler 机制浅析

最近想写个播放器demo,里面要用到 Looper Handler,看了很多资料都没能理解透彻,于是决定自己看看相关的源码,并在此记录心得体会,希望能够帮助到有需要的人。 本文会以 猜想 log验证 的方式来学习 Android Looper Ha…

低代码的探索之路

Gartner发布报告指出,2023年全球低代码开发平台市场规模将达到345亿美元,比2022年增长20%。 目前,国内外已经有许多低代码平台,包括OutSystems、Mendix、Appian、Microsoft Power App等。这些平台提供了丰富的功能和工具&#xff…

almaLinux 8 安装 xxdiff 5.1

almaLinux 安装 xxdiff XXdiff——比较和合并工具下载安装安装qt5 XXdiff——比较和合并工具 XXdiff是一款免费、强大的文件和目录比较及合并工具,可以在类似Unix的操作系统上运行,比如Linux、Solaris、HP/UX、IRIX和DEC Tru64。XXdiff的一大局限就是不…

【【萌新的STM32-22中断概念的简单补充】】

萌新的STM32学习22-中断概念的简单补充 我们需要注意的是这句话 从上面可以看出,STM32F1 供给 IO 口使用的中断线只有 16 个,但是 STM32F1 的 IO 口却远远不止 16 个,所以 STM32 把 GPIO 管脚 GPIOx.0~GPIOx.15(xA,B,C,D,E,F,G)分别对应中断…

Redis缓存穿透和雪崩

Redis缓存穿透和雪崩 Redis缓存的使用,极大的提升了应用程序的性能和效率,特别是数据查询方面。但同时,它也带来了一些问题。其中,最要害的问题,就是数据的一致性问题,从严格意义上讲,这个问题…

迁移学习:实现快速训练和泛化的新方法

文章目录 迁移学习的原理迁移学习的应用快速训练泛化能力提升 迁移学习的代码示例拓展应用与挑战结论 🎉欢迎来到AIGC人工智能专栏~迁移学习:实现快速训练和泛化的新方法 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页:IT陈寒的博…

自定义list工具类 ListUtils.java

自定义list工具类 ListUtils.java 简介 自定义list工具类 api list中是否有完全相同的元素? 如果有 返回true, 如果没有返回false; checkRepeat(List list);list 转 String,list -> “1,2,3,4”; list2String(List list); 源码 import java.uti…

机器学习-神经网络(西瓜书)

神经网络 5.1 神经元模型 在生物神经网络中,神经元之间相互连接,当一个神经元受到的外界刺激足够大时,就会产生兴奋(称为"激活"),并将剩余的"刺激"向相邻的神经元传导。 神经元模型…

微信开发之一键创建标签的技术实现

简要描述: 添加标签 请求URL: http://域名地址/addContactLabel 请求方式: POST 请求头Headers: Content-Type:application/jsonAuthorization:login接口返回 参数: 参数名必选类型说明…

paddle 1-高级

目录 为什么要精通深度学习的高级内容 高级内容包含哪些武器 1. 模型资源 2. 设计思想与二次研发 3. 工业部署 4. 飞桨全流程研发工具 5. 行业应用与项目案例 飞桨开源组件使用场景概览 框架和全流程工具 1. 模型训练组件 2. 模型部署组件 3. 其他全研发流程的辅助…

单变量图的类型与直方图绘图基础

文章目录 单变量图的类型1.直方图(histogram plot)2.密度图(density plot)3.Q-Q 图(Quantile- Quantile plot,又称分位图)4.P-P 图(Probability-Probability plot)5.经验…

基于 CentOS 7 构建 LVS-DR 群集。配置nginx负载均衡。

1、基于 CentOS 7 构建 LVS-DR 群集。 [root132 ~]# nmcli c show NAME UUID TYPE DEVICE ens33 c89f4a1a-d61b-4f24-a260-6232c8be18dc ethernet ens33 [root132 ~]# nmcli c m ens33 ipv4.addresses 192.168.231.200/24 [roo…

8 python的迭代器和生成器

概述 在上一节,我们介绍了Python的模块和包,包括:什么是模块、导入模块、自定义模块、__name__、什么是包、创建包、导入包等内容。在这一节中,我们将介绍Python的迭代器和生成器。在Python中,迭代器是一个非常重要的概…

windows下如何搭建属于自己的git服务器

前一阵子公司需要,领导让我给我们技术部搭建一个git服务器。以前看过教程,但自己没动手做过,开始按照网上的教程来,但搭建过程中发现还是不够详细,今天给大家一个比较详细的,希望对大家有帮助。 高能预警&a…

微软用 18 万行 Rust 重写了 Windows 内核

微软正在使用 Rust 编程语言重写其核心 Windows 库。 5 月 11 日——Azure 首席技术官 Mark Russinovich 表示,最新的 Windows 11 Insider Preview 版本是第一个包含内存安全编程语言 Rust 的版本。 “如果你参加了 Win11 Insider 环,你将在 Windows 内…

ES6之浅尝辄止1:class的用法

class是es6新增的一种语法糖,用于简化js中构造类的过程 1.es5中如何构造类? function Person(name,age){this.name name;this.age age; } Person.prototype.sayName function(){return this.name; } let p1 new Person(小明,22);2.es6中的class方式…

DC/DC开关电源学习笔记(二)开关电源的分类

(二)开关电源的分类 1.DC/DC类开关电源2.AC/DC变换器3.电路结构分类4.功率开关管分类5.电路拓扑分类 开关电源可分为 AC/DC和DC/DC两大类。 作为二次电源的DC/DC变换器现已实现模块化, 且设计技术及生产工艺在国内外均已成熟和标准化&#xf…

【微信小程序篇】- 多环境(版本)配置

最近自己在尝试使用AIGC写一个小程序,页面、样式、包括交互函数AIGC都能够帮我完成(不过这里有一点问题AIGC的上下文关联性还是有限制,会经常出现对于需求理解跑偏情况,需要不断的重复强调,并纠正错误,才能得到你想要的…

Python的pymysql模块与MySQL数据库的互动:基础与实例

Python的pymysql模块与MySQL数据库的互动:基础与实例 一、连接数据库二、创建游标三、执行SQL命令四、关闭连接 在Python的世界里,操作MySQL数据库最常用的库就是pymysql。 pymysql是一个灵活且易于使用的库,它允许我们以Python的方式操作MyS…