กลับไปหน้าบทความ

อ่าน 11 นาที

การเปรียบเทียบซอฟต์แวร์การจัดการการกำหนดค่าแบบโอเพนซอร์ส

นี่คือการเปรียบเทียบซอฟต์แวร์การจัดการการกำหนดค่าแบบโอ เพนซอร์ส และฟรีที่โดด เด่น ซึ่งเหมาะสำหรับงานต่างๆ เช่น...

การเปรียบเทียบซอฟต์แวร์การจัดการการกำหนดค่าแบบโอเพนซอร์ส

( เรียนรู้วิธีและเวลาในการลบข้อความนี้ )

นี่คือการเปรียบเทียบซอฟต์แวร์การจัดการการกำหนดค่าแบบโอ เพนซอร์ส และฟรีที่โดด เด่น ซึ่งเหมาะสำหรับงานต่างๆ เช่น การกำหนดค่าเซิร์ฟเวอร์การจัดการระบบและโครงสร้างพื้นฐานในรูปแบบโค้ดซึ่งโดยทั่วไปแล้วจะดำเนินการโดย ผู้ ดูแล ระบบ

คุณสมบัติพื้นฐาน

"โหมดตรวจสอบ" (หรือเรียกว่าการทดสอบก่อนใช้งานจริง ) หมายถึงความสามารถในการตรวจสอบว่าโหนดนั้นเป็นไปตามข้อกำหนดหรือไม่ โดยรับประกันว่าจะไม่ทำการแก้ไขใดๆ และโดยทั่วไปจะเกี่ยวข้องกับการใช้ภาษาภายในที่รองรับโหมดอ่านอย่างเดียวสำหรับการดำเนินการที่อาจเปลี่ยนแปลงระบบทั้งหมดการตรวจสอบสิทธิ์ร่วมกัน (mutual authentication) หมายถึงการที่ไคลเอนต์ตรวจสอบความถูกต้องของเซิร์ฟเวอร์ และในทางกลับกัน

เอเจนต์ จะอธิบายว่าจำเป็นต้องใช้ ซอฟต์แวร์ดีมอนเพิ่มเติมหรือไม่ขึ้นอยู่กับซอฟต์แวร์การจัดการ เอเจนต์เหล่านี้มักจะถูกติดตั้งบนระบบเป้าหมายหรือบนเซิร์ฟเวอร์ควบคุมAgent-less = No ส่วนกลางหนึ่งตัวหรือหลายตัว แม้ว่า สีแดงอาจดูเหมือนเป็นข้อเสีย แต่การมีเอเจนต์นั้นอาจถือเป็นข้อดีอย่างมากสำหรับหลายๆ คน ลองพิจารณาผลกระทบหากเครื่องมือที่ไม่มีเอเจนต์สูญเสียการเชื่อมต่อกับโหนดในขณะที่กำลังทำการเปลี่ยนแปลงที่สำคัญ ซึ่งจะทำให้โหนดอยู่ในสถานะที่ไม่แน่นอนและส่งผลกระทบต่อการทำงาน (ในระบบการผลิต?) ของมัน

ภาษา ใบอนุญาต การอนุมัติร่วมกันการเข้ารหัสโหมดตรวจสอบ ไม่ต้องใช้เอเจนต์ รวมถึง GUI วางจำหน่ายครั้งแรก เวอร์ชันเสถียรล่าสุด
แอนซิเบิลไพธอนจีพีแอลวี3+ใช่[]ใช่[]ใช่ ใช่ ใช่[ 1 ]8 มีนาคม 2555 2025-03-25 2.18.4 [ 2 ]
บีซีเอฟจี2ไพธอน เงื่อนไข BSD 2 ข้อ[ 3 ]ใช่[]ใช่[ d ]ใช่[ e ]เลขที่ ใช่[ 4 ]2004-08-11 [ 5 ]2015-06-11 1.3.6 [ 5 ]
คาปิสทราโนทับทิมเอ็มไอทีใช่[]ใช่[]เลขที่ 2548 2022-08-07 3.17.1
ซีดีไพธอน จีพีแอลวี3+ใช่[]ใช่[]ใช่ 2010 2021-08-24 6.9.8 [ 6 ]
เชฟรูบี้, เออร์ลังอะปาเช่ 2.0ใช่[ f ]ใช่[ g ]ใช่[ h ] [ 7 ]เลขที่ ใช่ 2009-01-15 0.5.0 2023-01-05 18.1.0 (ไคลเอ็นต์), [ 8 ] 15.4.0 (เซิร์ฟเวอร์) [ 9 ]
CFEngineC [ 10 ]GPLv3 [ 11 ]ใช่[]ใช่[ 12 ]ใช่[ 13 ] [ 14 ] [ 15 ] [ 16 ]เลขที่ ใช่[ 17 ]พ.ศ. 2536

2026-05-08 3.27.1 [ 18 ] , 2026-05-08 3.24.4 [ 19 ]

