thách thức số liệu triển khai trước DevOps


9

TL; DR, làm thế nào để bạn chứng minh các tín đồ, cụ thể là tự động triển khai, cải thiện tỷ lệ thất bại thay đổi?

Tất cả chúng ta đều cố gắng nắm bắt các số liệu về 'thất bại triển khai' bằng cách sử dụng các phương tiện hiện tại (chủ yếu là thủ công). Thật không may, một "thất bại" hiếm khi xảy ra, phải không? Bởi vì khi có sự cố xảy ra, nhóm kết hợp với nhau (điển hình là anh hùng) để khắc phục sự cố (thường là quyền, cấu hình bị bỏ lỡ, bạn biết máy khoan). Vì vậy, ... khi chúng tôi hỏi việc triển khai đã diễn ra như thế nào, câu trả lời là "nó đã hoạt động".

Nhưng, theo trực giác tất cả chúng ta đều biết rằng điều đó không tốt. Báo cáo tình trạng sùng đạo năm 2017 cho biết có khoảng 31-45% " tỷ lệ thất bại thay đổi " . Không Bởi vì chúng được sửa khá nhanh, thường là trong quá trình xác nhận. Thật hiếm khi thực sự quay trở lại một triển khai.

Vì vậy, cần có kỷ luật để báo cáo tỷ lệ thất bại chính xác. Chúng tôi không khuyến khích báo cáo như vậy bởi vì chúng tôi muốn mọi thứ hoạt động và chúng tôi làm những gì cần thiết để thực hiện nó.

Vì vậy, làm thế nào để bạn chứng minh các tín đồ, cụ thể là tự động triển khai, cải thiện tỷ lệ thất bại thay đổi?

(PS đã cố gắn thẻ này với "# devops-ability-model")


Một điều có thể hữu ích là xem xét các trường hợp nghiên cứu như các ví dụ (ngoài các khảo sát mà bạn tham khảo).
James Shewey

Câu trả lời:


6

Một kỹ thuật chúng ta đã sử dụng trong quá khứ trong các tình huống tương tự là để có được "cam kết quản lý" áp đặt các quy tắc này cho mọi thành viên trong nhóm:

  1. Quyền truy cập để thực hiện cập nhật cho các khu vực triển khai mục tiêu (nghĩa là sản xuất) bị giới hạn ở các hệ thống tự động được chọn, có các bản kiểm toán thích hợp (= ghi nhật ký) của bất kỳ loại cập nhật nào cho các khu vực họ quản lý.

  2. Vì các lý do cập nhật thủ công cho các khu vực triển khai mục tiêu, vì bất kỳ lý do gì, không còn được phép bởi các thành viên nhóm điển hình (id người dùng) đã từng có thể (được ủy quyền) để thực hiện các cập nhật này. Thay vào đó, ID người dùng MỚI (bổ sung) sẽ được tạo, sẽ có tất cả các quyền cần thiết để (vẫn) thực hiện các cập nhật thủ công như vậy, bất cứ khi nào cần. Nhưng để thực sự có thể sử dụng các ID người dùng mới đó (= thực hiện đăng nhập với họ), thành viên nhóm muốn thực hiện đăng nhập bằng ID người dùng mới đó sẽ phải thực hiện "một số" bước bổ sung để có quyền truy cập vào mật khẩu cho Id người dùng mới như vậy. Lý tưởng nhất là bước bổ sung này cũng được tự động hóa (sử dụng trí tưởng tượng của bạn trông như thế nào), nhưng nếu có bất kỳ điều gì khác không thành công: chỉ cần liên hệ (= eMail, gọi, v.v.) người giữ cổng mật khẩu cần thiết, bao gồm cả "vấn đề họ gặp phải để được sửa chữa "

  3. Có được người giữ cửa như vậy không phải là một công việc dễ dàng. Và sức đề kháng cao nhất sẽ đến từ ... các thành viên trong nhóm (vì đủ loại lý do). Do đó, một biến thể của các ID người dùng mới này (như ở bước trước) là mỗi thành viên trong nhóm có thêm một ID người dùng (với mật khẩu họ tự quyết định), nhưng với một chuỗi bổ sung được đính kèm: họ chỉ được phép thực hiện một đăng nhập bằng ID người dùng (thêm) đó nếu họ thực sự có lý do chính đáng để làm như vậy. Và mỗi lần họ thực hiện đăng nhập như vậy, họ được yêu cầu nộp một số loại báo cáo về "vấn đề họ đã sửa" (tương tự như câu hỏi của bạn).

Với các quy trình này, tất cả những gì còn lại phải làm là định kỳ xem xét từng báo cáo / lý do tại sao bắt buộc phải sử dụng ID người dùng đặc biệt đó và đặt câu hỏi " Có cách nào có thể được thực hiện để tự động hóa thêm nữa không, để tiếp tục giảm nhu cầu đăng nhập đặc biệt như vậy? ".

Cập nhật :

