ความแตกต่างระหว่าง SRE และ DevOps คืออะไร


57

ความแตกต่างระหว่าง SRE และ DevOps คืออะไร

วิศวกรรมความน่าเชื่อถือของไซต์และการดำเนินการพัฒนาดูเหมือนจะทับซ้อนกันในรายละเอียดมากมาย ฉันจะรู้ได้อย่างไรว่ากลุ่มใดรับผิดชอบเรื่องอะไรและฉันจะรู้ได้อย่างไรว่างานใดเหมาะสมกับทักษะของฉัน

ดูเหมือนว่า SRE เกี่ยวกับการบำรุงรักษาเซิร์ฟเวอร์และเครือข่ายและ DevOps เกี่ยวกับการบำรุงรักษารหัสถูกต้องหรือไม่ ยังคงมีการทับซ้อนระหว่างสองสิ่งนี้ไม่ถูกต้องหรือไม่?


3
ฉันคิดว่า DevOps ถูกทารุณกรรมเป็นคำที่มีความหมายอะไรหรือไม่มีอะไรในจุดนี้
ลูกไก่

1
บริษัท ที่ฉันคุยด้วยมีทั้งทีม SRE และทีม DevOps พวกเขาบอกฉันว่า DevOps ใช้สำหรับการสร้างแอปพลิเคชันใหม่ (0-6 เดือน) และ SRE กำลังบำรุงรักษาแอปพลิเคชันเก่า ทั้งคู่เป็นนักพัฒนาที่ใช้ระบบอัตโนมัติเข้ารหัสและเปิดตัวแอพ
Paul Totzke

1
ฉันคิดว่าหนังสือ Googles บน SRE จะเป็นการอ่านที่ดีเพื่อทำความเข้าใจว่ามันคืออะไร: landing.google.com/sre
Kyle Steenkamp

คำตอบ:


49

DevOps เกี่ยวกับการบำรุงรักษาโค้ดถูกต้องหรือไม่

DevOpsไม่ใช่ "เพียงแค่" เกี่ยวกับโค้ดหรือระบบหรือสิ่งใดสิ่งหนึ่ง DevOps เป็นคำทั่วไปที่ครอบคลุมทุกสิ่งที่เกี่ยวข้องกับการส่งมอบซอฟต์แวร์

วิศวกรรมความน่าเชื่อถือของเว็บไซต์เป็นคำที่ Google ได้รับความนิยม จากบทความนี้https://landing.google.com/sre/interview/ben-treynor.htmlเราสามารถกลั่น TL; DR ได้:

โดยพื้นฐานแล้วจะเกิดอะไรขึ้นเมื่อคุณขอให้วิศวกรซอฟต์แวร์ออกแบบฟังก์ชันการทำงาน

การดำเนินงานวิศวกรรมและการพัฒนาซอฟต์แวร์มีความพร่ามัวกัน ระดับของระบบอัตโนมัติที่จำเป็นในการสร้างและบำรุงรักษาโครงสร้างพื้นฐานที่เป็นผู้ใหญ่ต้องใช้ทักษะจากทั้งสาม SREs คือผู้ดูแลระบบและวิศวกรและนักพัฒนา

ดูเพิ่มเติมที่: http://shop.oreilly.com/product/0636920041528.do


6
DevOps นั้นไม่ได้ จำกัด เพียงซอฟต์แวร์ แต่เป็นความเข้าใจผิด ควรเชื่อมโยงกับการออกแบบผลิตภัณฑ์ข้อกำหนดของผลิตภัณฑ์เอกสาร ฯลฯ ตลอดจนควรปฏิบัติตามห่วงโซ่คุณค่าทั้งหมดจากลูกค้ากลับสู่ลูกค้า การ จำกัด มุมมองนำไปสู่การลดผลกระทบและในที่สุดก็เข้าใจผิดในบทบาทของวิศวกรที่มีความซับซ้อนมากขึ้น
Jiri Klouda

ฉันยังไม่เข้าใจความแตกต่างระหว่างDevOps EngineeringและSRE workหลังจากนั้นเป็นคำย่อที่พัฒนาโดย Google และสำรองข้อมูลโดยหนังสือสวย (ฟรี!)
BlackVegetable

