k8s mysql 单点部署
参考官网: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 单点部署的更多相关文章
- 在k8s集群部署SonarQube
目录 1.2.存储环境 1.3.sonarqube版本 2.部署sonarqube 2.1.部署PostgreSQL 2.2.部署SonarQube 2.3.访问检查 SonarQube 是一款用于代 ...
- Ubuntu14.04 Django Mysql安装部署全过程
Ubuntu14.04 Django Mysql安装部署全过程 一.简要步骤.(阿里云Ubuntu14.04) Python安装 Django Mysql的安装与配置 记录一下我的部署过程,也方便 ...
- 【转】Nginx+php-fpm+MySQL分离部署详解
转:http://www.linuxidc.com/Linux/2015-07/120580.htm Nginx+php-fpm+MySQL分离部署详解 [日期:2015-07-26] 来源:Linu ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录
0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之集群部署环境规划(一)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.环境规划 软件 版本 ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之flanneld网络介绍及部署(三)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.flanneld介绍 ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之部署master/node节点组件(四)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 ...
- (视频)asp.net core系列之k8s集群部署视频
0.前言 应许多网友的要求,特此录制一下k8s集群部署的视频.在录制完成后发现视频的声音存在一点瑕疵,不过不影响大家的观感. 一.视频说明 1.视频地址: 如果有不懂,或者有疑问的欢迎留言.视频分为两 ...
随机推荐
- SpringMVC4+MyBatis+SQL Server2014实现读写分离
前言 基于mybatis的AbstractRoutingDataSource和Interceptor用拦截器的方式实现读写分离,根据MappedStatement的boundsql,查询sql的sel ...
- Spring JDBCTemplate连接SQL Server之初体验
前言 在没有任何框架的帮助下我们操作数据库都是用jdbc,耗时耗力,那么有了Spring,我们则不用重复造轮子了,先来试试Spring JDBC增删改查,其中关键就是构造JdbcTemplate类. ...
- Ajax之跨域请求
一.引子 我现在开启了两个django项目,分别叫Demo1和Demo2,Demo1中有一个路径‘http://127.0.0.1:8000/index/’,对应的视图是index视图返回一个inde ...
- [翻译]EntityFramework Core 2.2 发布
原文来源 TechViews 今天我们将推出EF Core 2.2的最终版本,以及ASP.NET Core 2.2和.NET Core 2.2 .这是我们的开源和跨平台对象数据库映射技术的最新版本. ...
- csharp: Setting the value of properties reflection
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- ORM框架EF
应用程序和数据库采用Tcp协议通讯 ORM框架有: NHibernate ,Dapper ,Mybatis 底层是 ADO.Net 好处: 1.面向对象 2.没有sql减少学习成本,快速开发 3.编译 ...
- WebFrom 【文件上传】
文件上传 准备工作1.文件上传的页面2.上传文件要保存的文件夹 1.只要将文件传上来就行 //1.获取要上传的文件,并且知道要上传到服务器的路径 string s = "Uploads/aa ...
- 终端复用软件 tmux
Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权. Tmux 所使用的快捷键前缀默认是组合键 Ctrl-b(同时按下 Ctrl 键和 b 键). 技巧 ...
- 【代码笔记】Web-HTML-图像
一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- for each....in、for in、for of
一.一般的遍历数组的方法: var array = [1,2,3,4,5,6,7]; for (var i = 0; i < array.length; i) { console.log(i,a ...