K8S通過helm 部署 ELK 7.3


前提:

在kubernetes集群中部署elk組件,es集群部署3個節點,kibana部署一個,容器數據持久化需要storageclass

依賴:

 

1.准備配置

git clone https://github.com/elastic/helm-charts.git

 

2. 部署 ES

2.1創建elk命名空間

# cat elk-ns.yml
apiVersion: v1
kind: Namespace
metadata:
  name: elk

 2.2部署elasticsearch

cd helm-charts/elasticsearch

helm install --namespace=elk  --name=elasticsearch .

3. 部署 Kibana

cd helm-charts/kibana

helm install --namespace=elk --name=kibana .

通過 kubectl get deploy 和 pod 了解部署狀態;

 

小知識

Kibana 直接通過 K8S 內部 DNS 域名 訪問 ES。

查看容器內的配置

# kubectl  exec kibana-kibana-7cbc5db55c-6qct7 -c kibana -- cat /usr/share/kibana/config/kibana.yml

# Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true

 

3. 訪問測試

3.1 給 Kibana 添加 Ingress

通過 Ingress 添加訪問入口

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: kibana
  namespace: default
spec:
  rules:
  - host: <YourDomain>  ## 訪問 Kibana 的域名 
    http:
      paths:
      - backend:
          serviceName: kibana-kibana
          servicePort: 5601
        path: /
 status:
  loadBalancer:
    ingress:
    - ip: <YourLoadBalancerIP>  ## LB 的 IP

 

3.2 訪問測試

訪問域名,即可打開 Kibana 7.3 版本;

-w1677

查看集群的運行狀態

-w1678

也可以通過命令行查看

~$ curl  -s <YourESHost>/_cluster/health | jq .
{
  "cluster_name": "elasticsearch",
  "status": "yellow",
  "timed_out": false,
  "number_of_nodes": 3,
  "number_of_data_nodes": 3,
  "active_primary_shards": 19,
  "active_shards": 35,
  "relocating_shards": 0,
  "initializing_shards": 0,
  "unassigned_shards": 3,
  "delayed_unassigned_shards": 0,
  "number_of_pending_tasks": 0,
  "number_of_in_flight_fetch": 0,
  "task_max_waiting_in_queue_millis": 0,
  "active_shards_percent_as_number": 92.10526315789474
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM