อะไรคือความแตกต่างระหว่าง Ansible, Ansible Galaxy และ Ansible Tower?
เผยแพร่แล้ว: 2022-11-23Ansible เป็นเครื่องมือจัดการการกำหนดค่าแบบโอเพ่นซอร์สและแพลตฟอร์มระบบอัตโนมัติด้านไอที ช่วยในการจัดเตรียมซอฟต์แวร์อัตโนมัติ การจัดการการกำหนดค่า และการปรับใช้แอปพลิเคชัน
Ansible ไม่เหมือนกับแอปจัดการการกำหนดค่าอื่นๆ นี่คือสิ่งที่ทำให้แตกต่างจากเครื่องมือการจัดการการกำหนดค่าอื่นๆ เช่น Chef, CFEngine, Salt และ Puppet
Ansible Tower มีอินเทอร์เฟซบนเว็บเพื่อจัดการ Ansible ผู้ใช้ที่เข้าใจได้ต้องการอินเทอร์เฟซที่ใช้งานง่ายสำหรับการปรับใช้อย่างรวดเร็วและการตรวจสอบการกำหนดค่า
Ansible Tower คือการตอบสนองของผู้บริหาร Ansible แต่ละภาษาและทุกเฟรมเวิร์กมีความสามารถและความแตกต่างเฉพาะของตัวเอง โพสต์นี้จะกล่าวถึงความแตกต่างระหว่าง Ansible, Ansible Tower และ Ansible Tower
บทนำที่เข้าใจได้
Ansible เป็นเครื่องมือโอเพ่นซอร์สสำหรับการจัดการการกำหนดค่าที่ทำให้การจัดเตรียมซอฟต์แวร์และการจัดการการกำหนดค่าเป็นไปโดยอัตโนมัติ คุณสามารถควบคุมและกำหนดค่าหลายเครื่องได้จากเครื่องเซิร์ฟเวอร์เครื่องเดียว

ทำงานร่วมกับระบบแบบพุชที่การกำหนดค่าถูก "พุช" จากเครื่องหลักไปยังโหนดทั้งหมด
การกำหนดค่าเขียนโดยใช้ YAML เข้าใจง่ายและง่ายพอที่ผู้ดูแลระบบเซิร์ฟเวอร์จะสร้างได้ มันทำงานบน SSH และใช้ OpenSSH เป็นเลเยอร์การขนส่ง
การกำหนดค่า Ansible ทั้งหมดสามารถพบได้ในชุดของไฟล์ YAML ที่เราเรียกว่า playbook Playbook นี้มีภารกิจหรือบทละคร ในการกำหนดค่าโหนด งานจะใช้โมดูล
Playbooks เป็นสถานที่ที่สามารถเขียนการกำหนดค่าได้ งานทั้งหมดที่เขียนใน playbook จะดำเนินการตามลำดับเดียวกัน รองรับการดำเนินการทั้งแบบซิงโครนัสและแบบอะซิงโครนัส
คุณจะเห็นเครื่องโฮสต์หลายเครื่องในภาพด้านบน เครื่องโฮสต์เหล่านี้ใช้เพื่อดำเนินการกำหนดค่าทั้งหมดที่เราสร้างขึ้น
ข้อดีของ Ansible:
- ฟรีและโอเพ่นซอร์ส
- ง่าย: ไม่มีปัญหาในการตั้งค่า Ansible
- ทรงพลัง: ด้วย Ansible คุณสามารถกำหนดค่าเครื่องได้หลายพันเครื่องพร้อมกัน
- ยืดหยุ่น: สามารถใช้ได้ในหลายสภาพแวดล้อม
- ไม่ใช้ เอเจนต์: ไม่พึ่งพาโหนดเอเจนต์ เช่น เจนกินส์
- มีประสิทธิภาพ: ไม่ต้องใช้ซอฟต์แวร์เพิ่มเติมในการทำงาน
ข้อเสียของ Ansible:
- ยากที่จะติดตั้ง
- ไม่ทำงานบน Windows
- ความเข้ากันได้ย้อนหลัง
Ansible Galaxy บทนำ
Ansible Galaxy อนุญาตให้ผู้ใช้แชร์และดึงข้อมูลบทบาท Ansible Galaxy สนับสนุนการใช้บทบาทที่ใช้ซ้ำได้ในการกำหนดค่าเซิร์ฟเวอร์ Ansible Galaxy มักใช้ในโครงการ

Ansible Galaxy เป็นที่เก็บสาธารณะของคำอธิบายบทบาท Ansible README จะรวมอยู่ในทุกบทบาท พวกเขาให้ข้อมูลเกี่ยวกับการใช้บทบาทและตัวแปร
Ansible Galaxy มีบทบาทมากมายที่พัฒนาและเติบโตอย่างต่อเนื่อง บทบาทช่วยให้คุณสามารถแบ่ง playbooks ที่ใหญ่ขึ้นและสร้างโครงสร้างที่มีโครงสร้าง คุณสามารถแก้ไขบทบาทของคุณเองแล้วใช้งานได้ตามที่คุณต้องการ
โครงสร้างบทบาทของดาราจักร Ansible
- README.md เป็นไฟล์ Readme ที่อธิบายถึงบทบาท ไฟล์ readme มีรายละเอียดทั้งหมดเกี่ยวกับพารามิเตอร์อินพุตของบทบาทและตัวอย่าง yml
- งาน – งานทั้งหมดสามารถเข้าร่วมโดยบทบาทที่งาน จุดเริ่มต้นสำหรับบทบาทคือ Main.yml นี่คือจุดเริ่มต้นของการดำเนินการ ไฟล์นี้สามารถมีไฟล์อื่นๆ
- ตัวจัดการ – หมวดหมู่นี้รวมถึงตัวจัดการที่อาจใช้ในบทบาทนี้หรือบทบาทอื่นๆ
- ค่าเริ่มต้น – ตัวแปรเริ่มต้นสำหรับบทบาท
- vars – ตัวแปรที่มีความสำคัญมากกว่าค่าเริ่มต้นสำหรับบทบาท
- ไฟล์ – ไฟล์เหล่านี้สามารถปรับใช้โดยใช้บทบาท
- เทมเพลต – ส่วนนี้มีเทมเพลตที่สามารถใช้ผ่านบทบาท
- เมตา – สามารถใช้ข้อมูลเมตาเพื่อกำหนดบทบาทในเมตา ไฟล์นี้ควรมีการขึ้นต่อกันของบทบาทด้วย
- การทดสอบ – การทดสอบ CI ที่จะดำเนินการ
- ไลบรารี – การฝังโมดูลหรือปลั๊กอินในบทบาท ไม่ได้สร้างโดยคำสั่ง init คุณยังสามารถสร้างโมดูลแบบกำหนดเองใน Python ในโฟลเดอร์นี้ จากนั้นใช้ในงานของคุณ
Ansible Galaxy เป็นเครื่องมือที่ช่วยให้คุณสร้างและจัดการบทบาทต่างๆ คุณจะเห็นเวอร์ชันใหม่ของ Ansible และจะมีการเปลี่ยนแปลง รุ่น Ansible 2.2.8 นำเสนอคุณสมบัติการรวบรวม เนื้อหา Ansible กระจายเป็นคอลเล็กชัน ใช้สำหรับบรรจุภัณฑ์และแจกจ่ายโมดูล playbooks และปลั๊กอิน
ข้อดีของ Ansible Galaxy:
- ค้นหา ใช้ซ้ำ และแชร์เนื้อหาที่เกี่ยวข้องกับ Ansible จากส่วนกลาง
- ดาวน์โหลดบทบาทที่ใช้ซ้ำได้ง่ายสำหรับการติดตั้งแอปพลิเคชัน
- เพิ่มความเร็วในการปรับใช้
ข้อเสียของ Ansible Galaxy
- ขับเคลื่อนโดยชุมชน ดังนั้นจึงไม่รับประกันการทำงานในโมดูล
- บทบาทของดาราจักร Ansible จำนวนมากมีเอกสารประกอบที่ไม่ดี
- บทบาท Ansible Galaxy ส่วนใหญ่ไม่ได้ไร้ความสามารถ
บทนำ Ansible Tower
Ansible Tower คือ UI สำหรับ Ansible เป็นโซลูชันบนเว็บที่ทีมไอทีประเภทต่างๆ สามารถใช้งานได้
Ansible Tower เปรียบได้กับแผงหน้าปัดรถยนต์ แดชบอร์ดแสดงข้อมูลทั้งหมดที่คุณต้องการเกี่ยวกับสภาพรถของคุณ: ความเร็ว ระดับน้ำมัน น้ำมันที่เหลืออยู่ ฯลฯ Ansible Tower ดูเหมือนแดชบอร์ด แต่ Ansible เป็นเครื่องยนต์

Ansible Tower ช่วยให้ผู้ใช้สามารถทำงานจากระยะไกลผ่านอินเทอร์เฟซผู้ใช้แบบกราฟิก สามารถดำเนินการงาน Ansible ผ่าน playbooks playbooks เหล่านี้สามารถดำเนินการได้โดยใช้ Ansible CLI อย่างไรก็ตาม Ansible Tower ช่วยให้การจัดการ playbook และการดำเนินการทำได้ผ่าน GUI

คุณสามารถดำเนินการ playbooks ที่มีอยู่ก่อนหรือสร้างของคุณเอง Ansible Tower ยังมีการแจ้งเตือนในตัว สิ่งนี้ทำให้ทีมเฉพาะเจาะจงได้รับการแจ้งเตือนเมื่องานเสร็จสิ้นหรือล้มเหลว การสื่อสารข้ามประเภทนี้มีความสำคัญต่อองค์กรใดๆ
นอกจากนี้ยังมีการควบคุมการเข้าถึงตามบทบาท (RBAC) ซึ่งช่วยให้คุณตรวจสอบได้ว่าใครได้รับอนุญาตให้เรียกใช้งาน สิ่งนี้อนุญาตให้ผู้ใช้บางรายเท่านั้นที่สามารถทำงานที่ Ansible Tower ได้ สิ่งนี้มักจะต้องปฏิบัติตามกฎระเบียบด้านความปลอดภัยของอุตสาหกรรม
ให้ RBAC และยังแสดงบันทึกการตรวจสอบที่มีรายละเอียดว่าใครรับผิดชอบงานใด ณ เวลาใดเวลาหนึ่ง นี่เป็นการรักษาความปลอดภัยเพิ่มเติมที่ยากจะหาได้หากคุณใช้ Ansible เพียงอย่างเดียว
Ansible Tower ช่วยให้สามารถเรียกใช้โค้ดจากระยะไกลในแอปพลิเคชันต่างๆ VM อาจอยู่ในเงื่อนไขที่ไม่ถูกต้องและจำเป็นต้องรีสตาร์ท และ Ansible Tower ช่วยให้ดำเนินการนี้ได้ง่ายและปลอดภัย
สามารถใช้ซอฟต์แวร์การติดตั้งจากระยะไกลเพื่อแก้ไขช่องโหว่ด้านความปลอดภัยหรือรีเซ็ตรหัสผ่านได้อย่างรวดเร็ว Ansible Tower เป็นร้านค้าครบวงจรสำหรับโครงสร้างพื้นฐานเครือข่ายและ VM ทั้งหมดที่ปรับใช้ผ่าน Ansible
Ansible Tower ซึ่งแตกต่างจาก Ansible คือไม่ฟรี Ansible Tower มีสองเวอร์ชัน: พรีเมียมและมาตรฐาน ขึ้นอยู่กับคุณและความต้องการด้านไอทีของบริษัทของคุณว่าเวอร์ชันใดดีที่สุด รุ่นมาตรฐานเหมาะสำหรับการดำเนินงานด้านไอทีส่วนใหญ่ Premium ได้รับการออกแบบมาสำหรับ DevOps ที่มีความสำคัญต่อภารกิจ
Red Hat จะให้ข้อมูลราคาที่แน่นอนแก่คุณหลังจากที่คุณติดต่อพวกเขา รุ่น Standard จะมีราคาประมาณ $10,000 ต่อปีสำหรับ 100 โหนด พรีเมี่ยมจะให้คุณประมาณ $14,000 ต่อปีสำหรับโหนดจำนวนเท่ากัน
ข้อดีของ Ansible Tower:
- รูปแบบที่เรียบง่าย
- ช่วยคุณสร้างไปป์ไลน์ CI/CD สำหรับการจัดการเวิร์กโฟลว์
- อนุญาตให้กำหนดเวลางานและแจ้งเตือนทุกข้อผิดพลาด
- การจัดการสินค้าคงคลังกราฟิก
- ติดตั้งง่ายมาก
ข้อเสียของ Ansible Tower:
- แพง
- ตามการสมัครสมาชิก
- รวมการแก้ไขข้อขัดแย้งที่เป็นไปไม่ได้/ไม่ชัดเจน
- การดีบักมีความซับซ้อน
Ansible vs Ansible Galaxy vs Ansible Tower
Ansible สามารถใช้เป็นเครื่องมืออัตโนมัติด้านไอที สามารถปรับใช้ซอฟต์แวร์และกำหนดค่าระบบได้ นอกจากนี้ยังสามารถจัดการงานด้านไอทีที่ซับซ้อนมากขึ้น เช่น การปรับใช้อย่างต่อเนื่องหรือการอัปเดตการยกเลิกเวลาหยุดทำงานเป็นศูนย์ เป้าหมายหลักของ Ansible คือความเรียบง่ายและใช้งานง่าย
ในทางกลับกัน Ansible Tower ถูกอธิบายว่าเป็น "ไคลเอนต์ Git ที่ทรงพลังที่สุดสำหรับ Mac และ Windows" คุณสามารถใช้คุณสมบัติอันทรงพลังทั้งหมดของ Git ใน GUI ที่มีประสิทธิภาพมากขึ้น Ansible Galaxy สามารถใช้เพื่อจัดเก็บบทบาท Ansible Ansible Galaxy เทียบเท่ากับ PyPI สำหรับ Python หรือ Maven สำหรับ Java
Ansible Tower ไม่สามารถใช้งานได้หากไม่มี Ansible Ansible Tower สามารถใช้ได้กับ Ansible Tower Ansible เป็นเครื่องมือที่ขับเคลื่อนการจัดการโครงสร้างพื้นฐานและการปรับใช้ของคุณ
Ansible Tower ช่วยให้เรามองเห็นการทำงานภายในของทุกสิ่ง ช่วยให้คุณเห็นและควบคุมการปฏิบัติตามข้อกำหนดด้านความปลอดภัยของโครงสร้างพื้นฐานขององค์กร
Ansible Tower สามารถให้บริการ RBAC สำหรับการปรับใช้ Ansible ของคุณ Ansible Tower เป็นตัวเลือกที่ยอดเยี่ยมเช่นกัน หากคุณกำลังมองหาผู้เชี่ยวชาญที่ไม่มีทักษะในการเขียนโค้ดเพื่อตรวจสอบโครงสร้างพื้นฐานของคุณ
การเปรียบเทียบ Ansible กับ Ansible Tower กับ Ansible Galaxy:
คำตอบ | หอคอยแอนซิเบิ้ล | กาแล็กซี่แอนซิเบิ้ล |
เครื่องมือจัดการการกำหนดค่าแบบโอเพ่นซอร์ส | ส่วนติดต่อผู้ใช้ของ Ansible | ที่เก็บบทบาทและคอลเลกชัน |
ดำเนินการ playbooks ผ่าน CLI | ดำเนินการ playbooks ผ่าน GUI | เรียกใช้ ansible-galaxy โดยใช้ CLI |
เปิดตัวครั้งแรกในปี 2555 | เปิดตัวครั้งแรกในปี 2558 | เปิดตัวครั้งแรกในปี 2559 |
ใช้งานได้ฟรี | เริ่มต้นที่ 5,000$ ต่อปีสำหรับ 100 โหนด | ใช้งานได้ฟรี |
ติดตั้งและใช้งานง่ายมาก | มอบการมองเห็นในสภาพแวดล้อม Ansible ทั้งหมดของคุณ | สามารถนำบล็อกรหัสกลับมาใช้ใหม่ได้ใน playbooks ต่างๆ |
บทสรุป
นั่นคือทั้งหมดที่เกี่ยวกับ Ansible, Ansible Tower และ Ansible Galaxy และความแตกต่างระหว่าง Ansible, Ansible Galaxy และ Ansible Tower องค์กรควรพิจารณาข้อกำหนดเกี่ยวกับ Ansible Tower เนื่องจากมีราคาแพงมาก แต่โดยรวมแล้ว Ansible เป็นเครื่องมือ CM ที่ยอดเยี่ยมสำหรับสภาพแวดล้อมแบบ Linux
คุณอาจสนใจงาน Sysadmin ที่คุณสามารถทำให้เป็นอัตโนมัติด้วย Ansible