วิศวกรความน่าเชื่อถือของไซต์เป็นชื่อจริงและรายละเอียดของงาน มันแสดงถึงสิ่งที่พูด ชื่อที่สามารถบ่งบอกถึง DevOps ในด้านซอฟต์แวร์คือ Platform Engineer ซึ่งคุณกำลังสร้างและสร้างแพลตฟอร์มอัตโนมัติสำหรับนักพัฒนาเพื่อปรับใช้ ในขณะเดียวกัน SRE คือบุคคลที่รับผิดชอบสิ่งที่เคยเป็นปฏิบัติการทั่วไป ข้อมูลเหล่านี้ค่อนข้างเล็ก แต่อาจช่วยให้คุณเข้าใจ @BlackVegetable ได้
Matt O.

1
มีวิดีโอ YouTube ที่ยอดเยี่ยมมากมายจาก Seth Vargo และ Liz Fong (Google พวกเขา) พวกเขาทำให้มันชัดเจน: "คลาส SRE ใช้ DevOps" SRE เป็นรูปแบบการฝึกฝนที่เป็นรูปธรรมซึ่งเป็นไปตามหลักการ DevOps มากมาย
Dave Swersky

1
ดูเพิ่มเติมที่: youtube.com/watch?v=uTEL8Ff1Zvk&t=2s
sethvargo

21

Dave Swersky ได้โพสต์คำตอบที่ยอดเยี่ยมไว้แล้วข้างต้นด้วยคำจำกัดความของ SRE ของ Ben Treynor ซึ่งมีความรุนแรงในวันนี้เหมือนในปี 2003

โดยพื้นฐานแล้วจะเกิดอะไรขึ้นเมื่อคุณขอให้วิศวกรซอฟต์แวร์ออกแบบฟังก์ชันการทำงาน

ดังนั้นในความพยายามที่จะกำหนด "DevOps" ต่อไปนี้เป็นข้อความที่ตัดตอนมาจากหนังสือDevOps ที่มีประสิทธิภาพโดย Jennifer Davis และ Katherine Daniels:

Devops เป็นวิธีคิดและวิธีการทำงาน มันเป็นกรอบสำหรับการแบ่งปันเรื่องราวและการพัฒนาความเอาใจใส่ ... [มัน] ไม่ได้เป็นเพียงวิธีการพัฒนาซอฟต์แวร์อื่น

[P] ractices อาจรวมถึงวิธีการพัฒนาซอฟต์แวร์หรือคุณสมบัติเช่นระบบอัตโนมัติโครงสร้างพื้นฐานและการส่งมอบอย่างต่อเนื่อง [แม้ว่า] มันเป็นมากกว่าเพียงแค่ผลรวมของชิ้นส่วนเหล่านี้

ในขณะที่แนวคิดเหล่านี้มีความเกี่ยวข้องและอาจเห็นได้บ่อยในสภาพแวดล้อมแบบ devops แต่เพียงผู้เดียวมุ่งเน้นไปที่พวกเขาพลาดภาพใหญ่ - วัฒนธรรมและความสัมพันธ์ระหว่างบุคคลที่ให้อำนาจของมัน

โดยสรุป: SRE ที่มีประสิทธิภาพจะใช้ประโยชน์จากแนวทางปฏิบัติของ DevOps

-

นอกจากนี้:

ฉันจะรู้ได้อย่างไรว่ากลุ่มใดรับผิดชอบเรื่องนี้?

ความเป็นเจ้าของไม่ควรเป็นนัย; สื่อสาร!


17

เว็บไซต์น่าเชื่อถือวิศวกรรมตกอยู่ภายใต้การดำเนินงานแบบดั้งเดิมมากขึ้นหรือน้อยลง แต่อย่างหนักอัตโนมัติและควบคุมรุ่นสิ่งที่เรียกว่าโครงสร้างพื้นฐานเป็นรหัส มันเป็นทั้งกำหนดบทบาทในแนวตั้ง ใน DevOps ที่ทันสมัยนี่คือชิ้นส่วนแนวตั้งที่เกี่ยวข้องกับการดำเนินงาน คุณสามารถมีทีมงานของ SRE

