簡介
現在,我們開始部署Kibana,這是ElasticSearch的數據可視化插件,它提供了管理ElasticSearch集群和可視化數據。
正文
第一步:創建kibana-configmap.yaml,主要配置Elasticsearch相關信息,yaml文件內容如下:
apiVersion: v1
kind: ConfigMap
metadata:
namespace: kube-logging
name: kibana-config
labels:
app: kibana
data:
kibana.yml: |-
server.host: 0.0.0.0
elasticsearch:
hosts: ${ELASTICSEARCH_HOSTS}
username: ${ELASTICSEARCH_USER}
password: ${ELASTICSEARCH_PASSWORD}
第二步:部署Kibana服務 ,新建kibana-service.yaml 文件,內容如下:
apiVersion: v1
kind: Service
metadata:
name: kibana-api
namespace: kube-logging
spec:
type: NodePort
ports:
- name: http
port: 5601
targetPort: 5601
nodePort: 30287
selector:
app: kibana
第三步:Deployment部署, 配置env變量,使用secretKeyRef從secret讀取密碼。新建 kibana-deployment.yaml,內容如下:
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: kube-logging
name: kibana
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.3.0
ports:
- containerPort: 5601
name: webinterface
env:
- name: ELASTICSEARCH_HOSTS
value: "http://elasticsearch-client.kube-logging.svc.cluster.local:9200"
- name: ELASTICSEARCH_USER
value: "elastic"
- name: ELASTICSEARCH_PASSWORD
valueFrom:
secretKeyRef:
name: elasticsearch-pw-elastic
key: password
volumeMounts:
- name: config
mountPath: /usr/share/kibana/config/kibana.yml
readOnly: true
subPath: kibana.yml
volumes:
- name: config
configMap:
name: kibana-config
---
現在使用如下命令,執行文件。
kubectl apply -f kibana-configmap.yaml -f kibana-service.yaml -f kibana-deployment.yaml
等待幾分鍾,安裝完成之后,訪問你部署位置的宿主機ip:30268。你會看到如下界面:

username:elastic password: 搭建es集群時,生成的client 密碼。詳情請看第一篇文章,kubernetes搭建Elasticsearch集群。 歡迎點贊,評論。
