Lỗi này liên quan đến việc cấu hình không đúng cho updateStrategy của StatefulSet và cổng dịch vụ (ports) trong tệp values.yaml khi cài đặt Logstash bằng Helm.
Cách khắc phục
- Lỗi updateStrategy không hợp lệ Trong thông báo lỗi, có thông tin rằng giá trị của updateStrategy cho StatefulSet không hợp lệ. StatefulSet chỉ hỗ trợ hai chiến lược cập nhật là RollingUpdate hoặc OnDelete. Cần kiểm tra và cập nhật cấu hình values.yaml cho đúng.
Ví dụ, trong tệp values.yaml, tìm phần cấu hình liên quan đến updateStrategy và đảm bảo rằng nó trông như sau:
yaml Copy code updateStrategy: type: RollingUpdate Nếu bạn muốn sử dụng kiểu cập nhật khác, có thể thay đổi thành:
yaml Copy code updateStrategy: type: OnDelete 2. Thiếu cổng (ports) trong dịch vụ Lỗi tiếp theo liên quan đến việc thiếu cấu hình ports trong Service. Dịch vụ logstash-logstash yêu cầu ít nhất một cổng để có thể hoạt động đúng cách.
Trong tệp values.yaml, tìm hoặc thêm phần cấu hình service với các cổng được khai báo. Ví dụ:
yaml Copy code service: type: ClusterIP ports: - name: beats port: 5044 targetPort: 5044 protocol: TCP - name: http port: 9600 targetPort: 9600 protocol: TCP Đảm bảo rằng bạn đã cấu hình ít nhất một cổng để dịch vụ có thể hoạt động.
- Cài đặt lại Helm Sau khi chỉnh sửa tệp values.yaml, bạn có thể thử lại lệnh Helm:
bash Copy code helm install logstash elastic/logstash -f /home/admin/demo/ELK/kibana/kibana/values.yaml --namespace elks Điều này sẽ giúp đảm bảo rằng Logstash được cài đặt với cấu hình hợp lệ cho cả StatefulSet và Service.
Tóm tắt Sửa updateStrategy thành RollingUpdate hoặc OnDelete. Thêm các cổng (ports) cho dịch vụ trong values.yaml. Sau các bước này, việc cài đặt Logstash bằng Helm nên hoạt động bình thường.
service: type: ClusterIP # Loại service, có thể là ClusterIP, NodePort, hoặc LoadBalancer ports: - name: beats # Tên cổng cho Beats port: 5055 # Cổng service targetPort: 5055 # Cổng container - name: http # Tên cổng cho Logstash API port: 9600 # Cổng service targetPort: 9600 # Cổng container