Puppet vs Chef, pro และ contra จากผู้ใช้และใช้เคส [ปิด]


56

ฉัน googled แล้วและอ่าน"เพื่อหุ่นเชิดหรือไปเชฟที่เป็นที่คำถาม"บทความ

ฉันสนใจกรณีการใช้งานการใช้งานจริงที่ผู้คนเลือกอย่างใดอย่างหนึ่งบนพื้นฐานของปัญหาจริง

ฉันสนใจเป็นพิเศษในการรวมเข้ากับปัญหาของนักพายผลไม้ (ฉันรู้ว่าหุ่นกระบอกเป็นแนวทางมาตรฐานในทิศทางนี้มาก) ใครบ้างที่มีประสบการณ์ในการรวมระบบพายผลไม้ - เชฟ ?

ขอบคุณล่วงหน้า


เกี่ยวข้อง: serverfault.com/questions/42565/…
warren

1
@warren: โพสต์ที่คุณร่างไม่เกี่ยวข้อง ฉันขอเปรียบเทียบโดยตรงระหว่างเครื่องมือนี้ไม่ใช่แค่พูดถึงพ่อครัวเพราะมันทำในโพสต์
drAlberT

ในการตอบคำถามช่างซ่อมรองเท้า + พ่อครัวฉันมีสาขาหนึ่งในการกรอกใบพายผลไม้ของฉันเพื่อส่งคืน JSON เพื่อให้พ่อครัวใช้ แต่ฉันไม่มีระบบที่จะทดสอบ แจ้งให้เราทราบหากคุณสนใจทำการทดสอบ
jtimberman

แน่นอน แต่ตอนนี้ฉันไม่สามารถทำได้ ... ฉันจะทำการทดสอบต่อไปในบางเดือนตอนนี้มีบางอย่างที่สำคัญกว่านี้
drAlberT

เกี่ยวกับการปิดคำถามฉันถามถึง "ปัญหาที่แท้จริง" การรวมกันของนักพายผลไม้การใช้เคส ... ไม่ใช่แค่ "ความคิดเห็น" แต่เป็นตัวเลือกที่มีแรงบันดาลใจ ฉันต่อต้านการปิดอย่างที่คุณสามารถเถียงได้ :)
drAlberT

คำตอบ:


63

พูดตามตรงฉันคิดว่านี่เป็นมุมมองที่เรียบง่าย: เชฟดูเหมือนจะเป็นทางออกที่มีความจำเป็นและเป็นโปรแกรมมากขึ้นการใช้ทับทิมในขณะที่ภาษาทำให้ฉันหวังว่าจะมีใครบางคนเปลี่ยนเป็นงูเหลือมตามวิถีของโลก ความคิดของทับทิม

นั่นไม่ใช่สิ่งที่คุณต้องการสำหรับสิ่งนี้ คุณต้องการพูดคุยกับช่องว่างที่ระบบจะเป็นและประกาศ:

"เมื่อพอร์ต 80 อัญเชิญจากทางเหนือ daemon ชื่อ nginx งานของเขาคือการรับใช้"

"ผู้ใช้ควรมีอยู่ชื่อของเขาควรจะ chiggsy และเขาควรจะเป็นหนึ่งในผู้ยิ่งใหญ่ในกลุ่มล้อ"

"ยกกำแพงไฟขึ้นบาง ๆ ในที่ 80,443,8080"

และอื่น ๆ ถึงแม้ว่าในภาษาดอกไม้น้อยกว่า

หุ่นเชิดสนับสนุนกระบวนทัศน์นั้นดีกว่า IMO ฉันจะใช้อย่างใดอย่างหนึ่งฉันไม่ชอบ แต่เมื่อมันลงมาประกาศเหมาะสมกับฉันดีกว่า

หุ่นเชิด


2
คุณสามารถก้าวต่อไปอีกขั้นหนึ่งในอนาคตและใช้การกระจาย Linux ที่ใช้การกำหนดค่าที่ประกาศได้: nixos.org/nixos
iElectric

19

ผมเคยเขียนเปรียบเทียบรายละเอียดของเชฟ VS หุ่นที่นี่: หุ่น VS เชฟ: 10 เหตุผลที่ทำไมหุ่นชนะ แม้ว่าจะไม่รวมถึงกรณีการใช้งานฉันหวังว่ามันจะเป็นจุดเริ่มต้นที่มีประโยชน์สำหรับผู้ที่สงสัยว่าเครื่องมือตัวใดที่ควรเลือกสำหรับการทำงานอัตโนมัติของโครงสร้างพื้นฐาน


