Khám nghiệm tử thi sự cố: Ngày 23 tháng 2021 năm XNUMX Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.

Khám nghiệm tử thi sau sự cố: ngày 23 tháng 2021 năm XNUMX

Tổng kết

Từ 4:00 chiều đến khoảng 5:36 chiều theo giờ Thái Bình Dương vào Thứ Ba, ngày 23 tháng XNUMX, chúng tôi đã gặp phải sự cố ngừng hoạt động trên hầu hết các hệ thống sản xuất của Coinbase. Trong thời gian ngừng hoạt động này, người dùng không thể truy cập Coinbase bằng các trang web và ứng dụng của chúng tôi, do đó không thể sử dụng các sản phẩm của chúng tôi. Bài đăng này nhằm mục đích mô tả những gì đã xảy ra và nguyên nhân cũng như thảo luận về cách chúng tôi dự định tránh những vấn đề như vậy trong tương lai.

Các sự cố

Vào ngày 23 tháng 2021 năm 4, lúc 00:24 chiều theo giờ Thái Bình Dương (2021 tháng 00 năm 00, 90:XNUMX giờ UTC), chứng chỉ SSL cho tên máy chủ nội bộ trong một trong các tài khoản Amazon Web Services (AWS) của chúng tôi đã hết hạn. Chứng chỉ SSL hết hạn đã được sử dụng bởi nhiều công cụ cân bằng tải nội bộ của chúng tôi, điều này khiến phần lớn thông tin liên lạc giữa các dịch vụ bị lỗi. Do thực tế là lớp định tuyến API của chúng tôi kết nối với các dịch vụ phụ trợ thông qua miền phụ của tên máy chủ nội bộ này, khoảng XNUMX% lưu lượng truy cập API đến đã trả về lỗi.

Tỷ lệ lỗi trở lại bình thường sau khi chúng tôi có thể di chuyển tất cả các bộ cân bằng tải sang chứng chỉ hợp lệ.

Khám nghiệm tử thi sự cố: Ngày 23 tháng 2021 năm XNUMX Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.
Biểu đồ mô tả tỷ lệ lỗi 90% tổng thể ở lớp định tuyến API của chúng tôi trong thời gian xảy ra sự cố.

Bối cảnh: Chứng chỉ tại Coinbase

Sẽ rất hữu ích nếu bạn cung cấp một số thông tin cơ bản về cách chúng tôi quản lý chứng chỉ SSL tại Coinbase. Phần lớn, các chứng chỉ cho tên máy chủ công cộng như coinbase.com được Cloudflare quản lý và cấp phép. Đối với các chứng chỉ cho tên máy chủ nội bộ được sử dụng để định tuyến lưu lượng giữa các dịch vụ phụ trợ, trước đây chúng tôi đã tận dụng Chứng chỉ máy chủ AWS IAM.

Một trong những nhược điểm của Chứng chỉ máy chủ IAM là chứng chỉ phải được tạo bên ngoài AWS và được tải lên thông qua lệnh gọi API. Vì vậy, năm ngoái, nhóm cơ sở hạ tầng của chúng tôi đã chuyển từ Chứng chỉ máy chủ IAM sang Trình quản lý chứng chỉ AWS (ACM). ACM giải quyết vấn đề bảo mật vì AWS tạo cả thành phần công khai và riêng tư của chứng chỉ trong ACM và lưu trữ phiên bản được mã hóa trong IAM cho chúng tôi. Chỉ các dịch vụ được kết nối như Cloudfront và Elastic Load Balancers mới có quyền truy cập vào các chứng chỉ. Từ chối acm: ExportCertificate quyền đối với tất cả các Vai trò IAM AWS đảm bảo rằng chúng không thể xuất được.

Ngoài các lợi ích bảo mật bổ sung, ACM cũng tự động gia hạn chứng chỉ trước khi hết hạn. Do các chứng chỉ ACM phải gia hạn và chúng tôi đã thực hiện di chuyển, điều này đã xảy ra như thế nào?

Phân tích nguyên nhân gốc rễ

Những người ứng phó sự cố nhanh chóng nhận thấy rằng chứng chỉ đã hết hạn là Chứng chỉ máy chủ IAM. Điều này thật bất ngờ vì việc di chuyển ACM nói trên đã được công bố rộng rãi trên các kênh truyền thông kỹ thuật vào thời điểm đó; do đó, chúng tôi đã hoạt động với giả định rằng chúng tôi đang chạy độc quyền trên các chứng chỉ ACM.

