Elastic Stack menyediakan fitur pemantauan terintegrasi yang memungkinkan Anda menggunakan Kibana untuk menganalisis dan menampilkan log, metrik, serta data Pemantauan Kinerja Aplikasi (APM) dari kluster Container Service for Kubernetes (ACK) secara terpusat. Jika Anda menerapkan aplikasi dalam pod pada kluster ACK, Anda dapat melihat log yang dihasilkan oleh pod, metrik peristiwa dari host dan jaringan, serta data APM di konsol Kibana, memudahkan pelacakan masalah. Topik ini menjelaskan cara mengimplementasikan pemantauan terintegrasi untuk kluster ACK.
Prasyarat
Kluster Elasticsearch Alibaba Cloud telah dibuat, daftar putih alamat IP telah dikonfigurasikan, dan fitur Auto Indexing telah diaktifkan. Dalam contoh ini, kluster Elasticsearch V6.8 Alibaba Cloud digunakan.
Untuk informasi lebih lanjut, lihat Buat Kluster Elasticsearch Alibaba Cloud, Konfigurasikan Daftar Putih Alamat IP Publik atau Privat untuk Kluster Elasticsearch, dan Konfigurasikan File YML.
Kluster ACK telah dibuat, dan pod telah dibuat di dalam kluster. Dalam contoh ini, versi kluster ACK 1.18.8-aliyun.1 digunakan, dengan setiap instance Elastic Compute Service (ECS) memiliki 2 vCPU dan 8 GiB memori.
Untuk informasi lebih lanjut, lihat Buat Kluster ACK yang Dikelola.
Klien kubectl telah dikonfigurasikan dan dapat digunakan untuk mengakses kluster ACK.
Untuk informasi lebih lanjut, lihat Dapatkan File kubeconfig Kluster dan Gunakan kubectl untuk Terhubung ke Kluster.
Informasi latar belakang
Topik ini menjelaskan cara menggunakan Elastic Stack untuk mengimplementasikan pemantauan terintegrasi untuk kluster ACK. Untuk informasi lebih lanjut, lihat bagian-bagian berikut:
Untuk informasi lebih lanjut tentang fitur-fitur Metricbeat, Filebeat, dan Elastic APM, lihat Pemantauan Infrastruktur, Pemantauan Log, dan Elastic APM.
Gunakan Metricbeat untuk mengumpulkan metrik
Kontroler-kontroler berikut dapat digunakan untuk menerapkan Metricbeat ke kluster ACK:
DaemonSet: Kontroler DaemonSet memastikan bahwa setiap node di kluster menjalankan satu pod. Ini memungkinkan Metricbeat mengumpulkan metrik host, metrik sistem, statistik Docker, dan metrik semua layanan yang dijalankan di kluster ACK.
Deployment: Anda dapat menggunakan kontroler Deployment untuk menerapkan satu pengirim Metricbeat. Pengirim ini digunakan untuk mengambil metrik unik dari kluster ACK, seperti metrik untuk peristiwa Kubernetes dan layanan kube-state-metrics.
Dalam contoh ini, baik kontroler DaemonSet maupun Deployment digunakan untuk menerapkan Metricbeat ke kluster ACK. Anda juga dapat menggunakan hanya kontroler DaemonSet atau Deployment untuk menerapkan Metricbeat.
Metricbeat bergantung pada fitur pemantauan yang disediakan oleh layanan kube-state-metrics. Sebelum menerapkan Metricbeat, pastikan bahwa kube-state-metrics telah diterapkan. Secara default, kube-state-metrics diterapkan di namespace arms-prom dari sebuah kontainer di kluster ACK.
Gunakan klien kubectl untuk mengakses kluster ACK dan unduh file konfigurasi Metricbeat.
curl -L -O https://raw.githubusercontent.com/elastic/beats/6.8/deploy/kubernetes/metricbeat-kubernetes.yamlModifikasi file konfigurasi Metricbeat.
PentingFile konfigurasi Metricbeat resmi menggunakan versi API extensions/v1beta1 untuk DaemonSets dan Deployments. Versi API ini sudah tidak digunakan lagi di ACK V1.18 dan yang lebih baru. Anda harus memodifikasi file konfigurasi Metricbeat untuk menggunakan versi API apps/v1 untuk Kubernetes, DaemonSets, Deployments, dan ReplicaSets di ACK V1.18 dan yang lebih baru.
Modifikasi konfigurasi di kind: Deployment dan kind: DaemonSet.
Modifikasi variabel lingkungan. Berikut adalah contohnya:
env: - name: ELASTICSEARCH_HOST value: es-cn-nif23p3mo0065****.elasticsearch.aliyuncs.com - name: ELASTICSEARCH_PORT value: "9200" - name: ELASTICSEARCH_USERNAME value: elastic - name: ELASTICSEARCH_PASSWORD value: **** - name: KIBANA_HOST value: es-cn-nif23p3mo0065****-kibana.internal.elasticsearch.aliyuncs.com - name: KIBANA_PORT value: "5601"CatatanSecara default, variabel Kibana tidak didefinisikan dalam file konfigurasi Metricbeat yang diunduh. Anda dapat menggunakan parameter env untuk melewatkan variabel tersebut.
Parameter
Deskripsi
ELASTICSEARCH_HOST
Titik akhir internal kluster Elasticsearch Anda.
ELASTICSEARCH_PORT
Port privat kluster Elasticsearch Anda.
ELASTICSEARCH_USERNAME
Nama pengguna kluster Elasticsearch Anda. Nilai default parameter ini adalah elastic.
ELASTICSEARCH_PASSWORD
Kata sandi yang sesuai dengan nama pengguna elastic.
KIBANA_HOST
Titik akhir internal Kibana.
KIBANA_PORT
Port privat Kibana.
Tambahkan konfigurasi spec.selector. Berikut adalah contohnya:
## kind: DaemonSet spec: selector: matchLabels: k8s-app: metricbeat template: metadata: labels: k8s-app: metricbeat ## kind: Deployment spec: selector: matchLabels: k8s-app: metricbeat template: metadata: labels: k8s-app: metricbeat
Konfigurasikan informasi keluaran Kibana di name: metricbeat-daemonset-config dan name: metricbeat-deployment-config untuk menggunakan variabel lingkungan yang dikonfigurasikan di file konfigurasi.
output.elasticsearch: hosts: ['${ELASTICSEARCH_HOST:elasticsearch}:${ELASTICSEARCH_PORT:9200}'] username: ${ELASTICSEARCH_USERNAME} password: ${ELASTICSEARCH_PASSWORD} setup.kibana: host: "https://${KIBANA_HOST}:${KIBANA_PORT}" setup.dashboards.enabled: trueModifikasi konfigurasi terkait metricbeat-daemonset-modules. Tentukan metrik sistem yang dipantau oleh modul System dan metrik yang dapat diperoleh oleh modul Kubernetes. Modul System memantau metrik berikut: CPU, beban, memori, dan jaringan.
CatatanUntuk informasi lebih lanjut tentang konfigurasi dan metrik modul di Metricbeat, lihat Modul Sistem dan Modul Kubernetes.
apiVersion: v1 kind: ConfigMap metadata: name: metricbeat-daemonset-modules namespace: kube-system labels: k8s-app: metricbeat data: system.yml: |- - module: system period: 10s metricsets: - cpu - load - memory - network - process - process_summary - core - diskio - socket processes: ['.*'] process.include_top_n: by_cpu: 5 # include top 5 processes by CPU by_memory: 5 # include top 5 processes by memory - module: system period: 1m metricsets: - filesystem - fsstat processors: - drop_event.when.regexp: system.filesystem.mount_point: '^/(sys|cgroup|proc|dev|etc|host|lib)($|/)' kubernetes.yml: |- - module: kubernetes metricsets: - node - system - pod - container - volume period: 10s host: ${NODE_NAME} hosts: ["localhost:10255"]Modifikasi konfigurasi terkait metricbeat-deployment-modules untuk mendapatkan metrik untuk kube-state-metrics dan peristiwa Kubernetes.
PentingLayanan Metricbeat diterapkan di namespace kube-system. Layanan kube-state-metrics diterapkan di namespace arms-prom secara default. Kedua layanan tersebut termasuk dalam namespace yang berbeda. Oleh karena itu, tentukan parameter hosts dalam format kube-state-metrics.<namespace>:8080. Jika layanan Metricbeat dan kube-state-metrics diterapkan di namespace yang sama, atur parameter hosts menjadi kube-state-metrics:8080.
apiVersion: v1 kind: ConfigMap metadata: name: metricbeat-deployment-modules namespace: kube-system labels: k8s-app: metricbeat data: # Modul ini memerlukan `kube-state-metrics` aktif dan berjalan di bawah namespace `kube-system` kubernetes.yml: |- - module: kubernetes metricsets: - state_node - state_deployment - state_replicaset - state_pod - state_container period: 10s host: ${NODE_NAME} hosts: ["kube-state-metrics.arms-prom:8080"] # Hapus komentar ini untuk mendapatkan peristiwa k8s: - module: kubernetes metricsets: - eventBuat peran dan tetapkan peran tersebut ke Metricbeat untuk mengimplementasikan kontrol akses berbasis peran (RBAC). Ini memastikan bahwa Metricbeat dapat memperoleh informasi sumber daya dari kluster ACK.
apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRoleBinding metadata: name: metricbeat subjects: - kind: ServiceAccount name: metricbeat namespace: kube-system roleRef: kind: ClusterRole name: metricbeat apiGroup: rbac.authorization.k8s.io --- apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRole metadata: name: metricbeat labels: k8s-app: metricbeat rules: - apiGroups: [""] resources: - nodes - namespaces - events - pods verbs: ["get", "list", "watch"] - apiGroups: ["extensions"] resources: - replicasets verbs: ["get", "list", "watch"] - apiGroups: ["apps"] resources: - statefulsets - deployments verbs: ["get", "list", "watch"] - apiGroups: - "" resources: - nodes/stats verbs: - get --- apiVersion: v1 kind: ServiceAccount metadata: name: metricbeat namespace: kube-system labels: k8s-app: metricbeat ---
Terapkan Metricbeat di kluster ACK dan lihat sumber daya kluster.
Gunakan klien kubectl untuk menjalankan perintah berikut:
kubectl apply -f metricbeat-kubernetes.yaml kubectl get pods -n kube-systemPentingPastikan bahwa sumber daya di dalam pod sedang berjalan. Jika tidak, data mungkin tidak akan ditampilkan di konsol Kibana.
Lihat data yang dipantau di konsol Kibana.
Masuk ke konsol Kibana kluster Elasticsearch Anda.
Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Di bilah navigasi sebelah kiri, klik Infrastructure.
Lihat statistik metrik host dan pod di kluster ACK.
Lihat statistik metrik host: Di halaman Infrastruktur, klik Hosts di pojok kanan atas. Di tab Map View, klik host dan pilih View metrics. Kemudian, Anda dapat melihat statistik metrik CPU, beban, dan memori.


