云计算
特别说明:测试使用,不推荐生产环境。
1.在主节点上配置(节点1)。
1)百胜安装nfs
# yum -y安装nfs-utils
NFS的主要工具包括:
主配置文件:/etc/exports;
NFS文件系统维护命令:/usr/usr/bin/exportfs;
共享资源的日志文件:/var/lib/NFS/* tab;
客户端查询共享资源命令:/usr/usr/sbin/show mount;
端口配置:/etc/sysconfig/nfs。
2)创建一个新的共享目录
# mkdir -p /data/volunes
3)设置Nfs权限
#卡特彼勒/etc/出口
权限参数描述:
ro?只读访问
rw?读写访问
同步?请求时,所有数据都会写入共享。
异步?Nfs可以在写入数据之前响应请求。
安全吗?Nfs通过低于1024的安全TCP/IP端口发送。
没有安全感?Nfs通过1024以上的端口发送。
wdelay?如果多个用户想要写入nfs目录,请分组写入(默认)。
no_wdelay?如果多个用户想要写入nfs目录,他们会立即写入,使用async时不需要此设置。
藏起来?不要在nfs共享目录中共享其子目录。
No_hide共享nfs目录的子目录。
子树_检查?如果共享/usr/bin这样的子目录,则强制nfs检查父目录的权限(默认)
no_subtree_check?不检查父目录权限。
all _壁球?共享文件的UID和GID映射匿名用户anonymous,适用于公共目录。
没有壁球?保留共享文件的UID和GID(默认)
root_squash root用户的所有请求都映射到与匿名用户相同的权限(默认)。
无根南瓜?root用户对根目录拥有完全的管理访问权限(不安全)。
Anonuid=xxx指定nfs服务器/etc/passwd文件中匿名用户的uid。
Anongid=xxx指定nfs服务器/etc/passwd文件中匿名用户的gid。
4)启动服务
# systemctl启用nfs.service
# systemctl启动nfs.service
# exportfs?-arv #配置文件将在不重启nfs服务的情况下生效。
2.在节点2和节点3上配置Nfs。
1)安装
yum -y安装nfs-utils
2)在节点3和节点2上装载:
# mount-t NFS 172 . 160 . 45 . 160:/data/volune//mnt
3、检查
1)#检查RPC服务的注册状态。
rpcinfo -p本地主机
2)#显示安装测试
秀芒特-172.160.45.160
4.kubernetes使用NFS共享存储有两种方式:
#手动创建所需的PV和PVC静态;
#通过创建PVC动态创建对应的PV,无需手动创建PV;
# # # # # # # # # # # # #静态创建# # # # # # # # # #
1)PV体积的静态应用
PersistentVolumes是k8s的抽象存储资源,主要包括存储容量、访问方式、存储类型、回收策略等关键信息。PV才是k8s真正连接存储后端的真正入口。
#创建pv对应的目录
# mkdir -p /data/volunes/v{1,2,3}
#配置导出器
#卡特彼勒/etc/出口
#立即生效
# exportfs?-arv
2)创建一个pv文件
# vim nfs-pv1.yaml
apiVersion: v1
种类:持久卷
元数据:
名称:nfs-pv1
标签:
pv: nfs-pv1
规格:
容量:
存储:1Gi
访问模式:
读写多
persistentVolumeReclaimPolicy策略:回收
存储类名:nfs
nfs:
路径:/data/volunes/v1
服务器:172.160.45.160
Nfs-pv2.yaml也类似。
配置描述:
容量指定PV的容量为1G。
accessModes指定访问模式为ReadWriteOnce,支持的访问模式有:
ReadWriteOnce(RWO):读写权限,但只能单个节点挂载;
ReadOnlyMany(ROX):只读权限,可以多节点挂载;
ReadWriteMany(RWX):读写权限,可以多节点挂载;
persistentvolumereclain policy指定当PV的回收策略为Recycle时,支持的策略为:
Retain-保留数据,不会分发到pvc,需要管理员手动清理数据;
recycle-清空pv中的数据,预留PV资源,可以预留给其他pvc使用;
Delete-删除整个pv资源及其内部数据;
storageClassName指定PV的类别是nfs。相当于给PV设置了一个分类,PVC可以指定一个类来申请对应类的PV。
指定NFS服务器上PV对应的目录。
#为pv创建一个pod
# kubectl create-f nfs-pv1.yaml
# kubectl获取pv
可用状态,表示pv已准备好,可以通过PVC申请;
3)创建PVC
持续量索赔是对产品鉴定(生产验证)资源的一种声明,聚氯乙烯绑定实体资源页面浏览量(页面视图)后,pod通过绑定聚氯乙烯来使用页面浏览量(页面视图)资源。聚氯乙烯是k8s的一种抽象化的声明式绑定存储资源的管理模式的中间层,pod无法直接通过页面浏览量(页面视图)使用存储资源,必须经过聚氯乙烯,而聚氯乙烯必须要绑定页面浏览量(页面视图)实体后,才可被豆荚使用;
# vim nfs-pvc2.yaml
apiVersion: v1
kind: PersistentVolumeClaim
元数据:
名称:nfs-pvc2
规格:
访问模式:
eadWriteMany
资源:
请求:
存储:1Gi
存储类名:nfs
选择器:
匹配标签:
pv: nfs-pv2
执行yaml文件创建聚氯乙烯
# kubectl create -f nfs-pvc1.yaml
查看页面浏览量(页面视图)资源
备注:pv对应绑定的聚氯乙烯
4)创建豆荚
[root @ node 1 YAML]# vim NFS-nginx。YAML
apiVersion: v1
种类:复制控制器
元数据:
名称:nginx-测试
标签:
名称:nig NX-测试
规格:
副本:3
选择器:
名称:nginx-测试
模板:
元数据:
标签:
名称:nginx-测试
规格:
容器:
名称:web01
图片:1.14.2
卷安装:
挂载路径:/usr/share/nginx/html/
名称:nfs-pv1
挂载路径:/var/log/nginx/
名称:nfs-pv2
端口:
集装箱港口:80
体积:
名称:nfs-pv1
持续量声明:
声明名称:nfs-pvc1
名称:nfs-pv2
持续量声明:
声明名称:nfs-pvc2
备注:
# nfs-pv1存储网页文件,nfs-pv2日志文件
#执行文件
# kubectl create -f nfs-nginx.yaml
# kubectl获得分离舱宽
#创建NFS nginx服务器文件
# cat nfs-nginx-svc.yaml
apiVersion: v1
种类:服务
元数据:
名称:nginx-测试
标签:
名称:nginx-测试
规格:
类型:节点端口
端口:
端口:80
协议:TCP
目标港口:80
名称:http
节点端口:30088
选择器:
名称:nginx-测试
#执行文件
# ku bectl create-f NFS-nginx-SVCYAML
# kubectl获取服务
5)验证产品鉴定(生产验证)是否可用
测试页面:
#内部
#外网
备注说明:nfs自身没有冗余能力,数据盘损坏易丢失数据;建议使用:glusterfs或cephfs分布式存储;
更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码代理商官网:www.chenqinet.cn