ตัวกำหนดค่า ภาษาลิสปาร์กทั่วไป ( SBCL ) GPLv3+ [ 20 ]ใช่[]ใช่[]เลขที่ 2024-07-26 1.4.2 [ 21 ]
กุยซ์แผนการ ( กลอุบาย ) [ 22 ] [ 23 ]GPLv3+ [ 24 ]ใช่[]ใช่[]เลขที่ หมายเลข[ 25 ]2022-12-19 1.4.0
ไอเอสคอนฟ์ไพธอน GPL [ 26 ]ใช่[ i ]ไม่[ 27 ]1998 2006-08-13 4.2.8.233
จูจูPython, Go [ 28 ]เอจีพีแอลใช่[]ใช่[ d ]เลขที่ เลขที่ ใช่[ 29 ]2010-09-17 [ 30 ]2025-06-09 3.6.7 [ 31 ]
ระบบการกำหนดค่าภายใน ( LCFG ) เพิร์ลจีพีแอล บางส่วน[ 32 ]บางส่วน[ 33 ]เลขที่ เลขที่ เลขที่ พ.ศ. 2537 การเผยแพร่รายสัปดาห์
โครงการ NOCไพธอนบีเอสดี 2.0ใช่[]ใช่[]ใช่ ใช่ ใช่ 8 มีนาคม 2555 2015-05-20 15.05.1 [ 34 ]
OCS Inventory NGพร้อม GLPI ภาษา Perl, PHP , C++จีพีแอล หมายเลข[ 35 ]ใช่[ d ]เลขที่ 2003 2014-07-13 [ 36 ]
การรวมเซิร์ฟเวอร์พีซีแบบเปิด ( Opsi ) ไพธอน, จาวา จีพีแอล เลขที่ ใช่[ d ]เลขที่ 2004 2013-03-01 4.0.3
พิกเคที ซี GPLv2+ [ 37 ]ใช่[ 38 ]ใช่[ 39 ]เลขที่ 1998 [ 40 ]10/09/2007 1.19.0
หุ่นกระบอกRuby, C++และClojure (ฝั่งเซิร์ฟเวอร์ก็ใช้ Ruby ก่อนเวอร์ชัน 4.0 เช่นกัน[ 41 ] ) Apache ตั้งแต่เวอร์ชัน 2.7.0 เป็นต้นมา และ GPL ก่อนหน้านั้น ใช่[ j ]ใช่[ d ]ใช่[ k ] [ 42 ]เลขที่ ใช่[ 43 ]2005-08-30 [ 44 ]2024-04 8.6.0, 7.30.0 (ไคลเอ็นต์), [ 45 ] 2024-04 8.6.0, 7.17.0 (เซิร์ฟเวอร์) [ 46 ]
ไพอินฟรา ไพธอนใบอนุญาต MITใช่ ใช่ ใช่ ใช่ 2016-08-10 0.1 [ 47 ]2025-01-30 3.2 [ 48 ]
ควอทเตอร์เพิร์ล, ไพธอน Apache 2.0 [ 49 ] [ 50 ]ใช่[ 51 ]ใช่[ 52 ]บางส่วน[ 53 ]เลขที่ 2005-04-01 [ 54 ]2026-04-07 26.2.0 [ 55 ]
แรดมายด์ซี บีเอสดี[ 56 ]ใช่[ 57 ]ใช่[ 58 ]เลขที่ 2002-03-26 [ 59 ]2008-10-08 1.13.0 [ 60 ]
เร็กซ์เพิร์ลอะปาเช่ใช่[]ใช่[]ใช่ 2010-11-05 0.9.0 [ 61 ]2025-07-05 1.16.1 [ 62 ]
หางเสือC , Scala , RustGPLv3, Apache 2.0 [ 63 ]ใช่[]ใช่[ d ]ใช่[ l ] [ 64 ]เลขที่ ใช่ 31 ตุลาคม 2554 2025-11-19 9.0.1 [ 65 ]
สมาร์ทฟร็อกชวา Apache 2.0 [ 66 ]ใช่[ 67 ]ใช่[ 67 ]เลขที่ 11 กุมภาพันธ์ 2547 2012-03-13 3.18.016 [ 68 ]
เกลือ[ 69 ]ไพธอน[ 70 ]Apache 2.0 [ 71 ]ใช่[ 72 ]ใช่[ 72 ]ใช่ ทั้งสอง[ 73 ] [ 74 ]ใช่[ 75 ] [ 76 ]2011-03-17 0.6.0 [ 77 ]2023-05-05 v3006.1 [ 78 ]
การเดินอวกาศJava (C, Perl, Python, PL/SQL ) จีพีแอลวี2 ใช่ ใช่ เลขที่ 2551-06 [ 79 ]2019-01-14 2.9 [ 80 ]
สตาฟซี++CPL [ 81 ]ไม่[] []บางส่วน[ 82 ]เลขที่ 1998-02-16 [ 83 ]2012-12-16 3.4.16 [ 84 ]
Synctool [ 85 ]ไพธอน[ 86 ]GPLv2 [ 87 ]ใช่[ o ]ใช่[]ใช่[ p ]ใช่[ 88 ]2546 [ 89 ]2019-08-11 6.3 [ 90 ]
อูยูนี Java, Python, PL/SQL (Perl) ลิขสิทธิ์ GPLv2, Apache 2.0 ใช่ ใช่ ใช่ ทั้งคู่ ใช่ 2018-06 [ 91 ]2024-01-31-01 2024.01 [ 92 ]
ภาษา ใบอนุญาต การอนุญาตร่วมกันเข้ารหัสโหมดตรวจสอบ ไม่ต้องใช้เอเจนต์ มีส่วนติดต่อผู้ใช้แบบกราฟิก (GUI) วางจำหน่ายครั้งแรก เวอร์ชันเสถียรล่าสุด

