Sự khác biệt giữa SRE và DevOps là gì?


57

Sự khác biệt giữa SRE và DevOps là gì?

Các hoạt động Kỹ thuật và Phát triển Độ tin cậy của Trang web dường như trùng lặp rất nhiều về chi tiết. Làm thế nào để tôi biết nhóm nào chịu trách nhiệm cho việc gì và làm thế nào để tôi biết công việc nào sẽ phù hợp với kỹ năng của mình?

Có vẻ như SRE là về việc duy trì máy chủ và mạng, và DevOps là về việc duy trì mã, điều đó có đúng không? Vẫn không có sự chồng chéo giữa hai thứ đó sao?


3
Tôi nghĩ rằng DevOps đã bị lạm dụng như một thuật ngữ mà nó có nghĩa là bất cứ điều gì hoặc không có gì tại thời điểm này.
gà con

1
Một công ty tôi đã nói chuyện có cả SRE và nhóm DevOps. Họ nói với tôi rằng DevOps đã được sử dụng để tạo các ứng dụng mới (0-6 tháng) và SRE đang duy trì các ứng dụng cũ. Cả hai đều là nhà phát triển sử dụng các ứng dụng tự động hóa, mã hóa và phát hành.
Paul Totzke

1
Tôi nghĩ rằng cuốn sách của Google về SRE sẽ là một cuốn sách hay để hiểu nó là gì: Landing.google.com/sre
Kyle Steenkamp

Câu trả lời:


49

DevOps là về việc duy trì mã, điều đó có đúng không?

DevOps không "chỉ" về mã, hoặc hệ thống, hoặc bất kỳ điều gì. DevOps là một thuật ngữ rất chung bao gồm tất cả những thứ liên quan đến phân phối phần mềm.

Kỹ thuật Độ tin cậy Trang web là một thuật ngữ phổ biến bởi Google. Từ bài viết này https://landing.google.com/sre/interview/ben-treynor.html chúng ta có thể chưng cất TL; DR của họ:

Về cơ bản, đó là những gì xảy ra khi bạn yêu cầu một kỹ sư phần mềm thiết kế một chức năng hoạt động.

Hoạt động, kỹ thuật và phát triển phần mềm đang làm mờ cùng nhau. Mức độ tự động hóa cần thiết để tạo và duy trì cơ sở hạ tầng trưởng thành đòi hỏi các kỹ năng từ cả ba. SRES là quản trị viên, các kỹ sư, các nhà phát triển.

Xem thêm: http://shop.oreilly.com/product/0636920041528.do


6
DevOps không bị hạn chế đơn giản đối với phần mềm, đó là một quan niệm sai lầm. Nó nên gắn tất cả các cách để thiết kế sản phẩm, yêu cầu sản phẩm, tài liệu, vv Nó được cho là theo toàn bộ chuỗi giá trị từ một khách hàng trở lại khách hàng. Hạn chế quan điểm dẫn đến giảm tác động và cuối cùng là hiểu lầm về vai trò là kỹ sư phát hành tinh vi hơn.
Jiri Klouda

Tôi vẫn chưa hiểu sự khác biệt giữa DevOps EngineeringSRE workngoài đó là một từ viết tắt được phát triển bởi Google và được hỗ trợ bởi một cuốn sách khá hay (miễn phí!).
BlackV Donable

Kỹ sư độ tin cậy trang web là một tiêu đề thực tế và mô tả công việc. Nó ngụ ý chỉ những gì nó nói. Một tiêu đề có thể ám chỉ DevOps về phía phần mềm là Kỹ sư nền tảng, nơi bạn đang xây dựng và tự động hóa một nền tảng để các nhà phát triển triển khai. Trong khi đó, SRE là người chịu trách nhiệm cho những gì từng là hoạt động tiêu biểu. Đây là một chút giai thoại nhưng có lẽ có thể giúp bạn hiểu @BlackV Donable.
Matt O.

1
Có một loạt các video YouTube tuyệt vời từ Seth Vargo và Liz Fong (Google chúng.) Họ nói rõ: "SRE lớp thực hiện DevOps." SRE là một thực tiễn cụ thể, chính thức tuân theo nhiều nguyên tắc DevOps.
Dave Swersky


21

Dave Swersky đã đăng một phản hồi xuất sắc ở trên với định nghĩa về SRE của Ben Treynor, ngày nay vẫn sâu sắc như năm 2003.

Về cơ bản, đó là những gì xảy ra khi bạn yêu cầu một kỹ sư phần mềm thiết kế một chức năng hoạt động.

Vì vậy, trong nỗ lực định nghĩa thêm "DevOps", đây là đoạn trích từ cuốn sách DevOps hiệu quả của Jennifer Davis & Kinda Daniels:

