apiVersion: apps/v1 kind: Deployment metadata: name: kibana namespace: elasticsearch labels: app.kubernetes.io/name: kibana app.kubernetes.io/component: logging app.kubernetes.io/part-of: telecom-platform spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: kibana app.kubernetes.io/component: logging app.kubernetes.io/part-of: telecom-platform template: metadata: labels: app.kubernetes.io/name: kibana app.kubernetes.io/component: logging app.kubernetes.io/part-of: telecom-platform spec: containers: - name: kibana image: docker.elastic.co/kibana/kibana:8.10.0 ports: - containerPort: 5601 name: ui env: - name: ELASTICSEARCH_HOSTS value: "http://elasticsearch-master:9200" - name: SERVER_NAME value: kibana - name: SERVER_HOST value: "0.0.0.0" - name: SERVER_PORT value: "5601" - name: SERVER_PUBLICBASEURL value: "http://kibana.telecom.local:5601" - name: LOGGING_ROOT_LEVEL value: "info" resources: requests: cpu: 100m memory: 256Mi limits: cpu: 500m memory: 512Mi livenessProbe: httpGet: path: /api/status port: ui initialDelaySeconds: 30 periodSeconds: 10 readinessProbe: httpGet: path: /api/status port: ui initialDelaySeconds: 5 periodSeconds: 5 --- apiVersion: v1 kind: Service metadata: name: kibana namespace: elasticsearch labels: app.kubernetes.io/name: kibana app.kubernetes.io/component: logging app.kubernetes.io/part-of: telecom-platform spec: ports: - port: 5601 name: ui targetPort: 5601 selector: app.kubernetes.io/name: kibana app.kubernetes.io/component: logging app.kubernetes.io/part-of: telecom-platform type: ClusterIP --- apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: kibana namespace: elasticsearch labels: app.kubernetes.io/name: kibana app.kubernetes.io/component: logging app.kubernetes.io/part-of: telecom-platform spec: hosts: - kibana.telecom.local gateways: - telecom-platform-gateway http: - match: - uri: prefix: / route: - destination: host: kibana port: number: 5601 timeout: 30s