拉取需要的压缩包到master节点并解压: unzip EFK.zip
将node节点需要的压缩包导入:
scp es.tar fluentd.tar kibana.tar k8s-node1:/home/efk
scp es.tar fluentd.tar kibana.tar k8s-node2:/home/efk
进入node节点解压文件(所有node节点都需要):
for i in `ls ./`;do docker load -i $i;done
在master节点
解压文件:unzip efk.zip
编写文件:vim /home/efk/class.yml

编译文件: vim /home/efk/deployment.yml

vim /home/efk/elasticsearch-statefulset.yml(确认存储类)
根据指定 YAML 文件创建 K8s 资源:
kubectl create -f serviceaccount.yaml
kubectl create -f rbac.yaml
先执行上面两个,在执行后面两个
kubectl create -f deployment.yaml
kubectl create -f class.yaml

构建es集群
kubectl apply -f kube-logging.yaml
kubectl create -f elasticsearch-statefulset.yaml
kubectl create -f elasticsearch_svc.yaml
创建了新的命名空间,新pod也起来了

做测试
在所有节点下载:yum install -y socat
再master节点运行:curl http://10.244.36.67:9200/_cluster/health?pretty
查看一个pod的运行IP做测试用 :kubectl -n kube-logging get po -o wide
另开一个master节点:curl http://10.244.36.67:9200/_cluster/health?pretty

编译文件:vim kibana.yml
** THIS IS AN AUTO-GENERATED FILE **
Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true
i18n.locale: "zh-CN"

编译文件:vim kibana.yaml
apiVersion: v1
kind: Service
metadata:
name: kibana
namespace: kube-logging
labels:
app: kibana
spec:
type: NodePort
ports:
- port: 5601
selector:
app: kibana
apiVersion: apps/v1
kind: Deployment
metadata:
name: kibana
namespace: kube-logging
labels:
app: kibana
spec:
replicas: 1
selector:
matchLabels:
app: kibana
template:
metadata:
labels:
app: kibana
spec:
containers:
- name: kibana
image: docker.elastic.co/kibana/kibana:7.2.0
imagePullPolicy: IfNotPresent
resources:
limits:
cpu: 1000m
requests:
cpu: 100m
env:
- name: ELASTICSEARCH_URL
value: http://elasticsearch.kube-logging.svc.cluster.local:9200
ports:
- containerPort: 5601
volumeMounts:
- name: kibana-config
mountPath: /usr/share/kibana/config/
volumes:
- name: kibana-config
configMap:
name: kibana-configmap
汉化kibana:
kubectl -n kube-logging create configmap kibana-configmap --from-file=kibana.yml=./kibana.yml
更新配置:kubectl apply -f kibana.yaml

kubectl -n kube-logging get cm , kubectl -n kube-logging get po

在网页中搜索:192.168.11.160:32467

安装fluentd组件
kubectl apply -f fluentd.yaml
kubectl get po -n kube-logging -o wide

日志存放位置进入pod
kubectl -n kube-logging exec -it fluentd-22c76 -- bash
cd fluentd/etc/
cat kubernetes.conf


查看核心配置:cat fluent.conf

在网页上创建索引模式

