ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Kubernetes集群使用Volumes实现宿主机与容器内部文件、目录共享

2022-04-20 23:35:24  阅读:220  来源: 互联网

标签:master1 Volumes Kubernetes 宿主机 nginx nfs conf root name


本文通过编写关于运行nginx pod的yaml文件介绍两种文件共享的方式

[root@master1 ~]# vim nginx.yaml 
---
apiVersion: v1
kind: Pod
metadata:
  name: nginx
  namespace: test
  labels:
    app: nginx
spec:
  containers:
  - name: nginx
    image: nginx:1.20
    imagePullPolicy: IfNotPresent
    ports:
    - containerPort: 80
    volumeMounts:
    - name: nginx-data
      mountPath: /usr/share/nginx/html
    - name: nginx-conf
      mountPath: /etc/nginx/conf.d/

  volumes:
  - name: nginx-data
    hostPath:
      path: /www
      type: DirectoryOrCreate
  - name: nginx-conf
    nfs:
      server: 192.168.110.5 
      path: "/conf"
  1. 使用hostpath的方式实现
  volumeMounts:
      - name: nginx-data  #名称与下面对应
        mountPath: /usr/share/nginx/html #容器内的路径
      
      
 volumes:
  - name: nginx-data
    hostPath:
      path: /www     #宿主机的路径
      type: DirectoryOrCreate #当目录不存在时自动创建

注:宿主机的路径时该pod被调度在对应的服务器路径

  2. 使用nfs远程挂载

首先在服务端与客户端都安装nfs

[root@master1 ~]# yum install -y nfs-utils

更改服务端的配置,客户端无须更改

[root@master1 ~]# cat /etc/exports
/conf    192.168.110.0/24(rw,sync,no_root_squash)

客户端与服务端同时启动nfs

[root@master1 ~]# systemctl start nfs
  volumeMounts:
      - name: nginx-conf #名称与下面相对应
        mountPath: /etc/nginx/conf.d/   容器内的文件路径
      
volumes:
  - name: nginx-conf
    nfs:
      server: 192.168.110.5 #服务端的ip地址
      path: "/conf"         #服务端宿主机的路径

最后运行yaml文件

[root@master1 ~]# kubectl apply -y nginx.yaml

 

标签:master1,Volumes,Kubernetes,宿主机,nginx,nfs,conf,root,name
来源: https://www.cnblogs.com/shuiyuesheng/p/16172305.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有