赞
踩
bash
kubectl create ns ms
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add metersphere https://metersphere.github.io/helm-chart/
从 chart 仓库中更新本地可用chart的信息
helm repo update
helm install metersphere metersphere/metersphere -n ms
1.导入镜像
下载 MeterSphere 最新版本的离线安装包并且解压,将安装包里 image目录下的镜像tar包上传到kubernetes的镜像库里或者手动load到kubernetes各个宿主机节点上。
MeterSphere 离线安装包下载链接: https://community.fit2cloud.com/#/products/metersphere/downloads
2.下载离线Chart包
helm-chart 安装包下载链接: https://github.com/metersphere/helm-chart/releases
如:https://github.com/metersphere/helm-chart/releases/download/metersphere-1.1.0/metersphere-1.1.0.tgz
3.安装
helm install metersphere metersphere-1.0.10.tgz -n ms
helm repo update # 从 chart 仓库中更新本地可用chart的信息
helm upgrade metersphere metersphere/metersphere -n ms
由于安装官方文档部署完以后,没有部署pv,导致pvc一直无法绑定到pv,所以还需要我们单独部署pv,不过要绑定的pvc还挺多的,所以我这边部署的是storageclass,也可以一个pv一个pv部署。
部署storageclass
1.部署nfs
安装nfs服务:yum -y install nfs-utils (集群中的每个节点也要安装否则不支持)
启动nfs并设为开机自启:systemctl start nfs && systemctl enable nfs
创建共享挂载目录: mkdir -pv /data/metersphere
编辑/etc/exports文件
/data/metersphere *(rw,fsid=0,sync,no_root_squash)
2.下载storageclass需要的Yaml文件
for file in class.yaml deployment.yaml rbac.yaml test-claim.yaml ; do wget https://raw.githubusercontent.com/kubernetes-incubator/external-storage/master/nfs-client/deploy/$file ; done
3.修改资源清单
#vim deployment.yaml
#vim deployment.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: nfs-client-provisioner
---
kind: Deployment
apiVersion: extensions/v1beta1
metadata:
name: nfs-client-provisioner
spec:
replicas: 1
strategy:
type: Recreate
template:
metadata:
labels:
app: nfs-client-provisioner
spec:
serviceAccountName: nfs-client-provisioner
containers:
- name: nfs-client-provisioner
image: quay.io/external_storage/nfs-client-provisioner:v2.0.0 ##默认是latest版本
volumeMounts:
- name: nfs-client-root
mountPath: /persistentvolumes
env:
- name: PROVISIONER_NAME
value: fuseim.pri/ifs ##这里的供应者名称必须和class.yaml中的provisioner的名称一致,否则部署不成功
- name: NFS_SERVER
value: k8s-nfs ##这里写NFS服务器的IP地址或者能解析到的主机名
- name: NFS_PATH
value: /data/volumes/v1 ##这里写NFS服务器中的共享挂载目录(强调:这里的路径必须是目录中最后一层的文件夹,否则部署的应用将无权限创建目录导致Pending)
volumes:
- name: nfs-client-root
nfs:
server: k8s-nfs ##NFS服务器的IP或可解析到的主机名
path: /data/volumes/v1 ##NFS服务器中的共享挂载目录(强调:这里的路径必须是目录中最后一层的文件夹,否则部署的应用将无权限创建目录导致Pending)
4.部署
kubectl apply -f .
5.查看服务
查看此NFS插件的pod是否部署成功
6.查看storageclass
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。