Lihat statistik metrik pod di kluster ACK: Di halaman Infrastruktur, klik Kubernetes di pojok kanan atas. Di tab Map View, klik pod dan pilih View metrics. Kemudian, Anda dapat melihat statistik metrik CPU, memori, dan jaringan.

Lihat statistik keseluruhan sumber daya kluster ACK.
Klik Dashboard di bilah navigasi sebelah kiri. Di halaman Dashboards, klik [Metricbeat Kubernetes] Overview. Kemudian, Anda dapat melihat statistik keseluruhan sumber daya kluster ACK.

Gunakan Filebeat untuk mengumpulkan log
Dalam contoh ini, kontroler DaemonSet digunakan untuk menerapkan Filebeat. Kontroler DaemonSet memastikan bahwa setiap node kluster ACK menjalankan pod untuk mengumpulkan data. Sumber daya dalam file konfigurasi Filebeat diterapkan di namespace kube-system. Jika ingin mengubah namespace tempat sumber daya diterapkan, Anda dapat memodifikasi file konfigurasi.
Unduh file konfigurasi Filebeat.
Gunakan klien kubectl untuk mengakses kluster ACK dan unduh file konfigurasi Filebeat.
curl -L -O https://raw.githubusercontent.com/elastic/beats/6.8/deploy/kubernetes/filebeat-kubernetes.yamlModifikasi file konfigurasi Filebeat.
Modifikasi konfigurasi di kind: DaemonSet.
env: - name: ELASTICSEARCH_HOST value: es-cn-nif23p3mo0065****.elasticsearch.aliyuncs.com - name: ELASTICSEARCH_PORT value: "9200" - name: ELASTICSEARCH_USERNAME value: elastic - name: ELASTICSEARCH_PASSWORD value: **** - name: KIBANA_HOST value: es-cn-nif23p3mo0065****-kibana.internal.elasticsearch.aliyuncs.com - name: KIBANA_PORT value: "5601" - name: NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeNameParameter
Deskripsi
ELASTICSEARCH_HOST
Titik akhir internal kluster Elasticsearch Anda.
ELASTICSEARCH_PORT
Port privat kluster Elasticsearch Anda.
ELASTICSEARCH_USERNAME
Nama pengguna kluster Elasticsearch Anda. Nilai default parameter ini adalah elastic.
ELASTICSEARCH_PASSWORD
Kata sandi yang sesuai dengan nama pengguna elastic.
KIBANA_HOST
Titik akhir internal Kibana.
KIBANA_PORT
Port privat Kibana.
NODE_NAME
Host di kluster ACK.
Ubah konfigurasi ConfigMap di name: filebeat-config dan konfigurasikan informasi keluaran Kibana untuk menggunakan variabel lingkungan yang dikonfigurasikan di file konfigurasi.
output.elasticsearch: hosts: ['${ELASTICSEARCH_HOST:elasticsearch}:${ELASTICSEARCH_PORT:9200}'] username: ${ELASTICSEARCH_USERNAME} password: ${ELASTICSEARCH_PASSWORD} setup.kibana: host: "https://${KIBANA_HOST}:${KIBANA_PORT}"Konfigurasikan Filebeat untuk mengumpulkan log dari kontainer di kluster ACK.
apiVersion: v1 kind: ConfigMap metadata: name: filebeat-inputs namespace: kube-system labels: k8s-app: filebeat data: kubernetes.yml: |- - type: docker containers.ids: - "*" processors: - add_kubernetes_metadata: host: ${NODE_NAME} in_cluster: true ---
Terapkan Filebeat di kluster ACK dan lihat sumber daya kluster.
Gunakan klien kubectl untuk menjalankan perintah berikut:
kubectl apply -f filebeat-kubernetes.yaml kubectl get pods -n kube-systemPentingPastikan bahwa sumber daya di dalam pod sedang berjalan. Jika tidak, data mungkin tidak akan ditampilkan di konsol Kibana.
Lihat log real-time di konsol Kibana.
Masuk ke konsol Kibana kluster Elasticsearch Anda.
Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Lihat log host dan pod di kluster ACK.
Lihat log host: Di halaman Infrastruktur, klik Hosts di pojok kanan atas. Di tab Map View, klik host dan pilih View logs. Kemudian, Anda dapat melihat log real-time dari host tersebut.
Lihat log pod di kluster ACK: Di halaman Infrastruktur, klik Kubernetes di pojok kanan atas. Di tab Map View, klik pod dan pilih View logs. Kemudian, Anda dapat melihat log real-time dari pod tersebut.

