在k8s 1.3安装EFK组件
前置条件
查看k8s版本
kubectl get node -owide
相关安装包
链接:https://pan.baidu.com/s/12S5lKEyzzwFwkCwzsPemHw?pwd=ycqx
提取码:ycqx
上传压缩包
把elasticsearch-7-12-1.tar.gz、fluentd-containerd.tar.gz、 kibana-7-12-1.tar.gz上传到k8snode1机器上,手动解压
ctr -n=k8s.io images import elasticsearch-7-12-1.tar.gz
ctr -n=k8s.io images import kibana-7-12-1.tar.gz
ctr -n=k8s.io images import fluentd-containerd.tar.gz
把nfs-subdir-external-provisioner.tar.gz上传到k8snode1上,手动解压。
ctr -n=k8s.io images import nfs-subdir-external-provisioner.tar.gz
把busybox-1-28.tar.gz上传到k8snode1节点,手动解压
ctr -n k8s.io images import busybox-1-28.tar.gz
把fluentd-containerd.tar.gz上传到k8smaster1机器上,手动解压
ctr -n=k8s.io images import fluentd-containerd.tar.gz
安装nfs供应商
两台服务器都执行
yum install nfs-utils -y
systemctl start nfs
systemctl enable nfs.service
在k8smaster1上创建一个nfs共享目录
mkdir /data/v1 -p
vim /etc/exports
/data/v1 *(rw,no_root_squash)
加载配置,使配置生效
exportfs -arv
systemctl restart nfs
创建nfs作为存储的供应商
创建运行nfs-provisioner需要的sa账号
cat serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: nfs-provisioner
kubectl apply -f serviceaccount.yaml
对sa授权
kubectl create clusterrolebinding nfs-provisioner-clusterrolebinding --clusterrole=cluster-admin --serviceaccount=default:nfs-provisioner
通过deployment创建pod用来运行nfs-provisioner
vim deployment.yaml
kind: Deployment
apiVersion: apps/v1
metadata:
name: nfs-provisioner
spec:
selector:
matchLabels:
app: nfs-provisioner
replicas: 1
strategy:
type: Recreate
template:
metadata:
labels:
app: nfs-provisioner
spec:
serviceAccount: nfs-provisioner
containers:
- name: nfs-provisioner
image: registry.cn-beijing.aliyuncs.com/mydlq/nfs-subdir-external-provisioner:v4.0.0
imagePullPolicy: IfNotPresent
volumeMounts:
- name: nfs-client-root
mountPath: /persistentvolumes
env: