Điểm:1

Chứng chỉ Kubernetes Cert-Manager đã hết hạn

lá cờ si

Tôi đã kế thừa một môi trường GKE Kubernetes và đã cố gắng tìm ra điều này trong nhiều ngày nhưng tiếc là không biết phải thử gì tiếp theo.

Cụm được thiết lập để sử dụng trình quản lý chứng chỉ (được cài đặt qua helm) để áp dụng chứng chỉ Let's Encrypt cho cụm. Vì một số lý do, điều này đã hoạt động hoàn hảo trong hơn hai năm nhưng bắt đầu từ ngày 16/4, tôi bắt đầu thấy các cảnh báo SSL trong trình duyệt cho tất cả các ghi chú trên cụm.

Khi tôi chạy kubectl mô tả chứng chỉ site-cloud-tls chứng chỉ dường như đã được gia hạn nhưng không được áp dụng cho lưu lượng truy cập.

Tên: site-cloud-tls
Không gian tên: cs
Nhãn: <không có>
Chú thích: <không có>
Phiên bản API: certmanager.k8s.io/v1alpha1
Loại: Giấy chứng nhận
Metadata:
  Dấu thời gian tạo: 2019-06-02T09:55:05Z
  Thế hệ: 34
  Tài liệu tham khảo của chủ sở hữu:
    Phiên bản API: tiện ích mở rộng/v1beta1
    Xóa chủ sở hữu khối: true
    Bộ điều khiển: đúng
    Loại: Xâm nhập
    Tên: cs-nginx
    UID: 7f312326-851c-11e9-8bf0-4201ac10000c
  Phiên bản tài nguyên: 541365011
  UID: 7f36cc40-851c-11e9-8bf0-4201ac10000c
Thông số kỹ thuật:
  Tên DNS:
    site.cloud (đã đổi tên nhưng đúng)
  Người phát hành Giới thiệu:
    Loại:ClusterIssuer
    Tên: letencrypt-dns
  Tên bí mật: site-cloud-tls
Trạng thái:
  Điều kiện:
    Thời gian chuyển đổi cuối cùng: 2022-04-24T05:26:13Z
    Thông báo: Chứng chỉ được cập nhật và chưa hết hạn
    Lý do: Sẵn sàng
    Trạng thái: Đúng
    Loại: Sẵn sàng
  Không phải sau: 2022-06-15T17:01:48Z
Sự kiện: <không có>
kubectl mô tả xâm nhập
Tên: cs-nginx
Không gian tên: cs
Địa chỉ: 192.168.1.32
Chương trình phụ trợ mặc định: default-http-backend:80 (10.16.3.12:8080)
TLS:
  site-cloud-tls chấm dứt site.cloud (đã thay đổi cách đặt tên nhưng có vẻ đúng)
Quy tắc:
  Phụ trợ đường dẫn máy chủ
  ---- ---- --------
  trang web.cloud   
                             / trang web:8080 (10.10.10.10:8080)

Chú thích: certmanager.k8s.io/cluster-issuer: letsencrypt-dns
                             kubernetes.io/ingress.class: nginx
                             nginx.ingress.kubernetes.io/ssl-redirect: true
                             nginx.org/websocket-services: trung tâm dữ liệu
Sự kiện: <không có>

Chúng tôi có một môi trường dàn dựng cũng bị ảnh hưởng. Tôi đã thử cài đặt lại trình quản lý chứng chỉ, cài đặt lại nginx-ingress nhưng rất tiếc là không thể sao lưu và chạy mọi thứ (có thể do lỗi cấu hình mà tôi đã mắc phải).

Sau 3 ngày, tôi không biết đường nào là lên và không biết đủ rõ về Kubernetes để biết phải thử gì tiếp theo. Bất kỳ hướng dẫn? Tôi có thể cung cấp bất kỳ thông tin bổ sung nào có thể hữu ích không?

Cảm ơn bạn!

Gabriel Robledo Ahumada avatar
lá cờ us
là câu trả lời hữu ích?
Điểm:0
lá cờ us

Vấn đề ở đây là bạn đang đề cập đến một tổ chức phát hành cụm loại trong định nghĩa Ingress của bạn:

Chú thích: certmanager.k8s.io/cluster-issuer: letsencrypt-dns

Nhưng đối tượng bạn đã xác định là một Giấy chứng nhận Tốt bụng:

Tên: site-cloud-tls
Không gian tên: cs
Nhãn: <không có>
Chú thích: <không có>
Phiên bản API: certmanager.k8s.io/v1alpha1
Loại: Giấy chứng nhận

Đó là lý do tại sao nó không được áp dụng cho Ingress. Những gì bạn cần là tạo một Tổ chức phát hành tài nguyên trong Kubernetes để xử lý chứng chỉ. Ở đây bạn có thể tìm thấy một ví dụ cơ bản ACME Nhà phát hành cụm tệp kê khai:

apiVersion: cert-manager.io/v1
loại:ClusterIssuer
metadata:
  tên: letencrypt-staging
thông số kỹ thuật:
  tốt:
    # Bạn phải thay thế địa chỉ email này bằng địa chỉ email của chính bạn.
    # Let's Encrypt sẽ sử dụng thông tin này để liên hệ với bạn về việc hết hạn
    # chứng chỉ và các vấn đề liên quan đến tài khoản của bạn.
    email: [email protected]
    máy chủ: https://acme-staging-v02.api.letsencrypt.org/directory
    privateKeySecretRef:
      # Tài nguyên bí mật sẽ được sử dụng để lưu trữ khóa riêng của tài khoản.
      tên: ví dụ-nhà phát hành-tài khoản-khóa
    # Thêm một trình giải quyết thách thức duy nhất, HTTP01 bằng nginx
    người giải quyết:
    -http01:
        xâm nhập:
          lớp: nginx

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.