Gunakan Elastic APM untuk memantau kinerja aplikasi
Elastic APM adalah sistem pemantauan kinerja aplikasi yang dibangun di atas Elastic Stack. Elastic APM memungkinkan Anda memantau layanan perangkat lunak dan aplikasi secara real-time. Untuk mengimplementasikan pemantauan dan memfasilitasi pelacakan masalah, Elastic APM mengumpulkan informasi kinerja terperinci tentang waktu respons permintaan, kueri database, panggilan ke cache, dan permintaan HTTP eksternal. Elastic APM juga secara otomatis mengumpulkan kesalahan dan pengecualian yang tidak tertangani. Kesalahan dikelompokkan berdasarkan stacktrace, membantu Anda mengidentifikasi kesalahan baru dan memahami jumlah kemunculan kesalahan tertentu.
Untuk informasi lebih lanjut tentang Elastic APM, lihat Ikhtisar Elastic APM.
Terapkan APM Server ke kontainer.
Dalam contoh ini, APM Server diterapkan di kluster ACK. Anda dapat menggunakan kontroler ConfigMap untuk mendefinisikan file apm-server.yml dan memulai APM Server dengan menginisialisasi pod. Kemudian, Anda dapat menggunakan objek Service untuk mengimplementasikan penemuan layanan mandiri dan load balancing.
Konfigurasikan file apm-server.yml.
File tersebut berisi kode berikut:
--- apiVersion: v1 kind: ConfigMap metadata: name: apm-deployment-config namespace: kube-system labels: k8s-app: apmserver data: apm-server.yml: |- apm-server.host: "0.0.0.0:8200" output.elasticsearch: hosts: ['${ELASTICSEARCH_HOST:elasticsearch}:${ELASTICSEARCH_PORT:9200}'] username: ${ELASTICSEARCH_USERNAME} password: ${ELASTICSEARCH_PASSWORD} setup.kibana: host: "https://${KIBANA_HOST}:${KIBANA_PORT}" --- apiVersion: apps/v1 kind: Deployment metadata: name: apmserver namespace: kube-system labels: k8s-app: apmserver spec: selector: matchLabels: k8s-app: apmserver template: metadata: labels: k8s-app: apmserver spec: serviceAccountName: apmserver hostNetwork: true dnsPolicy: ClusterFirstWithHostNet containers: - name: apmserver image: docker.elastic.co/apm/apm-server:6.8.14 args: [ "-c", "/etc/apm-server.yml", "-e", ] env: - name: ELASTICSEARCH_HOST value: es-cn-oew20i5h90006****.elasticsearch.aliyuncs.com - name: ELASTICSEARCH_PORT value: "9200" - name: ELASTICSEARCH_USERNAME value: elastic - name: ELASTICSEARCH_PASSWORD value: **** - name: KIBANA_HOST value: es-cn-oew20i5h90006****-kibana.internal.elasticsearch.aliyuncs.com - name: KIBANA_PORT value: "5601" - name: NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName securityContext: runAsUser: 0 resources: limits: memory: 50Mi requests: cpu: 20m memory: 30Mi volumeMounts: - name: config mountPath: /etc/apm-server.yml readOnly: true subPath: apm-server.yml volumes: - name: config configMap: defaultMode: 0600 name: apm-deployment-config --- apiVersion: v1 kind: Service metadata: name: apmserver namespace: kube-system labels: k8s-app: apmserver spec: clusterIP: None ports: - name: http-metrics port: 8200 targetPort: 8200 selector: k8s-app: apmserver --- apiVersion: v1 kind: ServiceAccount metadata: name: apmserver namespace: kube-system labels: k8s-app: apmserver ---PentingSaat menggunakan kontroler Deployment untuk menerapkan APM Server, gambar docker.elastic.co/apm/apm-server:6.8.14 digunakan untuk menerapkan pod. Versi gambar harus konsisten dengan versi kluster Elasticsearch.
Port 8200 diekspos ke kluster ACK menggunakan objek Service. Ini memastikan bahwa agen APM dapat berkomunikasi dengan APM Server.
Parameter
Deskripsi
ELASTICSEARCH_HOST
Titik akhir internal kluster Elasticsearch Anda.
ELASTICSEARCH_PORT
Port privat kluster Elasticsearch Anda.
ELASTICSEARCH_USERNAME
Nama pengguna kluster Elasticsearch Anda. Nilai default parameter ini adalah elastic.
ELASTICSEARCH_PASSWORD
Kata sandi yang sesuai dengan nama pengguna elastic.
KIBANA_HOST
Titik akhir internal Kibana.
KIBANA_PORT
Port privat Kibana.
NODE_NAME
Host di kluster ACK.
Terapkan APM Server ke kontainer dan lihat status APM Server.
Gunakan klien kubectl untuk menjalankan perintah berikut:
kubectl apply -f apm-server.yml kubectl get pods -n kube-systemPentingPastikan bahwa sumber daya di dalam pod sedang berjalan. Jika tidak, data mungkin tidak akan ditampilkan di konsol Kibana.
Konfigurasikan agen APM.
Dalam contoh ini, Spring Boot digunakan untuk membuat aplikasi Spring sederhana dan mengekspor aplikasi tersebut menjadi paket JAR. Kemudian, paket JAR dan agen Java terbaru yang diunduh dari Maven Central Repository diunggah ke APM Server. Untuk informasi lebih lanjut, lihat Spring Boot dan Maven Central.
Masuk ke node kluster ACK dan buat Dockerfile bernama myapply di direktori kerja.
Dockerfile harus berisi informasi berikut:
FROM frolvlad/alpine-oraclejdk8 MAINTAINER peterwanghao.com VOLUME /tmp ADD spring-boot-0.0.1-SNAPSHOT.jar spring-boot-0.0.1-SNAPSHOT.jar ADD elastic-apm-agent-1.21.0.jar elastic-apm-agent-1.21.0.jar EXPOSE 8080 ENTRYPOINT ["java","-javaagent:/elastic-apm-agent-1.21.0.jar","-Delastic.apm.service_name=my-application","-Delastic.apm.server_url=http://apmserver:8200","-Delastic.apm.application_packages=com.example","-jar","/spring-boot-0.0.1-SNAPSHOT.jar"]Parameter dan perintah Java yang digunakan untuk memulai pod didefinisikan di ENTRYPOINT. Tabel berikut menjelaskan parameter-parameter ini.
Parameter
Deskripsi
-javaagent
Paket JAR agen APM.
-Delastic.apm.service_name
Nama objek Service. Nama tersebut dapat berisi huruf, angka, tanda hubung (-), garis bawah (_), dan spasi.
-Delastic.apm.server_url
URL APM Server. http://apmserver:8200 ditentukan dalam file apm-server.yml.
-Delastic.apm.application_packages
Paket perangkat lunak dasar aplikasi.
-jar
Paket JAR aplikasi.
Gunakan perintah
docker builddan Dockerfile myapply untuk membangun sebuah gambar.Jalankan perintah berikut di jalur saat ini:
docker build -t myapply .Muat gambar yang telah dibuat ke kontainer lainnya.
Konfigurasikan file penerapan untuk pod. File tersebut bernama my-application.yaml.
File tersebut berisi kode berikut:
--- apiVersion: v1 kind: Pod metadata: name: my-apply namespace: kube-system labels: app: my-apply spec: containers: - name: my-apply image: myapply:latest ports: - containerPort: 8080 imagePullPolicy: Never --- apiVersion: v1 kind: Service metadata: name: my-apply namespace: kube-system labels: app: my-apply spec: type: NodePort ports: - name: http-metrics port: 8080 nodePort: 30000 selector: app: my-apply ---Catatanimage menentukan gambar yang telah dibuat.
Gunakan klien kubectl untuk menjalankan perintah berikut guna menerapkan pod:
kubectl apply -f my-application.yamlGunakan perintah curl untuk mengakses host melalui port 30000 setelah semua sumber daya di dalam pod sedang berjalan.
Jalankan perintah curl berikut:
curl http://10.7.XX.XX:30000Catatan10.7.XX.XX menentukan alamat IP node di kluster ACK.
Jika akses ke host berhasil, agen APM telah diterapkan.
Lihat data pemantauan yang diperoleh oleh Elastic APM di konsol Kibana.
Masuk ke konsol Kibana kluster Elasticsearch Anda.
Untuk informasi lebih lanjut, lihat Masuk ke Konsol Kibana.
Klik APM di bilah navigasi sebelah kiri.
Temukan aplikasi yang performanya dipantau dan klik nama aplikasi tersebut. Kemudian, Anda dapat melihat statistik kinerja keseluruhan aplikasi. Dalam contoh ini, my-application digunakan.