การสนับสนุนแพลตฟอร์ม

หมายเหตุ: นี่หมายถึงแพลตฟอร์มที่เวอร์ชันล่าสุดของเครื่องมือนี้ถูกใช้งานสำเร็จแล้ว ไม่ใช่แพลตฟอร์มที่ควรจะใช้งานได้ตามทฤษฎีเนื่องจากเขียนด้วยภาษา C/C++ หรือภาษาที่ใช้การตีความที่พกพาได้ดี และควรระบุไว้ในรายการแพลตฟอร์มที่รองรับบนเว็บไซต์ของโครงการด้วย

เอไอเอ็กซ์*บีเอสดีเอชพี-UXลินุกซ์ระบบปฏิบัติการ Xโซลาริสวินโดวส์คนอื่น
แอนซิเบิลใช่ ใช่ ใช่ ใช่ ใช่ ใช่ บางส่วน[ q ]ใช่[ 93 ]
บีซีเอฟจี2บางส่วน[ r ]ใช่[ s ]เลขที่ ใช่[ t ]บางส่วน[ u ]ใช่ เลขที่ เลขที่
CFEngineใช่ ใช่[ s ]ใช่ ใช่ ใช่ ใช่ ใช่ (เฉพาะเวอร์ชันสำหรับองค์กร) ใช่[ v ]
ซีดีใช่ ใช่ ใช่ เลขที่
เชฟใช่[ 94 ]ใช่ ใช่ ใช่ ใช่ ใช่ ใช่[ 95 ]ใช่
ตัวกำหนดค่า บางส่วน[ 96 ]ใช่[ 96 ]หมายเลข[ 96 ]
กุยซ์เลขที่ เลขที่ เลขที่ บางส่วน[ w ]เลขที่ เลขที่ เลขที่ บางส่วน[ x ]
ไอเอสคอนฟ์ใช่ ใช่ ใช่ ใช่ ใช่ ใช่ เลขที่ เลขที่
จูจูใช่ ใช่[ 97 ]
ระบบการกำหนดค่าภายใน ( LCFG ) เลขที่ เลขที่ เลขที่ บางส่วน[ y ]บางส่วน[ z ]บางส่วน[ aa ]เลขที่ เลขที่
สินค้าคงคลัง OCS NGใช่ ใช่ ใช่ ใช่ ใช่ ใช่ ใช่ เลขที่
การรวมเซิร์ฟเวอร์พีซีแบบเปิด ( Opsi ) เลขที่ เลขที่ เลขที่ ใช่ เลขที่ เลขที่ ใช่ เลขที่
พิกเคที ใช่ ใช่ ใช่ ใช่ ใช่ ใช่ เลขที่ ใช่[ ab ]
หุ่นกระบอกใช่ ใช่ ใช่ ใช่ ใช่ ใช่ ใช่[ 98 ]ใช่
ไพอินฟรา ใช่ ใช่ ใช่ บางส่วน[ 99 ]
ควอทเตอร์เลขที่ เลขที่ เลขที่ ใช่ บางส่วน[ 100 ]ใช่ เลขที่ เลขที่
แรดมายด์ใช่ ใช่[ s ] [ ac ] [ ad ]เลขที่ ใช่ ใช่ ใช่ ใช่ เลขที่
เร็กซ์ใช่ ใช่ ใช่[ 101 ]ใช่ ใช่[ 101 ]เลขที่
หางเสือใช่ บางส่วน[ ae ]เลขที่ ใช่ บางส่วน[ ae ]บางส่วน[ 102 ]ใช่ ใช่[ af ]
สมาร์ทฟร็อกไม่[ ag ]ไม่[ ag ]ใช่ ใช่ ใช่ ใช่ ใช่ ไม่[ ag ]
เกลือใช่ ใช่ บางส่วน[ ah ]ใช่[ 103 ]ใช่ ใช่[ 104 ]ใช่ บางส่วน[ ah ]
การเดินอวกาศหมายเลข[ 105 ]เลขที่ เลขที่ ใช่[ 106 ]เลขที่ หมายเลข[ 107 ]เลขที่ เลขที่
สตาฟใช่[ ai ]ใช่[ aj ]ใช่[ ak ]ใช่[ al ]ใช่[ 108 ]ใช่[ฉัน]ใช่[หนึ่ง]ใช่[ ao ]
ซิงค์ทูล ใช่ ใช่ ใช่ ใช่ ใช่ ใช่ เลขที่ ใช่[ ap ]
อูยูนี เลขที่ เลขที่ เลขที่ บางส่วน[ aq ]เลขที่ เลขที่ เลขที่ เลขที่
เอไอเอ็กซ์*บีเอสดีเอชพี-UXลินุกซ์ระบบปฏิบัติการ Xโซลาริสวินโดวส์คนอื่น

คำอธิบายสั้นๆ

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

