参考官网:https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/

20-nproc.conf

*          soft    nproc     unlimited
root soft nproc unlimited

limits.conf

# End of file
* soft core
* hard core
* soft nofile
* hard nofile

senyint.conf

[root@harbor mysql5.7.20]# cat  senyint.cnf
[mysqld]
server-id =
port =
user = mysql
autocommit =
character_set_server=utf8mb4
skip_name_resolve =
max_connections =
max_connect_errors =
transaction_isolation = READ-COMMITTED
join_buffer_size = 128M
tmp_table_size = 64M
tmpdir = /tmp
max_allowed_packet = 64M
interactive_timeout =
wait_timeout =
read_buffer_size = 16M
read_rnd_buffer_size = 8M
sort_buffer_size = 8M
explicit_defaults_for_timestamp=true

Dockerfile

[root@harbor mysql5.7.20]# cat Dockerfile
FROM docker.io/mysql:5.7. MAINTAINER fengjian <fengjian@senyint.com>
ENV TZ "Asia/Shanghai"
ENV TERM xterm
ENV MALLOC_ARENA_MAX= ADD localtime /etc/
ADD -nproc.conf /etc/security/limits.d/
ADD limits.conf /etc/security/
ADD senyint.cnf /etc/mysql/mysql.conf.d/
ADD senyint.cnf /etc/mysql/conf.d/
#RUN rm /var/lib/mysql/lost+found -rf

docker build -t 192.168.200.10/source/mysql:5.7.20 .
 docker push 192.168.200.10/source/mysql:5.7.20

部署到k8s中

[root@master1 mysql]# cat mysql-secret.yaml
apiVersion: v1
kind: Secret
metadata:
name: mysql-secrets
namespace: prodpay
#type: Opaque
data:
root-password: QWJjZCwxMj222M0
[root@master1 mysql]# cat mysql_pvc.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
namespace: prodpay
name: mysql-pvc
spec:
storageClassName: ceph-rbd-dalianpay
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Gi
[root@master1 mysql]# cat mysql.yaml
apiVersion: apps/v1beta2
kind: Deployment
metadata:
name: mysql
namespace: prodpay
spec:
selector:
matchLabels:
app: mysql
replicas:
template:
metadata:
labels:
app: mysql
spec:
containers:
- image: 192.168.200.10/source/mysql:5.7.
imagePullPolicy: Always
name: mysql
#command: ["rm","-rf","/var/lib/mysql/lost+found"]
ports:
- containerPort:
resources:
requests:
cpu:
memory: 4Gi
limits:
cpu:
memory: 8Gi
env:
- name: MYSQL_ROOT_PASSWORD
valueFrom:
secretKeyRef:
name: mysql-secrets
key: root-password
volumeMounts:
- mountPath: /var/lib/mysql
subPath: mysql #如果不加subpath,那么就会报[ERROR] --initialize specified but the data directory has files in it. Aborting.目录不为空,使用subpath基础表信息会记录在/var/lib/mysql/mysql下
name: data
volumes:
- name: data
persistentVolumeClaim:
claimName: mysql-pvc ---
apiVersion: v1
kind: Service
metadata:
name: mysql
namespace: prodpay
spec:
ports:
- name: mqsql
port:
targetPort:
selector:
app: mysq

k8s mysql 单点部署的更多相关文章

  1. 在k8s集群部署SonarQube

    目录 1.2.存储环境 1.3.sonarqube版本 2.部署sonarqube 2.1.部署PostgreSQL 2.2.部署SonarQube 2.3.访问检查 SonarQube 是一款用于代 ...

  2. Ubuntu14.04 Django Mysql安装部署全过程

    Ubuntu14.04 Django Mysql安装部署全过程   一.简要步骤.(阿里云Ubuntu14.04) Python安装 Django Mysql的安装与配置 记录一下我的部署过程,也方便 ...

  3. 【转】Nginx+php-fpm+MySQL分离部署详解

    转:http://www.linuxidc.com/Linux/2015-07/120580.htm Nginx+php-fpm+MySQL分离部署详解 [日期:2015-07-26] 来源:Linu ...

  4. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...

  5. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之集群部署环境规划(一)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.环境规划 软件 版本 ...

  6. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...

  7. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之flanneld网络介绍及部署(三)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.flanneld介绍 ...

  8. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之部署master/node节点组件(四)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 ...

  9. (视频)asp.net core系列之k8s集群部署视频

    0.前言 应许多网友的要求,特此录制一下k8s集群部署的视频.在录制完成后发现视频的声音存在一点瑕疵,不过不影响大家的观感. 一.视频说明 1.视频地址: 如果有不懂,或者有疑问的欢迎留言.视频分为两 ...

随机推荐

  1. vue.js 使用时间组件 日期少一天的问题

    <el-form :inline="true" class="demo-form-inline padding-top-20"> <el-fo ...

  2. T-SQL基础(一)之简单查询

    名词解释 SQL: Structured Query Language,结构化查询语言,是一种在关系型数据库中用于管理数据的标准语言.SQL是一种声明式编程语言,即只需表明需要什么而无需关注实现细节( ...

  3. jQuery文档操作方法对比和src写法

    jQuery文档操作方法对比 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  4. Apollo源码阅读笔记(二)

    Apollo源码阅读笔记(二) 前面 分析了apollo配置设置到Spring的environment的过程,此文继续PropertySourcesProcessor.postProcessBeanF ...

  5. 安装SQL server 2016遇到问题

    microsoft R open https://mran.microsoft.com/download/ https://mran.revolutionanalytics.com/download/ ...

  6. cors解决跨域问题

    在作前后端分离的时候,我们总是要做跨域处理. 使用 express 框架搭建项目的时候可以设置如下: app.use(function (req, res, next) { res.setHeader ...

  7. Linux 下Shell变量,环境变量的联系与区别

    Linux下Shell变量,环境变量的联系与区别 by:授客 QQ:1033553122 1.  简介 linux下的变量可分成两种:Shell变量和环境变量. Shell变量,又称本地变量,包括私有 ...

  8. JavaScript大杂烩16 - 推荐实践

    JavaScript部分 1. 总是使用===来进行相等判断 原因:由于 == 和 != 操作符存在类型转换问题,而为了保持代码中数据类型的完整性,推荐使用全等 === 和不全等 !=== 操作符. ...

  9. python第七天-作业[购物车]

    作业要示: 购物车程序:启动程序后,输入用户名密码后,如果是第一次登录,让用户输入工资,然后打印商品列表允许用户根据商品编号购买商品用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 可随时退出 ...

  10. C#使用Aforge调用摄像头拍照

    一. 新建一个Winform项目 二.使用Nuget添加引用 安装下图中红色框住的两个程序包 安装完后发现安装了如下图的程序包,这是因为上述两个程序包存在对其它程序包的依赖. 三.编写程序 1. 窗体 ...