3
ทำงานได้ดีมาก แม้ว่าหลาย ๆ ประเด็นที่คุณเขียนจะถูกผูกไว้กับข้อเท็จจริงง่ายๆที่หุ่นเชิดนั้นเป็น "แก่" และอื่น ๆ อีกมากมายที่ "สนับสนุน" ตกลงมันเป็นความจริง ... แต่ฉันคิดว่าจะไม่มีใครเคยใช้ postfix เพราะ sendmail มีสาธารณะที่ดีอยู่แล้ว ... ฉันพูดซ้ำการทำงานที่ดีฉันจะคำนึงถึงมัน
drAlberT

AlberT - ใช่ Puppet นั้นมีความยาวกว่า Chef และมีข้อดีหลายประการเช่นการกำหนดรหัสฐานนักพัฒนาฐานการติดตั้ง mindshare สิ่งเหล่านี้เป็นที่ยอมรับอย่างชัดเจนในบทความ Puppet นั้นเหนือกว่า Chef for Linux หรือไม่? อาจจะไม่. ฉันยังคงแนะนำ Puppet กับ Chef เพราะเป็นเครื่องมือจัดการการกำหนดค่าชั้นนำของตลาด
John Arundel

2
บทความบล็อกล้าสมัยมากเนื่องจากหุ่นกระบอกปี 2011 สนับสนุนโมดูลทับทิมบริสุทธิ์และยังมี 'คำกริยา' มากกว่าเวอร์ชั่นที่ผู้เขียนประเมินไว้อีกมากมาย
robbyt

14

ขออภัยเกี่ยวกับคำฟุ่มเฟื่อย ใช้เครื่องมือที่ทำให้งานของคุณง่ายขึ้น นั่นคือจุดของระบบอัตโนมัติใช่ไหม

ประวัติความเป็นมา: ฉันเคยใช้หุ่นเชิดกับกิ๊กที่ผ่านมาและเมื่อเดือนที่แล้วฉันใช้เวลาประมาณหนึ่งสัปดาห์ในการพยายามทำให้ชินกับการดูว่าฉันจะทำสลับกับกิ๊กใหม่ของฉันหรือไม่

ฉันไม่ได้กระโดด

ศัพท์แสง: ปัญหาที่โชคร้ายอย่างหนึ่งของทั้งสองระบบนี้คือศัพท์แสงเกินพิกัด (สูตรเทมเพลตโหนดบทบาทบทบาทผู้ให้บริการ) มันดำเนินไปเรื่อย ๆ ฉันพบว่าเชฟก้าวไปอีกขั้น (มีด Shef ฯลฯ )

การครบกำหนดโค้ด: พอเพียงที่จะบอกว่าฉันพบว่าเชฟนั้นดิบเกินไปนิดหน่อย มันให้ความรู้สึกเหมือนเป็นหุ่นเชิดในกรอบเวลา. 21 / .22 เมื่อ 3-4 ปีก่อน มีการไหลเกิดขึ้นมากมาย

อย่าบอกว่าไม่ได้เกิดขึ้นในหุ่นเหมือนกัน (ฉันค้นพบคุณสมบัติที่ยอดเยี่ยมอีกมากมายในหุ่นกระบอกที่เพิ่งโผล่ขึ้นมาในไม่กี่ปีที่ผ่านมา - การจับคู่ regex!)

Ruby: ฉันไม่ชอบทับทิมมากเกินไปใน Chef (คุณต้องการอัญมณีและเรคก่อนที่คุณจะสามารถเริ่มต้นได้) คุณสามารถใช้ทับทิมเพื่อแก้ปัญหาที่ซับซ้อนในหุ่นเชิด a'la facter แต่คุณไม่จำเป็นต้องทำถ้าคุณไม่ต้องการ

ความซับซ้อน: ฉันไม่ชอบ GUI ที่เน้นไปที่พ่อครัว ฉันรู้ว่ามันสวยและหุ่นเชิดนั้นมีเว็บอินเตอร์เฟสในการทำงานเป็นส่วนเสริม แต่ฉันรู้สึกว่าควรแยกออกจากกัน

เชฟมีสถาปัตยกรรมที่ซับซ้อนมากขึ้น มันอาจขยายได้ดีขึ้น แต่มีจุดที่อาจเกิดความล้มเหลวได้มากมาย
http://wiki.opscode.com/display/chef/Architecture

