- vừa được xem lúc

Triển khai Confluent Kafka (Enterprise) cho Kubernetes

0 0 18

Người đăng: Hoang Minh

Theo Viblo Asia

Confluent Kafka giúp dễ dàng kết nối các ứng dụng, hệ thống của bạn với các luồng dữ liệu và xử lý chúng theo thời gian thực. Confluent Platform cung cấp giải pháp để triển khai các cluster Kafka trên Docker và Kubernetes đơn giản hơn so với Apache Kafka

Điều kiện tiên quyết

  • Kubectl và Helm 3 đã được cài đặt
  • Đối với bài hướng dẫn này, cluster Kubernetes của bạn được giả định đã có một default dynamic storage provisioner. Dùng lệnh kubectl get sc để kiểm tra xem cluster Kubernetes đã có default dynamic storage provisioner hay chưa.

Bước 1: Tạo một namespace

kubectl create namespace confluent

Set namespace confluent thành namespace mặc định

kubectl config set-context --current --namespace confluent

Bước 2: Cài đặt Confluent Platform cho Kubernetes

Thêm Confluent vào Helm repository.

helm repo add confluentinc https://packages.confluent.io/helm
helm repo update

Cài đặt Confluent Platform sử dụng helm

helm upgrade --install confluent-operator confluentinc/confluent-for-kubernetes

Hãy chắc chắn rằng Operator đã running và ready trước khi đi đến bước tiếp theo

kubectl get pods

Bước 3: Cài đặt các components của Confluent Platform

Các components của Confluent Platform bao gồm:

  • Zookeepers
  • Kafka Brokers
  • Kafka Connectors
  • KsqlDB
  • Control Center (Kafka Web UI)
  • Schema Registry
  • Kafka Rest Proxy
kubectl apply -f https://raw.githubusercontent.com/confluentinc/confluent-kubernetes-examples/master/quickstart-deploy/confluent-platform.yaml

Cài đặt một producer app và tạo topic để test.

kubectl apply -f https://raw.githubusercontent.com/confluentinc/confluent-kubernetes-examples/master/quickstart-deploy/producer-app-data.yaml

Kiểm tra mọi thứ đã Running và Ready hay chưa:

kubectl get pods

Bước 4: Tạo External Load balancer cho Control Center

Tạo một file control-center.yaml với nội dung như sau:

apiVersion: v1
kind: Service
metadata: name: kafka-ui-lb
spec: type: LoadBalancer sessionAffinity: None selector: app: controlcenter ports: - name: kafka-ui-lb port: 9021 protocol: TCP targetPort: 9021

Dùng kubectl để apply file cấu hình và kiểm tra xem Load balancer đã được tạo thành công hay chưa

kubectl apply -f control-center.yaml kubectl get svc

Mở Web Browser và truy cập đến địa chỉ <External-IP>:9021

Giới thiệu sơ qua về Control Center:

Đây là giao diện chính:

Brokers: Theo dõi tình trạng của các nút Brokers

Topics: Xem lại các Topic đã tạo, xem msg bên trong từng Topic, Produce msg

Connect: Quản lý các source, sink connectors

KsqlDB: Xử lý các tác vụ liên quan đến Kafka Stream

Bình luận

Bài viết tương tự

- vừa được xem lúc

Deploying A Containerized Web Application On Kubernetes

1. Overview. Kubernetes is an open source project (available on kubernetes.io) which can run on many different environments, from laptops to high-availability multi-node clusters; from public clouds to on-premise deployments; from virtual machines to bare metal.

0 0 27

- vừa được xem lúc

Kubernetes - Học cách sử dụng Kubernetes Namespace cơ bản

Namespace trong Kubernetes là gì. Tại sao nên sử dụng namespace.

0 0 96

- vừa được xem lúc

[Kubernetes] Kubectl và các command cơ bản

Mở đầu. Kubectl là công cụ quản trị Kubernetes thông qua giao diện dòng lệnh, cho phép bạn thực thi các câu lệnh trong Kubernetes cluster.

0 0 39

- vừa được xem lúc

Triển khai EFK Stack trên Kubernetes

EFK stack on K8S. Giới thiệu. Một hệ thống có thể chạy nhiều dịch vụ hoặc ứng dụng khác nhau, vì vậy việc. theo dõi hệ thống là vô cùng cần thiết.

0 0 54

- vừa được xem lúc

Thực hành Kubernetes (K8S) bằng cách sử dụng lệnh Command

Bài hướng dẫn hôm nay sẽ hướng dẫn sử dụng K8S bằng cách sử dụng câu lệnh thay vì UI trên web. Có 2 lựa chọn để thực hiện:. . Sử dụng Cloud Shell.

0 0 42

- vừa được xem lúc

Kubernetes best practices - Liveness và Readiness Health checks

Mở đầu. Kubernetes cung cấp cho bạn một framework để chạy các hệ phân tán một cách mạnh mẽ.

0 0 35