แอนซิเบิล
รวมการปรับใช้แบบหลายโหนด การดำเนินการงานแบบเฉพาะกิจ และการจัดการการกำหนดค่าไว้ในแพ็คเกจเดียว จัดการโหนดผ่าน SSH และต้องติดตั้ง Python (2.6+ หรือ 3.5+) ไว้[ 109 ]โมดูลทำงานผ่าน JSON และเอาต์พุตมาตรฐาน และสามารถเขียนได้ในภาษาใดก็ได้ ใช้ YAML เพื่อแสดงคำอธิบายระบบที่นำกลับมาใช้ใหม่ได้
บีซีเอฟจี2
ซอฟต์แวร์สำหรับจัดการการกำหนดค่าของคอมพิวเตอร์จำนวนมากโดยใช้โมเดลการกำหนดค่าส่วนกลางและรูปแบบไคลเอ็นต์-เซิร์ฟเวอร์ระบบนี้ช่วยให้สามารถตรวจสอบความสอดคล้องระหว่างสถานะของไคลเอ็นต์และข้อกำหนดการกำหนดค่าส่วนกลาง รายงานโดยละเอียดช่วยให้สามารถระบุการกำหนดค่าที่ไม่ได้รับการจัดการบนโฮสต์ได้ ตัวสร้างไฟล์ช่วยให้สามารถสร้างไฟล์การกำหนดค่าโดยใช้โค้ดหรือเทมเพลตจากที่เก็บข้อมูลส่วนกลางได้
CFEngine
ระบบเอเจนต์น้ำหนักเบา จัดการการกำหนดค่าของคอมพิวเตอร์จำนวนมากโดยใช้กระบวนทัศน์ไคลเอ็นต์-เซิร์ฟเวอร์หรือแบบสแตนด์อะโลน สถานะไคลเอ็นต์ใดๆ ที่แตกต่างจากคำอธิบายนโยบายจะถูกเปลี่ยนกลับเป็นสถานะที่ต้องการ สถานะการกำหนดค่าจะถูกระบุผ่านภาษาประกาศ[ 110 ]กระบวนทัศน์ของ CFEngine คือ "ภูมิคุ้มกันวิทยาคอมพิวเตอร์" แบบบรรจบกัน[ 111 ]
ซีดี
cdist เป็นระบบจัดการการกำหนดค่าที่ไม่พึ่งพาสิ่งใด: มันต้องการเพียงแค่ ssh บนโฮสต์เป้าหมาย ซึ่งโดยปกติแล้วจะเปิดใช้งานอยู่บนเครื่องที่ใช้ระบบปฏิบัติการ Unix ทุกเครื่อง ส่วนโฮสต์สำหรับการบริหารจัดการนั้น จำเป็นต้องติดตั้ง Python 3.2 ไว้เท่านั้น
เชฟ
Chef เป็นเครื่องมือจัดการการกำหนดค่าที่เขียนด้วย Erlang [ 112 ]และใช้DSL ของ Ruby บริสุทธิ์ ในการเขียน "สูตร" การกำหนดค่า สูตรเหล่านี้ประกอบด้วยทรัพยากรที่ควรใส่ลงในสถานะที่ประกาศไว้ Chef สามารถใช้เป็นเครื่องมือไคลเอ็นต์-เซิร์ฟเวอร์ หรือใช้ในโหมด "เดี่ยว" [ 113 ]
ตัวกำหนดค่า
แม้ว่า Debian และระบบปฏิบัติการที่พัฒนาต่อยอดจาก Debian จะได้รับการสนับสนุนดีที่สุด แต่ Consfigurator ก็สามารถใช้งานได้กับระบบปฏิบัติการอื่นๆ และ Unix หลายระบบเช่นกัน แต่จะมีการสนับสนุนคุณสมบัติสำหรับการกำหนดค่าเฉพาะด้านของระบบน้อยกว่า Consfigurator สามารถตั้งค่าคุณสมบัติที่จะนำไปใช้ในรูปแบบโค้ดได้ ซึ่งจำเป็นต้องติดตั้ง Consfigurator บนคอมพิวเตอร์เป้าหมาย นอกจากนี้ยังมีภาษาที่จำกัดกว่าซึ่งใช้งานได้โดยไม่ต้องติดตั้ง Consfigurator บนคอมพิวเตอร์เป้าหมาย การกำหนดค่าระยะไกลก็ได้รับการสนับสนุนเช่นกัน โดยสามารถกำหนดโฮสต์ด้วยโค้ดได้
กุยซ์
Guix ผสานรวมหลายสิ่งเข้าไว้ในเครื่องมือเดียวกัน (การแจกจ่าย ตัวจัดการแพ็กเกจ เครื่องมือจัดการการกำหนดค่า สภาพแวดล้อมคอนเทนเนอร์ ฯลฯ) ในการจัดการระบบจากระยะไกล จำเป็นต้องมีเครื่องเป้าหมายที่ใช้งาน Guix อยู่แล้ว[ 114 ]หรืออาจปรับใช้การกำหนดค่าภายใน Digital Ocean Droplet ก็ได้[ 115 ]เครื่องเหล่านี้ได้รับการกำหนดค่าด้วย Scheme
ไอเอสคอนฟ์
เครื่องมือสำหรับเรียกใช้คำสั่งและคัดลอกไฟล์ไปยังโหนดทั้งหมด โหนดไม่จำเป็นต้องเปิดใช้งานอยู่ คำสั่งจะถูกเรียกใช้เมื่อโหนดเริ่มทำงาน ระบบนี้ไม่มีเซิร์ฟเวอร์กลาง ดังนั้นจึงสามารถเรียกใช้คำสั่งจากโหนดใดก็ได้ และคำสั่งนั้นจะถูกคัดลอกไปยังทุกโหนด
จูจู
Juju มุ่งเน้นไปที่แนวคิดเรื่องบริการ โดยแยกแนวคิดเรื่องเครื่องจักรหรือเซิร์ฟเวอร์ออกไป และกำหนดความสัมพันธ์ระหว่างบริการเหล่านั้น ซึ่งจะได้รับการอัปเดตโดยอัตโนมัติเมื่อบริการที่เชื่อมโยงกันสองบริการตรวจพบการเปลี่ยนแปลงที่สำคัญ
ระบบการกำหนดค่าภายในเครื่อง ( LCFG )
LCFG จัดการการกำหนดค่าด้วยภาษาอธิบายส่วนกลางในรูปแบบ XML โดยระบุทรัพยากร ลักษณะ และโปรไฟล์ การกำหนดค่าจะถูกนำไปใช้โดยใช้รูปแบบไคลเอนต์-เซิร์ฟเวอร์ สคริปต์ที่เหมาะสมบนไคลเอนต์ (เรียกว่าคอมโพเนนต์ ) จะแปลงทรัพยากรเป็นไฟล์การกำหนดค่าและรีสตาร์ทบริการตามความจำเป็น
การรวมเซิร์ฟเวอร์พีซีแบบเปิด ( Opsi )
Opsi เป็น ซอฟต์แวร์ การจัดการเดสก์ท็อปสำหรับ ไคลเอนต์ Windowsที่ใช้ เซิร์ฟเวอร์ Linux โดยมี ฟังก์ชันการติดตั้งซอฟต์แวร์อัตโนมัติ(การแจกจ่าย) การติดตั้ง ระบบปฏิบัติการโดยอัตโนมัติ การจัดการ แพตช์ สินค้าคงคลังฮาร์ดแวร์และซอฟต์แวร์ การจัดการใบอนุญาตและการจัดการสินทรัพย์ซอฟต์แวร์และงานด้านการดูแลระบบสำหรับการจัดการการกำหนดค่า[ 116 ]
พิกเคที
PIKT เป็นระบบตรวจสอบหลักที่ทำหน้าที่จัดการการกำหนดค่าด้วย "PIKT ประกอบด้วย ตัวประมวลผลไฟล์ ล่วงหน้าที่ ซับซ้อน และมีคุณสมบัติครบครัน ภาษาเขียนสคริปต์ที่เป็นนวัตกรรมใหม่พร้อมคุณสมบัติประหยัดแรงงานที่เป็นเอกลักษณ์ ตัวกำหนดตารางเวลาการประมวลผลที่ยืดหยุ่นและควบคุมจากส่วนกลาง ตัวติดตั้งไฟล์ที่ปรับแต่งได้ ชุดส่วนขยายบรรทัดคำสั่งที่มีประสิทธิภาพ และเครื่องมือที่มีประโยชน์อื่นๆ"
หุ่นกระบอก
Puppet ประกอบด้วยภาษาประกาศแบบกำหนดเองเพื่ออธิบายการกำหนดค่าระบบ ซึ่งกระจายโดยใช้กระบวนทัศน์ไคลเอ็นต์-เซิร์ฟเวอร์ (โดยใช้ โปรโตคอล XML-RPCในเวอร์ชันเก่า และเปลี่ยนมาใช้REST ในเวอร์ชันล่าสุด ) และไลบรารีเพื่อทำให้การกำหนดค่าเป็นจริง เลเยอร์นามธรรมของทรัพยากรช่วยให้ผู้ดูแลระบบสามารถอธิบายการกำหนดค่าในระดับสูง เช่น ผู้ใช้ บริการ และแพ็กเกจ จากนั้น Puppet จะตรวจสอบให้แน่ใจว่าสถานะของเซิร์ฟเวอร์ตรงกับคำอธิบายนั้น มีการสนับสนุนสั้นๆ ใน Puppet สำหรับการใช้ DSL บริสุทธิ์ของ Ruby เป็นภาษาการกำหนดค่าทางเลือกตั้งแต่เวอร์ชัน 2.6.0 อย่างไรก็ตาม คุณสมบัตินี้ถูกยกเลิกตั้งแต่เวอร์ชัน 3.1 [ 110 ] [ 113 ] [ 117 ] [ 118 ]
ไพอินฟรา
Pyinfra เป็นเครื่องมือจัดการการกำหนดค่าเซิร์ฟเวอร์แบบไร้เอเจนต์ที่สร้างขึ้นด้วยภาษา Python ความเร็วในการทำงานเร็วกว่า Ansible ถึง 10 เท่า[ 119 ] Pyinfra ยังเหมาะอย่างยิ่งสำหรับการบูรณาการระบบ เนื่องจากสามารถควบคุมการเชื่อมต่อ SSH, Docker, Terraform, Ansible ฯลฯ โดยใช้กลไกที่เรียกว่าตัวเชื่อมต่อ Pyinfra สามารถเรียกใช้แบบเฉพาะกิจหรือผ่าน API ได้[ 120 ]
ควอทเตอร์
แบบจำลองข้อมูลควอทเตอร์นั้นตั้งอยู่บนความแตกต่างระหว่างสถานะที่ต้องการและสถานะที่เกิดขึ้นจริง สถานะที่ต้องการจะถูกบันทึกไว้ในฐานข้อมูลการกำหนดค่าทั่วทั้งระบบ โดยใช้ภาษาการกำหนดค่าที่ออกแบบมาเป็นพิเศษเรียกว่าPanสำหรับการแสดงและการตรวจสอบความถูกต้องของการกำหนดค่า ซึ่งประกอบด้วยส่วนประกอบโครงสร้างแบบลำดับชั้นที่นำกลับมาใช้ใหม่ได้เรียกว่าเทมเพลต การกำหนดค่าจะถูกส่งต่อไปยังและจัดเก็บไว้ในแคชบนโหนดที่ได้รับการจัดการ
แรดมายด์
Radmind จัดการการกำหนดค่าโฮสต์ในระดับระบบไฟล์ ในลักษณะเดียวกับTripwire (และเครื่องมือจัดการการกำหนดค่าอื่นๆ) มันสามารถตรวจจับการเปลี่ยนแปลงภายนอกต่อการกำหนดค่าที่ได้รับการจัดการ และสามารถย้อนกลับการเปลี่ยนแปลงได้ (หากต้องการ) Radmind ไม่มีนามธรรมขององค์ประกอบการกำหนดค่าระดับสูง (บริการ แพ็กเกจ) อินเทอร์เฟซแบบกราฟิกมีให้ใช้งาน (เฉพาะ) สำหรับ OS X เท่านั้น
เร็กซ์
Rex คือระบบการประมวลผลระยะไกลที่มีการจัดการการกำหนดค่าและฟังก์ชันการปรับใช้ซอฟต์แวร์ในตัว ผู้ดูแลระบบจะให้คำแนะนำในการกำหนดค่าผ่านไฟล์ที่เรียกว่าRexfilesซึ่งเขียนด้วย ภาษาเฉพาะ โดเมน (DSL) ขนาดเล็ก แต่ก็สามารถมีภาษา Perl ได้เช่นกัน Rex สามารถทำงานร่วมกับระบบสร้างอัตโนมัติที่ใช้ใน สภาพแวดล้อมCIได้เป็นอย่างดี
เกลือ
Salt เริ่มต้นจากการเป็นเครื่องมือสำหรับการจัดการเซิร์ฟเวอร์ระยะไกล เมื่อการใช้งานเพิ่มมากขึ้น ก็ได้เพิ่มฟีเจอร์ต่างๆ มากมาย รวมถึงกลไกที่ครอบคลุมมากขึ้นสำหรับการกำหนดค่าโฮสต์ นี่เป็นฟีเจอร์ใหม่ที่ใช้งานได้ผ่านส่วนประกอบ Salt States ด้วยความนิยมที่ Salt ได้รับในช่วงที่ผ่านมา การสนับสนุนฟีเจอร์และแพลตฟอร์มต่างๆ อาจจะเติบโตต่อไปอีกในอนาคต
สมาร์ทฟร็อก
เครื่องมือที่ใช้ Java ในการติดตั้งและกำหนดค่าแอปพลิเคชันที่กระจายอยู่บนเครื่องหลายเครื่อง โดยไม่มีเซิร์ฟเวอร์กลาง คุณสามารถติดตั้งไฟล์การกำหนดค่า .SF ไปยังโหนดใดก็ได้ และไฟล์นั้นจะกระจายไปยังโหนดอื่นๆ ตามข้อมูลการกระจายที่ระบุไว้ในตัวอธิบายการติดตั้ง (deployment descriptor)
การเดินอวกาศ
Spacewalk เป็นบริการจัดการระบบแบบโอเพนซอร์สสำหรับ Linux และ Solaris และเป็นโครงการต้นน้ำของซอร์สโค้ดของ Red Hat Network Satellite Spacewalk ใช้งานได้กับ RHEL, Fedora และระบบปฏิบัติการอื่นๆ ที่พัฒนามาจาก RHEL เช่น CentOS, Scientific Linux เป็นต้น ขณะนี้กำลังมีความพยายามอย่างต่อเนื่องที่จะรวม Spacewalk เข้าไปใน Fedora Spacewalk ให้บริการด้านการจัดการระบบ (ข้อมูลฮาร์ดแวร์และซอฟต์แวร์ การติดตั้งและอัปเดตซอฟต์แวร์ การรวบรวมและแจกจ่ายแพ็คเกจซอฟต์แวร์ที่กำหนดเองไปยังกลุ่มที่จัดการได้ การจัดเตรียมระบบ การจัดการและการปรับใช้ไฟล์การกำหนดค่า การตรวจสอบระบบ การจัดเตรียมเครื่องเสมือน การเริ่มต้น/หยุด/กำหนดค่าเครื่องเสมือน และการมอบหมายการกระทำทั้งหมดเหล่านี้ให้กับผู้ใช้ในเครื่องหรือผู้ใช้ LDAP และสิทธิ์ของระบบ) ณ เดือนพฤษภาคม 2020 Spacewalk ได้สิ้นสุดการสนับสนุนแล้ว โดยผู้ใช้ได้ย้ายไปใช้ Uyuni หรือ Foreman/Katello แทน
สตาฟ
กรอบงานการทดสอบซอฟต์แวร์อัตโนมัติ (STAF) ช่วยให้ผู้ใช้สามารถสร้างสภาพแวดล้อมการทดสอบซอฟต์แวร์แบบกระจายและข้ามแพลตฟอร์มได้ STAF ช่วยลดความยุ่งยากในการสร้างโครงสร้างพื้นฐานสำหรับการทดสอบอัตโนมัติ ทำให้ผู้ใช้สามารถมุ่งเน้นไปที่การสร้างบริการทดสอบอัตโนมัติของตนได้ กรอบงาน STAF เป็นรากฐานในการสร้างผลิตภัณฑ์ระดับสูง และมีแนวทางแบบเสียบปลั๊กได้ซึ่งรองรับแพลตฟอร์มและภาษาที่หลากหลาย
ซิงค์ทูล
Synctool มีเป้าหมายที่จะให้เข้าใจง่าย เรียนรู้ง่าย และใช้งานง่าย เขียนด้วยภาษา Python และใช้ SSH (ไม่ต้องใช้รหัสผ่าน โดยใช้การตรวจสอบสิทธิ์แบบอิงตามโฮสต์หรือแบบอิงตามคีย์) และ rsync ไม่จำเป็นต้องใช้ภาษาเฉพาะในการตั้งค่า Synctool Synctool มีความสามารถในการทดสอบแบบจำลอง (dry run) ที่ช่วยให้การทำงานมีความแม่นยำสูง

