博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
k8s-之无头服务初体验
阅读量:6585 次
发布时间:2019-06-24

本文共 3865 字,大约阅读时间需要 12 分钟。

hot3.png

无头服务---创建三个mysql实例每个实例数据持久化到本地

1.先创建三个pv切记注释掉storageClassName项

[root@k8s-master pv]# cat mysql.pv.yaml apiVersion: v1kind: PersistentVolumemetadata:  name: pv-nfs-pv05                     #创建的pv名称可创建多个.  namespace: mt-math                    #属于的命名空间spec:  capacity:    storage: 200M                        #创建的pv容量为1G  accessModes:  - ReadWriteMany                       #pv的访问模式:可读可写可挂在多个节点  persistentVolumeReclaimPolicy: Retain #回收策略  #storageClassName: pv-nfs-mysql  nfs:                                  #创建的pv数据来源    path: /NFS/pv05                     #数据源目录    server: 192.168.0.14                #数据源ip---apiVersion: v1kind: PersistentVolumemetadata:  name: pv-nfs-pv06                     #创建的pv名称可创建多个.  namespace: mt-math                    #属于的命名空间spec:  capacity:    storage: 200M                        #创建的pv容量为1G  accessModes:  - ReadWriteMany                       #pv的访问模式:可读可写可挂在多个节点  persistentVolumeReclaimPolicy: Retain #回收策略  #storageClassName: pv-nfs-mysql  nfs:                                  #创建的pv数据来源    path: /NFS/pv06                     #数据源目录    server: 192.168.0.14                #数据源ip---apiVersion: v1kind: PersistentVolumemetadata:  name: pv-nfs-pv07                     #创建的pv名称可创建多个.  namespace: mt-math                    #属于的命名空间spec:  capacity:    storage: 200M                        #创建的pv容量为1G  accessModes:  - ReadWriteMany                       #pv的访问模式:可读可写可挂在多个节点  persistentVolumeReclaimPolicy: Retain #回收策略  #storageClassName: pv-nfs-mysql  nfs:                                  #创建的pv数据来源    path: /NFS/pv07                     #数据源目录    server: 192.168.0.14                #数据源ip

创建无头服务配置文件每一个实例数据持久化, 这里就需要使用volumeClaimTemplates自动创建PVC

cat mysql5.7.yaml #创建第一个无头服务mysql#################apiVersion: v1kind: Servicemetadata:  labels:    app: db-service  name: db-service  namespace: mt-mathspec:  ports:  - name: db-service    port: 3306  clusterIP: None  selector:    app: wylpod-mysql---apiVersion: apps/v1kind: StatefulSetmetadata:  annotations:  labels:    app: wylpod-mysql  name: wylpod-mysql  namespace: mt-mathspec:  serviceName: "db-service"  replicas: 3  selector:    matchLabels:      app: wylpod-mysql  template:    metadata:      annotations:      labels:        app: wylpod-mysql    spec:      containers:        - image: "mysql:5.7"          imagePullPolicy: IfNotPresent          name: wylpod-mysql          env:          - name: MYSQL_ROOT_PASSWORD            value: "123456"          - name: MYSQL_USER            value: "admin"          - name: MYSQL_PASSWORD            value: "123456"          ports:          - containerPort: 3306            protocol: TCP            name: wylpod-mysql          volumeMounts:          - name: mysql-pvc            mountPath: /var/lib/mysql############################################  volumeClaimTemplates:  - metadata:      name: mysql-pvc      namespace: mt-math    spec:      accessModes: [ "ReadWriteMany" ]      resources:        requests:          storage: 200M############################################      #volumes:                    #设置挂载      #- name: mysql-pvc           #挂载数据节点名称      #  persistentVolumeClaim:    #服务类型      #    claimName: pvc-nfs-pvc03   #数据源名称#######################################################################StatefulSet需要一个无头服务来定义DNS域名,需要在StatefulSet之前创建好#无头服务它没有群集IP,如果解析Headless Service的DNS域名,则返回的是该服务对应的全部Pod的端点列表#无头服务需要在Headless Service的基础上又为StatefulSet控制的每个Pod实力创建了一个DNS域名,这个域名的格式为: ${podname}.${headless service name} 即:POd名称.service名称#配置volumeClaimTemplates自动创建PVC(在GCE中会自动创建kubernetes.io/gce-pd类型的volume)切记创建pv时注释storageClassName项.#####################################################################

执行开始创建并查看状态:

kubectl create -f mysql.pv.yaml kubectl create -f mysql5.7.yaml kubectl get all -n mt-math

6486f8a4f31c5d1bea788c149368088dff9.jpgf1669e84e05f477407760f88591158e912c.jpg

查看数据持久化是否成功

12dddcedc646cbc0a031ddfc22d01770155.jpg

登录mysql测试访问

c2e8701c286b5e98df740ed6518b0fa83c6.jpg

dns解析测试:需要提前安装coredns插件

61bbc32be8fdd4f8621797a29cd8a6d6d2e.jpg

e0310a36932370a28ffe8d6443640653dcd.jpg

转载于:https://my.oschina.net/wangyunlong/blog/3056226

你可能感兴趣的文章
openldap安装
查看>>
[leetcode]count and say
查看>>
润乾报表 - 缓存问题
查看>>
利用IFormattable接口自动参数化Sql语句
查看>>
泛型Dictionary的用法详解
查看>>
明晰三种常见存储技术:DAS、SAN和NAS
查看>>
ContentProvider简单介绍
查看>>
Visual Studio 2014 CTPs 下载 和C# 6.0 语言预览版介绍
查看>>
js混淆 反混淆 在线
查看>>
WinForm 之 程序启动不显示主窗体
查看>>
FragmentTransaction.replace() 你不知道的坑
查看>>
模拟退火算法
查看>>
StringUtils方法全集介绍
查看>>
性能调校
查看>>
VMware workstation虚拟网卡类型介绍
查看>>
C# web 更新折腾记
查看>>
IBM主机巡检操作文档
查看>>
zabbix企业应用之Mysql主从监控
查看>>
移动端iphone按下a链接背景颜色会变灰
查看>>
如何识别 MacBook Pro 机型
查看>>