Devops là một cách suy nghĩ và một cách làm việc. Đó là một khuôn khổ để chia sẻ những câu chuyện và phát triển sự đồng cảm ... [nó] không chỉ là một phương pháp phát triển phần mềm khác.

Các chiến thuật [P] có thể bao gồm các phương thức phát triển phần mềm hoặc các tính năng như tự động hóa cơ sở hạ tầng và phân phối liên tục, [mặc dù] nó không chỉ là tổng của các phần này.

Mặc dù các khái niệm này có liên quan và có thể được nhìn thấy thường xuyên trong môi trường tín đồ, nhưng chỉ tập trung vào chúng sẽ bỏ lỡ bức tranh lớn hơn - các khía cạnh văn hóa và giữa các cá nhân mang lại sức mạnh cho nó.

Tóm lại: một SRE hiệu quả sẽ thúc đẩy các thực tiễn DevOps.

-

Cũng thế:

Làm thế nào để tôi biết nhóm nào chịu trách nhiệm cho những gì?

Quyền sở hữu không nên ngầm; giao tiếp!


17

Kỹ thuật Độ tin cậy Trang web thuộc các hoạt động truyền thống ít nhiều, nhưng được kiểm soát phiên bản và tự động hóa nhiều, còn được gọi là Cơ sở hạ tầng dưới dạng Mã . Đó là một vai trò dọc được xác định rõ . Trong DevOps hiện đại, đây là lát cắt dọc liên quan đến Hoạt động. Bạn có thể có một nhóm SRE.

DevOps như vậy là một sự thay đổi văn hóa cho một tổ chức. Ngoài cấu trúc quản lý theo chiều dọc, từ trên xuống, dọc, nó tạo ra một kết nối ngang giữa các nhóm dọc theo các đường phân phối công việc trong suốt chuỗi giá trị . Đối với một kỹ sư, đó là một vai trò ngang được xác định một cách lỏng lẻo ràng buộc nhiều nhóm với nhau, đảm bảo rằng công việc diễn ra suôn sẻ và nhanh chóng trong toàn tổ chức. Bạn không thể có một nhóm các kỹ sư DevOps, đó là một oxymoron , vì vượt qua các ranh giới nhóm là một phần quan trọng của vai trò.


Bất kỳ liên kết đến các nguồn có liên quan sẽ là tuyệt vời.
kenorb

1

Một cách khác để mô tả sự khác biệt giữa Kỹ thuật Độ tin cậy Trang webDevOps là xem xét giải thích của Wikipedia về một Site Reliability Engineer, bắt đầu như vậy:

Kỹ sư độ tin cậy trang web (SRE) là một mô tả công việc được trao cho các kỹ sư phần mềm tập trung vào độ tin cậy, khả năng mở rộng và phát triển cơ sở hạ tầng điện toán đám mây, được gọi là Kỹ thuật độ tin cậy trang web (SRE).

Vì vậy, bạn có thể coi SRE là những người liên quan đến Building walls...

Tuy nhiên, lời giải thích của WikipediaDevOps bắt đầu như vậy:

DevOps ... là một thuật ngữ dùng để chỉ một tập hợp thực hành nhấn mạnh sự hợp tác và giao tiếp của cả nhà phát triển phần mềm và chuyên gia công nghệ thông tin (CNTT) trong khi tự động hóa quá trình phân phối phần mềm và thay đổi cơ sở hạ tầng. Nó nhằm mục đích thiết lập một nền văn hóa và môi trường nơi việc xây dựng, thử nghiệm và phát hành phần mềm có thể xảy ra nhanh chóng, thường xuyên và đáng tin cậy hơn.

Điều không nói là tất cả các hoạt động DevOps này thực sự được kích hoạt bởi một Nhu cầu từ phía doanh nghiệp. Vì vậy, kết hợp với việc xây dựng và thử nghiệm (các Phát triển một phần của nó) và phát hành của phần mềm, DevOps về một DDR (= Nhu cầu-Phát triển-Release) văn hóa và môi trường, trong đó một số người có thể nhớ từ những 9 giây của một bài phát biểu lịch sử để Tear down this wall.

Tham khảo câu hỏi về việc ngừng hoạt động ngắn gọn được lên kế hoạch cho Thứ tư, ngày 3 tháng 5 năm 2017 lúc 8 giờ tối theo giờ Mỹ / Đông (như máy khoan lửa cho máy tính) để biết ví dụ về tất cả các trang web SE ... được đăng (ký) bởi người dùng có chức danh SRE Manager , Tràn ngăn xếp, Inc.


Tôi không tuân theo lập luận rằng SRE liên quan đến việc xây dựng các bức tường. Trường hợp bạn nhận được rằng từ đâu?
Xiong Chiamiov

Ngoài ra, Tom Limoncelli được biết đến với nhiều thứ hơn là chỉ làm việc tại Stack Exchange.
Xiong Chiamiov
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.