DevOpsเช่นนี้เป็นการเปลี่ยนแปลงทางวัฒนธรรมสำหรับองค์กร นอกจากนี้ยังมีแนวตั้งด้านบนลงโครงสร้างการบริหารจะสร้างการเชื่อมต่อแนวนอนระหว่างทีมพร้อมจัดส่งเส้นทางของการทำงานตลอดทั้งห่วงโซ่มูลค่า สำหรับวิศวกรมันเป็นบทบาทแนวนอนที่กำหนดไว้อย่างแน่นหนาเชื่อมโยงหลาย ๆ ทีมเข้าด้วยกันเพื่อให้แน่ใจว่างานจะผ่านไปอย่างราบรื่นและรวดเร็วทั่วทั้งองค์กร คุณไม่สามารถมีทีมวิศวกรของ DevOps ซึ่งเป็นแบบฝึกหัดเนื่องจากขอบเขตของทีมเป็นส่วนสำคัญของบทบาท


ลิงก์ใด ๆ ไปยังแหล่งข้อมูลที่เกี่ยวข้องจะดีมาก
kenorb

1

อีกวิธีในการอธิบายความแตกต่างระหว่างวิศวกรรมความน่าเชื่อถือของไซต์และDevOpsคือการดูคำอธิบายของวิกิพีเดียเกี่ยวกับ a Site Reliability Engineerซึ่งเริ่มต้นดังนี้:

วิศวกรความน่าเชื่อถือของไซต์ (SRE) เป็นคำบรรยายลักษณะงานที่มอบให้กับวิศวกรซอฟต์แวร์ที่เน้นความน่าเชื่อถือความสามารถในการปรับขนาดและการพัฒนาโครงสร้างพื้นฐานการคำนวณแบบคลาวด์ซึ่งรู้จักกันในชื่อ Site Reliability Engineering (SRE)

ดังนั้นคุณอาจพิจารณา SRE ในฐานะผู้ที่เกี่ยวข้องในBuilding walls...

อย่างไรก็ตามคำอธิบายของ Wikipediaเกี่ยวกับการDevOpsเริ่มต้นเช่น:

DevOps ... เป็นคำที่ใช้เพื่ออ้างถึงชุดของการปฏิบัติที่เน้นการทำงานร่วมกันและการสื่อสารของทั้งนักพัฒนาซอฟต์แวร์และผู้เชี่ยวชาญด้านเทคโนโลยีสารสนเทศ (IT) ในขณะที่กระบวนการอัตโนมัติของการส่งมอบซอฟต์แวร์และการเปลี่ยนแปลงโครงสร้างพื้นฐาน มันมีจุดมุ่งหมายที่จะสร้างวัฒนธรรมและสภาพแวดล้อมที่การสร้างการทดสอบและการปล่อยซอฟต์แวร์สามารถเกิดขึ้นได้อย่างรวดเร็วบ่อยครั้งและเชื่อถือได้มากขึ้น

สิ่งที่ไม่ได้กล่าวคือการปฏิบัติ DevOps เหล่านี้ทั้งหมดถูกกระตุ้นโดยความต้องการจากด้านธุรกิจ ดังนั้นรวมกับอาคารและการทดสอบ (คนพัฒนาส่วนหนึ่งของมัน) และวางจำหน่ายของซอฟต์แวร์ DevOps เป็นเรื่องเกี่ยวกับDDR (= ความต้องการพัฒนา-Release) วัฒนธรรมและสิ่งแวดล้อมซึ่งบางคนอาจจำจากนี้9 วินาทีของคำพูดประวัติศาสตร์เพื่อTear down this wall.

อ้างถึงคำถามเกี่ยวกับไฟดับที่วางแผนไว้สำหรับพุธ 3 พฤษภาคม 2017 เวลา 20.00 น. / ตะวันออก (เช่นสว่านไฟสำหรับคอมพิวเตอร์)สำหรับตัวอย่างเกี่ยวกับไซต์ SE ทั้งหมด ... โพสต์ (ลงนาม) โดยผู้ใช้ที่มีตำแหน่งงานSRE Manager , กองล้น, Inc


ฉันไม่ปฏิบัติตามอาร์กิวเมนต์ที่ SRE เกี่ยวข้องกับการสร้างกำแพง คุณได้รับมาจากไหน
Xiong Chiamiov

นอกจากนี้ทอม Limoncelli เป็นที่รู้จักกันมากขึ้นกว่าเพียงการทำงานที่กองแลกเปลี่ยน
Xiong Chiamiov
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.