ดูเพิ่มเติม

หมายเหตุ

  1. ^ a b c d e f g h iคู่คีย์: ใช้คู่คีย์สาธารณะ/ส่วนตัวและลายนิ้วมือคีย์สำหรับการตรวจสอบสิทธิ์ร่วมกัน เช่น SSH
  2. ^ a b c d e f g h i Secure Shell: ใช้โปรโตคอล Secure Shell สำหรับการเข้ารหัส
  3. ^ใบรับรองและรหัสผ่าน: ใช้ใบรับรอง SSL X.509 และลายนิ้วมือสำหรับไคลเอนต์ในการตรวจสอบสิทธิ์เซิร์ฟเวอร์ และใช้รหัสผ่านสำหรับเซิร์ฟเวอร์ในการตรวจสอบสิทธิ์ไคลเอนต์ ไคลเอนต์ควรใช้รหัสผ่านเดียวกันเฉพาะในกรณีที่ได้รับอนุญาตให้เข้าถึงข้อมูลการกำหนดค่าของกันและกันเท่านั้น
  4. ^ a b c d e f SSL: ใช้ Secure Sockets Layer และ Transport Layer Security (TLS) สำหรับการเข้ารหัส
  5. ^รองรับอย่างเต็มที่สำหรับการตรวจสอบความสอดคล้องของโหนดโดยไม่เปลี่ยนแปลง รวมถึงโหนดที่ไม่ได้ถูกแก้ไขก่อนหน้านี้โดยขั้นตอนการกำหนดค่า Bcfg2
  6. ^ต่อคำขอจะมีส่วนหัวที่ลงนามและคีย์ที่ใช้ร่วมกันล่วงหน้า
  7. ^การเข้ารหัสข้อมูลผ่าน SSL หากมีการตั้งค่าพร็อกซี HTTPS
  8. ^ Chef 10.14.0 ขึ้นไป (เรียกว่าโหมด why-run)
  9. ^ HMAC: ใช้ ลายเซ็น HMACกับการรับส่งข้อมูลเครือข่ายทั้งหมด
  10. ^ใบรับรอง: ใช้ใบรับรอง SSL X.509 สำหรับการตรวจสอบความถูกต้องร่วมกัน สามารถใช้หน่วยงานออกใบรับรอง SSL ใดก็ได้ในการจัดการโครงสร้างพื้นฐานกุญแจสาธารณะ
  11. ^การใช้ตัวเลือก --noop
  12. ^โดยใช้โหมดตรวจสอบ (Audit mode)
  13. ^การเชื่อถือเครือข่าย: เชื่อถือเครือข่าย เช่นเดียวกับ rsh
  14. ^การตรวจสอบสิทธิ์แบบผู้ใช้เท่านั้น: ผู้ใช้ตรวจสอบสิทธิ์กับเซิร์ฟเวอร์ผ่านรหัสผ่าน แต่ใช้ Network Trust เพื่อตรวจสอบสิทธิ์ผู้ใช้กับเซิร์ฟเวอร์ เช่นเดียวกับ telnet
  15. ^ Secure Shell: ใช้โปรโตคอล Secure Shell สำหรับการตรวจสอบสิทธิ์
  16. ^โดยปกติ Synctool จะทำการทดสอบแบบจำลอง (dry-run) ก่อน และจะทำการแก้ไขเฉพาะเมื่อเรียกใช้ด้วยตัวเลือก '--fix' เท่านั้น
  17. ^ใช่สำหรับเครื่องที่ได้รับการจัดการ; ไม่ใช่สำหรับเครื่องจัดการ
  18. ^รองรับเฉพาะไฟล์ Encap, RPM และ POSIX เท่านั้น
  19. ^ a b c FreeBSD.
  20. ^ Debian, Ubuntu; Gentoo; ระบบปฏิบัติการแบบ RPM (CentOS, Mandrake, Red Hat, RHEL, SLES, SuSE)
  21. ^ รองรับเฉพาะ ไฟล์ POSIX, Launchdและ MacPorts เท่านั้น
  22. ^ยูนิกซ์
  23. ^ "รองรับเฉพาะระบบ Guix เท่านั้น"
  24. ^ "นอกจากนี้ยังใช้งานได้บนระบบ Guix ร่วมกับ HURD"
  25. ^ "เวอร์ชันล่าสุดทำงานบน Fedora Core (3, 5, 6) มีผู้คนจำนวนมากได้พอร์ตส่วนหลักของ LCFG ไปยังระบบปฏิบัติการ Linux อื่นๆ เช่น Debian แต่การพอร์ตเหล่านั้นยังไม่ได้ถูกรวมเข้าไว้ด้วย"
  26. "มีการพัฒนาเวอร์ชันทดลองสำหรับ OS X ซึ่งใช้งานได้และมีส่วนประกอบเฉพาะของ Mac อยู่บ้าง อย่างไรก็ตาม นี่ไม่ใช่เวอร์ชันที่ใช้งานได้จริง และการขาดระบบการจัดการแพ็กเกจที่เป็นมาตรฐานภายใต้ OS X หมายความว่าการจัดการซอฟต์แวร์ที่ติดตั้งโดยอัตโนมัติอาจทำได้ยาก"
  27. "แกนหลักของ LCFG ได้ถูกพอร์ตกลับมายัง Solaris แล้ว และเรากำลังใช้งานในระบบการผลิตอยู่ แม้ว่าซอฟต์แวร์จะยังไม่ได้ถูกบรรจุเพื่อแจกจ่าย และยังไม่ได้รับการสนับสนุนอย่างดีนัก"
  28. ^ดิจิทัล ยูนิก; IRIX
  29. ^เน็ตบีเอสดี
  30. ^ OpenBSD
  31. ^ a bผู้ใช้หลายรายได้สร้างและเรียกใช้เอเจนต์บน FreeBSD ได้สำเร็จแล้ว แต่ปัจจุบันยังไม่มีแพ็กเกจอย่างเป็นทางการให้บริการ
  32. ^แอนดรอยด์
  33. ^ a b cเขียนด้วยภาษา Java ดังนั้นในทางทฤษฎีแล้วควรใช้งานได้บนแพลตฟอร์มนี้หากมีเวอร์ชัน JVM ที่เหมาะสม แต่ยังไม่ได้ทดสอบบนแพลตฟอร์มนี้ ซึ่งควรพิจารณาว่าไม่ได้รับการสนับสนุน
  34. ^ a bจะทำงานได้ทุกที่ที่ Python ทำงานได้ แต่ตัวจัดการสำหรับแพลตฟอร์มต่างๆ ยังไม่ได้รับการทดสอบ
  35. ^ 4.3.3+ (กำลัง 32); 5.1+ (กำลัง 32/64)
  36. ^ FreeBSD 4.10 (x86-32); FreeBSD 6.1+ (x86-32)
  37. ^ 11.00+ (PA-RISC 32, IA-64)
  38. ^ (x86-32, x86-64, IA-64, PPC 64, zSeries 32/64)
  39. ^ 2.6+ (Sparc 32); 10+ (x86-32, x86-64)
  40. 95, 98, ฉัน, NT4, 2000, XP, 2003, Vista (x86-32), 7 (x86-32), 7 (x86-64); 2003, วิสตา (x86-64); 2547 (IA-64)
  41. ^ OS/400 5.2+ (iSeries 32); z/OS Unix 1.4+
  42. ^ Synctool สามารถทำงานได้บนทุกแพลตฟอร์มที่รองรับ SSH, rsync และ Python
  43. ^ SuSE"
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Comparison_of_open-source_configuration_management_software&oldid=1353199064 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ การเปรียบเทียบซอฟต์แวร์การจัดการการกำหนดค่าแบบโอเพนซอร์ส

นี่คือการเปรียบเทียบซอฟต์แวร์การจัดการการกำหนดค่าแบบโอ เพนซอร์ส และฟรีที่โดด เด่น ซึ่งเหมาะสำหรับงานต่างๆ เช่น...

คุณสมบัติพื้นฐาน

"โหมดตรวจสอบ" (หรือเรียกว่า การทดสอบก่อนใช้งานจริง ) หมายถึงความสามารถในการตรวจสอบว่าโหนดนั้นเป็นไปตามข้อกำหนดหรือไม่ โดยรับประกันว่าจะไม่ทำการแก้ไขใดๆ...

การสนับสนุนแพลตฟอร์ม

หมายเหตุ: นี่หมายถึงแพลตฟอร์มที่เวอร์ชันล่าสุดของเครื่องมือนี้ถูกใช้งานสำเร็จแล้ว ไม่ใช่แพลตฟอร์มที่ควรจะใช้งานได้ตามทฤษฎีเนื่องจากเขียนด้วยภาษา C/C++ หรือภาษาที่ใช้การตีความที่พกพาได้ดี และควรระบุไว้ในรายการแพลตฟอร์มที่รองรับบนเว็บไซต์ของโครงการด้วย

คำอธิบายสั้นๆ

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