คลังรายการโฮสต์ขั้นสูง Ansible

Khlang Raykar Host Khan Sung Ansible



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

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







ข้อกำหนดเบื้องต้น:

ต่อไปนี้เป็นข้อกำหนดก่อนที่จะใช้คำสั่งสินค้าคงคลังรายการโฮสต์ใน Ansible:



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

ตัวอย่าง: รายการโฮสต์คงคลังในเครื่อง

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



ขั้นตอนที่ 1: ตรวจสอบรายการโฮสต์เริ่มต้นในอุปกรณ์โฮสต์ระยะไกลเป้าหมาย





ก่อนอื่น เราจะตรวจสอบจำนวนโฮสต์ที่อยู่ในคลังของเครื่องมือ Ansible สำหรับสิ่งนั้น เราใช้คำสั่ง 'ansible' กับ '—list-hosts' เพื่อให้เราสามารถแสดงโหนดที่จัดการเริ่มต้นในสินค้าคงคลัง

[ ราก @ ต้นแบบ ansible ] # ใช้งานได้ทั้งหมด --list-hosts



นี่คือผลลัพธ์หลังจากเขียนคำสั่งก่อนหน้า:

เทอร์มินัล Ansible แสดง '0 โฮสต์' ตามที่คุณเห็นในการตอบกลับที่ให้ไว้ เนื่องจากเราไม่ได้ประกาศพื้นที่โฆษณา เราสร้างสินค้าคงคลังเพื่อแสดงรายการสินค้าคงคลังของโฮสต์ในเทอร์มินัลก่อนที่เราจะจัดการเรื่องนี้

สินค้าคงคลังเริ่มต้น:

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

[ ราก @ ต้นแบบ ansible ] # sudo nano /etc/ansible/hosts

ผลลัพธ์ถูกสร้างขึ้นเมื่อเราเขียนคำสั่งก่อนหน้า จากนั้นระบบจะขอให้คุณป้อนรหัสผ่าน:

ในสแนปชอตนี้ ไฟล์โฮสต์ Ansible ที่เป็นค่าดีฟอลต์จะให้ข้อมูลเกี่ยวกับโฮสต์ที่ไม่ได้จัดกลุ่มและโฮสต์ของกลุ่มเว็บเซิร์ฟเวอร์ โฮสต์เหล่านี้รวมถึง URL และที่อยู่ IP ที่แตกต่างกัน

ขั้นตอนที่ 2: กำหนด Custom Inventory ใน Ansible

ใน Ansible เรายังสามารถกำหนดสินค้าคงคลังของเราได้ด้วยการเขียนหลายคำสั่งในเทอร์มินัล Ansible การกำหนดสินค้าคงคลังเมื่อเรียกใช้ใบแจ้งยอดและ playbooks เป็นการตัดสินใจที่ชาญฉลาดซึ่งป้องกันการปะทะกันของโฮสต์และความล้มเหลวในขณะที่เชื่อมต่อกับโฮสต์

ในการเริ่มต้นกำหนดพื้นที่โฆษณาด้วยตัวเราเอง ขั้นแรกให้เขียนคำสั่งต่อไปนี้เพื่อให้เราสามารถสร้างพื้นที่โฆษณาใน Ansible และแสดงรายการโฮสต์ในนั้น เพื่อที่เราจะทำการเชื่อมต่อระหว่างตัวควบคุม Ansible และโฮสต์ระยะไกลที่เป็นเป้าหมาย

[ ราก @ ต้นแบบ ansible ] # นาโน hosts.yml

หลังจากเขียนคำสั่งก่อนหน้านี้แล้ว สินค้าคงคลังจะถูกสร้างขึ้นและเปิดใช้งานในเทอร์มินัล Ansible ใหม่ที่มีชื่อ 'hosts.yml' ต่อไป เราจะแสดงรายการโฮสต์เป้าหมายทีละรายการในคลัง โฮสต์แรกที่เราเชื่อมต่อด้วยคือโฮสต์ Linux เราจัดเตรียมที่อยู่ IP ของโฮสต์ Linux, ผู้ใช้ Ansible, รหัสผ่าน Ansible, ประเภทของการเชื่อมต่อ และหมายเลขพอร์ต Ansible เรายังทำเช่นเดียวกันกับโฮสต์เป้าหมายที่สอง โฮสต์ที่สองที่เราใช้คือโฮสต์ Ansible โฮสต์ทั้งหมดที่เราระบุไว้อยู่ภายใต้พารามิเตอร์ Ansible ในคลัง