เชฟต้องการ couchdb, rabbitmq และ solr นอกเหนือจากเซิร์ฟเวอร์ API และเว็บอินเตอร์เฟส

ฉันแค่ต้องการอินเทอร์เฟซไคลเอนต์ / เซิร์ฟเวอร์แบบง่ายที่ไม่จำเป็นต้องมีกรอบ MVC ด้านบนและมีแหล่งข้อมูลที่ซับซ้อนอยู่ด้านหลัง

หุ่นกระบอกนั้นง่ายกว่ามากในแผนกนั้น (อย่าบอกว่ามีแอดออนไม่มากที่จะทำให้มันเลอะเทอะ)

ทำงานให้เสร็จ: ในที่สุดฉันก็ไปกับสิ่งที่ฉันรู้ หลังจากใช้เวลาหนึ่งสัปดาห์ในการแฮ็คด้านข้างและแทบจะไม่สามารถทำสิ่งพื้นฐานกับเชฟได้ฉันก็สามารถกลับไปที่หุ่นกระบอกและถอนความต้องการพื้นฐานของฉันในเวลาไม่กี่ชั่วโมง (การจัดการแพ็คเกจการจัดการผู้ใช้เทมเพลตไฟล์กำหนดค่า)

คำเตือนเกี่ยวกับ Modules: Puppet ได้เปลี่ยนไปใช้ "modules" ล่าสุดซึ่งจัดทำโดยบุคคลที่สาม ฉันไม่ได้ใช้สิ่งเหล่านี้และพบว่ามีคุณภาพที่หลากหลาย อย่าลืมมองเข้าไปในที่กำบังและดูว่ามันทำงานอย่างไรก่อนที่คุณจะเข้าไปหาสิ่งเหล่านี้


5

นี่คือความเห็น: เราได้ลองพวกเขาทั้งหมดใน บริษัท ของเราและเราหุ่นกระบอกสำเร็จรูป เพียงเพราะมันใช้งานง่าย


คุณใช้ส่วนหน้าใด ๆ สำหรับการตรวจสอบการทำงานของ Puppet หรือไม่?
SyRenity

1
@syrenity เราใช้การตรวจสอบ nagios ที่กำหนดเองที่ตรวจสอบ mtime ของ $ puppetvardir / state / state.yaml ซึ่งจะได้รับการอัปเดตเมื่อการเรียกใช้สำเร็จเท่านั้น
rodjek

2
พ่อครัวยากมากแทนไหม ทำไม? อะไรคือความยากลำบากในทางปฏิบัติที่เกิดขึ้นใกล้กับพ่อครัวที่หุ่นเชิดบายพาส?
drAlberT


@ NotNow: ดีฉันได้รับการยอมรับอย่างแน่นอนว่ามันจะสนับสนุนการรวม
Cobbler

1

ฉันเองเคยเห็นกรณีที่จัดการ 1,000 โฮสต์ด้วยการกำหนดค่าที่แตกต่างกันเป็นเรื่องง่ายขึ้นมากกับหุ่น บริษัท Infact เช่น google ใช้หุ่นเชิดในการปรับใช้

สถาปัตยกรรมการออกแบบหลักของหุ่นเชิดนั้นจะทำงานได้ดีกว่าคนอื่น ๆ หากคุณกำหนดค่าในแบบที่ถูกต้อง ตัวอย่างเช่นการเพิ่มข้อมูลที่กำหนดเองของคุณสำหรับการกำหนดค่าที่กำหนดเองของคุณ ฯลฯ ลิงค์ด้านล่างอาจให้ข้อมูลบางอย่าง http://slashroot.in/puppet-tutorial-installing-puppet-master-and-puppet-agent

http://slashroot.in/puppet-tutorial-how-does-puppet-work


0

สิ่งนี้อาจมีการเปลี่ยนแปลงตั้งแต่ครั้งที่แล้วที่ฉันลอง แต่เมื่อฉันลองทำเชฟที่ RHEL ไม่มีวิธีที่ชัดเจนในการติดตั้ง มีคนสร้าง yum repo ที่มีแพ็คเกจทั้งหมดที่จำเป็น แต่มันก็จบลงด้วยการติดตั้ง 200 แพ็คเกจแปลก ๆ หุ่นในทางตรงกันข้ามมีรอบต่อนาทีเดียว (และสองสามพึ่งพา)

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