Như chúng tôi sau đó đã phát hiện ra, một trong những lần di chuyển chứng chỉ không diễn ra như kế hoạch; nhóm kỹ sư làm việc trong quá trình di chuyển đã tải lên chứng chỉ IAM mới và hoãn phần còn lại của quá trình di chuyển. Thật không may, sự chậm trễ đã không được thông báo rộng rãi như lẽ ra phải có và những thay đổi về cấu trúc đội ngũ và nhân sự dẫn đến việc dự án được giả định là hoàn thành không chính xác.

Tình trạng di cư sang một bên, bạn có thể đặt câu hỏi tương tự mà chúng tôi đã tự hỏi: “Tại sao chúng tôi không được thông báo về chứng chỉ hết hạn này?” Câu trả lời là: chúng tôi đã. Cảnh báo đã được gửi đến một nhóm phân phối email mà chúng tôi phát hiện ra rằng chỉ bao gồm hai cá nhân. Nhóm này ban đầu lớn hơn, nhưng thu hẹp lại do sự ra đi của các thành viên trong nhóm và không bao giờ đủ số lượng trở lại khi những người mới tham gia vào nhóm.

Tóm lại, chứng chỉ quan trọng được phép hết hạn do cả ba yếu tố:

  1. Quá trình di chuyển IAM sang ACM chưa hoàn tất.
  2. Cảnh báo hết hạn chỉ được gửi qua email và đã được lọc hoặc bỏ qua.
  3. Chỉ có hai cá nhân trong danh sách gửi email.

Giải pháp & Cải tiến

Để giải quyết sự cố, chúng tôi đã di chuyển tất cả các bộ cân bằng tải đang sử dụng chứng chỉ IAM đã hết hạn sang chứng chỉ ACM tự động gia hạn hiện có đã được cấp phép như một phần của kế hoạch di chuyển ban đầu. Quá trình này mất nhiều thời gian hơn mong muốn do số lượng bộ cân bằng tải tham gia và sự thận trọng của chúng tôi trong việc xác định, thử nghiệm và áp dụng các thay đổi cơ sở hạ tầng bắt buộc.

Để đảm bảo chúng tôi không gặp phải sự cố như thế này một lần nữa, chúng tôi đã thực hiện các bước sau để giải quyết các yếu tố được đề cập trong phần RCA ở trên:

  1. Chúng tôi đã hoàn tất quá trình di chuyển sang ACM, không còn sử dụng Chứng chỉ máy chủ IAM và đang xóa mọi chứng chỉ cũ để giảm nhiễu.
  2. Chúng tôi đang bổ sung tính năng giám sát tự động được kết nối với hệ thống phân trang và cảnh báo của chúng tôi để tăng cường cảnh báo qua email. Những điều này sẽ trang khi sắp hết hạn cũng như khi chứng chỉ ACM hết khả năng tự động gia hạn.
  3. Chúng tôi đã thêm bí danh nhóm vĩnh viễn vào danh sách phân phối email. Hơn nữa, nhóm này được cập nhật tự động khi nhân viên tham gia và rời khỏi công ty.
  4. Chúng tôi đang xây dựng một kho lưu trữ các hoạt động khắc phục sự cố nhằm giảm thời gian xác định, kiểm tra và áp dụng các thay đổi mới.

Chúng tôi rất coi trọng thời gian hoạt động và hiệu suất của cơ sở hạ tầng của mình và chúng tôi đang nỗ lực để hỗ trợ hàng triệu khách hàng chọn Coinbase để quản lý tiền điện tử của họ. Nếu bạn quan tâm đến việc giải quyết những thách thức như những thách thức được liệt kê ở đây, đến làm việc với chúng tôi.

Khám nghiệm tử thi sự cố: Ngày 23 tháng 2021 năm XNUMX Thông tin dữ liệu PlatoBlockchain. Tìm kiếm dọc. Ái.


Khám nghiệm tử thi sau sự cố: ngày 23 tháng 2021 năm XNUMX ban đầu được xuất bản trong Blog Coinbase trên Medium, nơi mọi người đang tiếp tục cuộc trò chuyện bằng cách nhấn mạnh và trả lời câu chuyện này.

Source: https://blog.coinbase.com/incident-post-mortem-november-23-2021-d507821b8459?source=rss—-c114225aeaf7—4

Dấu thời gian:

Thêm từ Coinbase