คำตอบ:
เจ้าภาพ:
Linux_Host:
ansible_host: 192.168.3.229
ansible_user: ราก
ansible_password: tpstps_22
ansible_connection: จุ๊ๆ
ansible_port: 22

Ansible_Host:
ansible_host: 192.168.7.10
ansible_user: ไอริส
ansible_password: TpsTps_1
ansible_connection: จุ๊ๆ
ansible_port: 22

หลังจากสร้างไฟล์สินค้าคงคลังและจัดเตรียมโฮสต์ในนั้น ตอนนี้เรายุติไฟล์สินค้าคงคลังและกลับไปที่เทอร์มินัล Ansible หลัก

ขั้นตอนที่ 3: สร้าง Playbook ใน Ansible

ต่อไป เราสร้าง playbook ในเครื่องมือ Ansible เพื่อให้เรากำหนดงาน เราเขียนคำสั่งต่อไปนี้ในเทอร์มินัลหลัก Ansible:

[ ราก @ ต้นแบบ ansible ] # nano ansible_advanced_inventory.yml

ตอนนี้ playbook ได้เปิดตัวในเทอร์มินัลใหม่ ขั้นแรก เราเขียนชื่อหนังสือคู่มือการเล่น ในบรรทัดถัดไป เราระบุโฮสต์เป้าหมาย เราใช้ตัวเลือกรวบรวมข้อเท็จจริงที่ใช้เพื่อรับข้อมูลทั้งหมดของโฮสต์ แต่ที่นี่ เราผ่าน “ไม่” ซึ่งหมายความว่าเราไม่ต้องการรับข้อมูลทั้งหมดของโฮสต์

ต่อไป เราจะแสดงรายการงานใน playbook งานแรกใช้เพื่อแสดงโฮสต์เป้าหมายพร้อมชื่อโฮสต์ ในงานต่อไป เราจะพิมพ์ผลลัพธ์ของโฮสต์

- ชื่อ: สินค้าคงคลังโฮสต์ขั้นสูง Ansible
โฮสต์: Ansible [ 0 ]
Gather_facts: ไม่
งาน:

- ชื่อ: เก็ท ชื่อโฮสต์ ของโหนดที่ได้รับการจัดการ
เปลือก: 'ชื่อโฮสต์'
ลงทะเบียน: ผลลัพธ์

- ชื่อ: พิมพ์ ชื่อโฮสต์
แก้ปัญหา:
ข้อความ: '{{result.stdout}}'

ตอนนี้ เราต้องการดำเนินการ playbook พร้อมกับไฟล์สินค้าคงคลัง ดังนั้น เรามาจบ playbook กันก่อน ต่อไปนี้เป็นคำสั่งที่เราใช้ในการเรียกใช้คำสั่ง:

[ ราก @ ต้นแบบ ansible ] # ansible-playbook ansible_advanced_inventory.yml –i host.yml

ต่อไปนี้เป็นการแสดงผลที่แสดงว่าการเชื่อมต่อสำเร็จ เนื่องจากเราผ่าน Ansible[0] ใน playbook โฮสต์แรกจะแสดงในผลลัพธ์:

บทสรุป

เรามีการสนทนาเชิงลึกที่คลัง Ansible ตลอดบทช่วยสอนนี้ เราได้เรียนรู้วิธีสร้างพื้นที่โฆษณาใน Ansible แล้วเชื่อมต่อกับโฮสต์ระยะไกลเป้าหมาย เรายังปรับใช้ตัวอย่างเพื่อให้เข้าใจแนวคิดของพื้นที่โฆษณา Ansible ได้อย่างง่ายดาย