Trích dẫn từ bình luận thêm của bạn bên dưới câu trả lời này:

Tôi nghĩ rằng việc thêm các rào cản nhân tạo để khắc phục vấn đề triển khai là phản tác dụng.

Đúng là nó có thêm một rào cản, nhưng tôi không tin đó là "nhân tạo". Bởi vì, theo hiểu biết của tôi, cách duy nhất để nhận thức được những điều mà các thành viên trong nhóm sẽ không bao giờ nói với bạn, vì những lý do như:

  • bảo đảm công việc.
  • những điều xấu / thực hành họ thích giữ kín.
  • quyền lực họ không muốn mất.

Cảm ơn phản hồi đó. Trong khi điều đó có thể hoạt động, tôi nghĩ rằng việc thêm các rào cản nhân tạo để khắc phục vấn đề triển khai là phản tác dụng. Đó là một cây gậy nặng để sử dụng nhưng có thể cần thiết trong một số trường hợp. Tôi thích một đánh giá sau triển khai bắt buộc một khi khói tan. Nó ít phá hủy hơn nhưng đòi hỏi cùng một mức độ cam kết quản lý. Tôi chỉ tò mò nếu những người khác đã làm điều này.
John O'Keefe

5

Báo cáo tình trạng sùng đạo năm 2017 cho biết có khoảng 31-45% "tỷ lệ thất bại thay đổi". Trong khi điều đó bằng trực giác nghe có vẻ đúng, họ có bị theo dõi là sự cố không? Không Bởi vì chúng được sửa khá nhanh, thường là trong quá trình xác nhận.

Một vấn đề được khắc phục nhanh chóng vẫn là một vấn đề. Nếu bạn không báo cáo những điều này như vậy, đó là một vấn đề.

Vì vậy, cần có kỷ luật để báo cáo tỷ lệ thất bại chính xác. Chúng tôi không khuyến khích báo cáo như vậy bởi vì chúng tôi muốn mọi thứ hoạt động và chúng tôi làm những gì cần thiết để thực hiện nó.

Nếu mục tiêu của bạn thực sự là để mọi thứ hoạt động, thì bạn cần trung thực về những thất bại để bạn có thể ngăn chặn chúng trong tương lai. Có vẻ như nhóm ở đây đang nói dối (có lẽ với chính họ, chắc chắn là quản lý) về những thất bại bởi vì mục tiêu của họ là có những thứ dường như đang hoạt động.

Đây là những điều khác nhau. Ví dụ, lấy một trò đùa cũ rằng QA tạo ra các lỗi - "mã của tôi vẫn ổn cho đến khi QA hiểu được, và sau đó họ đã tạo ra tất cả các lỗi này!". Các lỗi đã có tất cả cùng, nhưng nhà phát triển đã không biết gì về chúng. Mục tiêu của nhóm hoạt động phải là độ tin cậy thực tế và họ cần được khuyến khích như vậy bởi ban quản lý của họ. Điều đó có nghĩa là nếu họ đặt nhiều giám sát hơn dẫn đến việc phát hiện ra các vấn đề mới, họ nên được khen thưởng, không bị phạt vì giảm số liệu về độ tin cậy sau đó.


TL; DR, làm thế nào để bạn chứng minh các tín đồ, cụ thể là tự động triển khai, cải thiện tỷ lệ thất bại thay đổi?

Nếu bạn đang cố gắng thúc đẩy sự thay đổi trong tổ chức của mình, thì bạn không nên cố gắng chứng minh bất cứ điều gì, nhưng hãy cung cấp bằng chứng về những gì các tổ chức khác nói về sự chuyển đổi của chính họ. Nếu bạn đang cố gắng đo lường các quy trình mà bạn đã có và chứng minh sự tồn tại liên tục của chúng, thì bạn nên theo dõi các số liệu độ tin cậy tiêu chuẩn, như thời gian trung bình để sửa chữa (MTTR).

Nhưng các nguyên tắc devops không chỉ đơn thuần là tăng độ tin cậy. Ngay cả kỹ thuật độ tin cậy trang web không chỉ đơn thuần là tăng độ tin cậy. Thay vào đó, bạn muốn đạt đến một mức độ tin cậy phù hợp - điều có lợi cho doanh nghiệp nhưng không cản trở sự phát triển. Và điều đó mang đến động lực thực sự trong các tín đồ, đó là trao quyền cho sự thay đổi . Bạn muốn cho phép doanh nghiệp phản ứng nhanh hơn với các kích thích thị trường, điều này xảy ra bằng cách giảm ma sát của nhà phát triển, tăng tỷ lệ triển khai, tự động hóa các quy trình thủ công, v.v. trong khi vẫn ở trong giới hạn tin cậy chấp nhận được. Điều này có nghĩa là bạn cần đo độ tin cậy, nhưng bạn cũng cần đo vận tốc, bởi vì mục tiêu của bạn là tăng cái sau trong khi giữ cho cái trước tương đối tĩnh.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.