栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

《Kubernetes部署篇:Kubernetes持久化部署elasticsearch7.17.0分布式集群》

《Kubernetes部署篇:Kubernetes持久化部署elasticsearch7.17.0分布式集群》

文章目录

一、背景二、资源下载三、使用nfs-client实现storageclass

3.1、安装nfs服务端3.2、安装nfs客户端3.3、安装nfs插件 三、部署分布式elasticsearch7.17.0集群总结:整理不易,如果对你有帮助,可否点赞关注一下?


一、背景

Metrics Server是一个集群范围内的资源数据集和工具,同样的,metrics-server也只是显示数据,并不提供数据存储服务,主要关注的是资源度量API的实现,比如CPU、文件描述符、内存、请求延时等指标,metric-server收集数据给k8s集群内使用,如kubectl,hpa,scheduler等。


二、资源下载
三、使用nfs-client实现storageclass

当前业务系统需要对监控的数据进行持久化存储,这里使用nfs作为动态storageClass存储,对prometheus监控数据进行持久化存储。


3.1、安装nfs服务端

说明:建议找一台单独且磁盘容量足够大的服务器作为nfs-server端。

# 1、安装nfs-server端
yum -y install nfs-utils rpcbind
systemctl start nfs && systemctl enable nfs
systemctl start rpcbind && systemctl enable rpcbind

# 3、创建共享目录
mkdir -p /data/volumes/{v1,v2,v3} 

# 3、编辑配置文件
cat > /etc/exports << EOF
/data/volumes/v1  192.168.1.0/24(rw,no_root_squash,no_all_squash)
/data/volumes/v2  192.168.1.0/24(rw,no_root_squash,no_all_squash)
/data/volumes/v3  192.168.1.0/24(rw,no_root_squash,no_all_squash)
EOF

# 4、发布
[root@k8s-client volumes]# exportfs -arv
exporting 192.168.1.0/24:/data/volumes/v1
exporting 192.168.1.0/24:/data/volumes/v2
exporting 192.168.1.0/24:/data/volumes/v3

# 5、查看
[root@k8s-client ~]# showmount -e 192.168.1.17
Export list for 192.168.1.17:
/data/volumes/v1 192.168.1.0/24
/data/volumes/v2 192.168.1.0/24
/data/volumes/v3 192.168.1.0/24

3.2、安装nfs客户端

说明:当前环境kubernetes集群master节点和worker节点则为nfs客户端。

# 客户端不需要创建共享目录和编辑配置文件,只安装服务就行
yum -y install nfs-utils

3.3、安装nfs插件

说明:具有kubectl权限的主机。

官方测试资源下载
NFS动态存储StorageClass资源清单文件

1、修改deployment.yaml文件

2、创建账号

kubectl create -f rbac.yaml

3、创建nfs-client

kubectl create -f deployment.yaml

4、创建nfs-client kubernetes storage class

kubectl create -f class.yaml

5、设置StorageClass为默认
说明:默认的 StorageClass 将被用于动态的为没有特定 storage class 需求的PersistentVolumeClaims 配置存储:(只能有一个默认StorageClass),如果没有默认StorageClass,PVC 也没有指定storageClassName 的值,那么意味着它只能够跟 storageClassName相同的PV进行绑定。

kubectl patch storageclass managed-nfs-storage -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'

如下图所示:

6、测试pvc

[root@k8s-master-227 nfs]# kubectl apply -f test-claim.yaml

问题:创建的pvc一直处于pending状态

解决方案:分别在三个master节点上,修改/etc/kubernetes/manifests/kube-apiserver.yaml 文件,添加添加–feature-gates=RemoveSelflink=false,当前kubernetes集群是使用kubeadm部署的,修改kube-apiserver.yaml 文件会自动重启apiserver服务,不用手动重启,如下图所示:

如下图所示,则表明pvc创建成功

7、测试pod

[root@k8s-master-227 nfs]# kubectl apply -f test-pod.yaml

如下图所示,则表示pod运行成功

查看nfs-server主机上共享目录/data/volumes/v1/,下面有SUCCESS文件


三、部署分布式elasticsearch7.17.0集群
总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:企业级K8s集群运维实战

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/742432.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号