Klik antarmuka yang diminta. Kemudian, Anda dapat melihat informasi permintaan terperinci.

Lihat statistik log dan metrik host serta pod.
Klik Actions dan pilih Show pod logs atau Show pod metrics. Kemudian, Anda dapat melihat statistik log atau metrik.


Tanya Jawab Umum
Deskripsi Masalah: Parameter resources.requests diatur ke nilai besar dalam file konfigurasi kluster ACK. Akibatnya, pod gagal dimulai.
Solusi: Ubah nilai parameter resources.requests. Parameter resources.requests harus ditentukan dalam file konfigurasi Metricbeat, Filebeat, dan Elastic APM. Kami sarankan Anda mengatur parameter ini ke nilai yang sesuai berdasarkan spesifikasi kluster ACK.
Deskripsi Masalah: Kesalahan terus terjadi saat saya menerapkan Metricbeat, Filebeat, dan Elastic APM. Pesan kesalahan serupa dengan
no matches for kind "DaemonSet" in version "extensions/v1beta1".Solusi: Gunakan versi API apps/v1. Hal ini karena file konfigurasi resmi menggunakan versi API extensions/v1beta1 untuk DaemonSets dan Deployments. Namun, di ACK V1.18 dan yang lebih baru, versi API extensions/v1beta1 sudah tidak digunakan lagi untuk DaemonSets, Deployments, dan ReplicaSets.