จะติดตั้งและตั้งค่า Ansible บน Ubuntu ได้อย่างไร

เริ่มต้นใช้งานกับ Ansible บน Ubuntu เพื่อการจัดสรรสภาพแวดล้อมและการจัดการการกำหนดค่าที่ดีขึ้น.


การจัดการการกำหนดค่าเป็นขั้นตอนสำคัญในวงจรชีวิต DevOps ช่วยในเรื่องระบบอัตโนมัติและการติดตั้งโครงสร้างพื้นฐานด้านไอที.

มีเครื่องมือหลายอย่างสำหรับการจัดการการกำหนดค่าเช่น Puppet, Ansible, Chef, SaltStack และแน่นอนว่า, เบิ้ล ซึ่งเป็นหนึ่งในเครื่องมือที่ได้รับความนิยมสูงสุดใน DevOps สามารถจัดการเซิร์ฟเวอร์ 1,000 รายการและโครงสร้างพื้นฐานด้านไอทีที่สมบูรณ์ของคุณได้อย่างง่ายดาย.

เราจะกล่าวถึงต่อไปนี้ในบทความนี้.

  • การติดตั้งที่ไม่น่าเชื่อ
  • การแลกเปลี่ยนคีย์ SSH
  • การติดตั้งไคลเอนต์ Ansible
  • การทดสอบแบบ Ansible

หากคุณเป็นผู้เริ่มต้นแน่นอนลองดูโพสต์แนะนำ Ansible นี้.

Ansible Introduction สำหรับผู้เริ่มต้น

การติดตั้ง Ansible

เพื่อให้ง่ายลองใช้ Ansible บนเซิร์ฟเวอร์สองเครื่อง หนึ่งจะเป็นเซิร์ฟเวอร์ ansible และอีกหนึ่ง ansible- ไคลเอนต์ที่มี IP ต่อไปนี้.

  • ansible-server – 10.0.0.1
  • ansible-client – 10.0.0.25

การติดตั้งนั้นง่าย … ต้องทำสิ่งต่อไปนี้บนเซิร์ฟเวอร์ทั้งหมดที่คุณต้องการใช้ Ansible ในกรณีนี้บนทั้งสองเซิร์ฟเวอร์.

  • เรียกใช้คำสั่งด้านล่างเพื่อติดตั้งซอฟต์แวร์ที่จำเป็นสำหรับการติดตั้ง ansible.

[email protected]: ~ # apt ติดตั้งซอฟต์แวร์คุณสมบัติทั่วไป

  • ติดตั้งที่เก็บด้วยแพคเกจ ansible.

[email protected]: ~ # apt-add-repository – ใช่ – อัปเดต ppa: ansible / ansible

  • อัปเดตเครื่องมือบรรจุภัณฑ์ขั้นสูง (apt)

[email protected]: ~ # apt ปรับปรุง

  • และสุดท้าย – รันคำสั่งด้านล่างเพื่อติดตั้ง

[email protected]: ~ # apt ติดตั้ง ansible

จะใช้เวลาสองสามวินาทีในการติดตั้งแพ็คเกจที่จำเป็น.

คุณจะมั่นใจได้อย่างไรว่ามันได้รับการติดตั้งและเวอร์ชั่นแล้ว?

มันง่ายมาก คุณสามารถใช้ –version ไวยากรณ์กับ ansible เพื่อค้นหาเช่นด้านล่าง.

[email protected]: ~ # ansible –version
ansible 2.8.1
config file = /etc/ansible/ansible.cfg
เส้นทางการค้นหาโมดูลที่กำหนดค่า = [u ‘/ root / .ansible / plugins / modules’, u ‘/ usr / share / ansible / ปลั๊กอิน / modules’]
โมดูลตำแหน่งของงูหลาม ansible = /usr/lib/python2.7/dist-packages/ansible
ตำแหน่งที่ปฏิบัติการได้ = / usr / bin / ansible
python เวอร์ชั่น = 2.7.15+ (ค่าเริ่มต้น, 27 พ.ย. 2018, 23:36:35) [GCC 7.3.0]
[email protected]: ~ #

อย่างที่คุณเห็นการติดตั้ง Ansible 2.8.1 และให้ข้อมูลที่จำเป็นเช่นตำแหน่งไฟล์กำหนดค่าโมดูล python.

ต่อไปเราต้องทำการแลกเปลี่ยนคีย์ SSH เพื่อให้บริการและลูกค้าสามารถพูดคุยกันได้.

การแลกเปลี่ยนคีย์ SSH

Ansible เชื่อมต่อกับไคลเอ็นต์ผ่าน SSH (Secure shell).

ก่อนอื่นเราจะสร้างพับลิกคีย์บนเซิร์ฟเวอร์ ansible ซึ่งต้องคัดลอกไปยังไคลเอ็นต์ ansible.

ตรวจสอบให้แน่ใจว่าคุณล็อกอินเป็นผู้ใช้รูท.

  • สร้างคีย์โดยใช้คำสั่ง ssh-keygen ดังที่แสดงด้านล่าง

[email protected]: ~ # ssh-keygen
สร้างคู่คีย์ rsa สาธารณะ / ส่วนตัว.
ป้อนไฟล์ที่จะบันทึกคีย์ (/root/.ssh/id_rsa):
ป้อนข้อความรหัสผ่าน (ว่างเปล่าเพราะไม่มีข้อความรหัสผ่าน):
ป้อนวลีรหัสผ่านเดียวกันอีกครั้ง:
ข้อมูลประจำตัวของคุณได้รับการบันทึกไว้ใน /root/.ssh/id_rsa.
รหัสสาธารณะของคุณได้รับการบันทึกใน /root/.ssh/id_rsa.pub.
กุญแจสำคัญคือ:
SHA256: cDapZBESo + 8XcbXupbtILkFrklUSpwa70Y1c7yH5K1A [email protected]
ภาพสุ่มของกุญแจคือ:
+—[RSA 2048]—-+
| =. + oo |
| . B.B. = |
| . o @oE + |
| . * oO * |
| o ++. S + |
| .o + o + |
| .o..o + |
| ..o o. |
| .o o. |
+—-[SHA256]—–+
[email protected]: ~ #

อย่างที่คุณจะสังเกตเห็นมันได้สร้างกุญแจสาธารณะในโฟลเดอร์. ssh พา ธ ที่สมบูรณ์คือ /root/.ssh/id_rsa.pub

บันทึก: ตรวจสอบให้แน่ใจว่าไฟล์คีย์ส่วนตัวและสาธารณะไม่สามารถอ่านได้ทั่วโลก คุณสามารถแสดงรายการไฟล์เพื่อตรวจสอบพวกเขา.

  • ไปที่โฟลเดอร์. ssh

cd /root/.ssh

  • รายการไฟล์

[email protected]: ~ # ls -l
-rw ——- 1 รูทราก 1679 มิ.ย. 19 00:37 id_rsa
-rw ——- 1 รูทราก 404 มิ.ย. 19 00:37 id_rsa.pub

หากคุณสังเกตเห็นว่าการอนุญาตไม่ถูกต้องคุณสามารถเปลี่ยนแปลงได้โดยใช้คำสั่ง chmod

Ex:

chmod 400 id_rsa
chmod 400 id_rsa.pub

ลองคัดลอกกุญแจสาธารณะไปยังโฮสต์ Ansible ซึ่งที่อยู่ IP คือ 192.168.56.101

[email protected]: ~ / .ssh # ssh-copy-id -i ~ / .ssh / id_rsa.pub [email protected]
/ usr / bin / ssh-copy-id: INFO: แหล่งที่มาของรหัสที่จะติดตั้ง: "/root/.ssh/id_rsa.pub"
ไม่สามารถสร้างความถูกต้องของโฮสต์ ’10 .0.0.25 (10.0.0.25) ‘.
ลายนิ้วมือที่สำคัญของ ECDSA คือ SHA256: eXduPrfV0mhxUcpsZWg + 0oXDim7bHb90caA / Rt79cIs.
คุณแน่ใจหรือไม่ว่าต้องการเชื่อมต่อ (ใช่ / ไม่ใช่) ใช่
/ usr / bin / ssh-copy-id: INFO: พยายามเข้าสู่ระบบด้วยรหัสใหม่เพื่อกรองสิ่งที่ติดตั้งไว้แล้ว
/ usr / bin / ssh-copy-id: INFO: 1 คีย์ยังคงติดตั้ง – หากคุณได้รับแจ้งตอนนี้จะต้องติดตั้งคีย์ใหม่
[email protected]รหัสผ่านของ:

จำนวนคีย์ที่เพิ่ม: 1

ตอนนี้ลองเข้าสู่ระบบด้วย: "ssh ‘[email protected]‘"
และตรวจสอบเพื่อให้แน่ใจว่ามีการเพิ่มเฉพาะคีย์ที่คุณต้องการ.

[email protected]: ~ / .ssh #

คุณสามารถเห็นในผลลัพธ์ด้านบนมีการเพิ่ม 1 คีย์สำเร็จแล้ว นี่บ่งชี้ว่ามีการแลกเปลี่ยนคีย์ SSH.

ต่อไปเราจะติดตั้งไคลเอนต์ Ansible.

การตั้งค่าไคลเอนต์ Ansible

ฉันถือว่าคุณได้ทำตามขั้นตอนการติดตั้ง Ansible บนเซิร์ฟเวอร์ลูกค้าตามที่อธิบายไว้ในขั้นตอนก่อนหน้า.

การตั้งค่าไคลเอนต์หรือโฮสต์ไม่มีอะไร แต่ทำให้เซิร์ฟเวอร์ Ansible รับรู้ถึงไคลเอนต์ และจะทำเช่นนั้น:

  • เข้าสู่ระบบเซิร์ฟเวอร์ Ansible
  • ไปที่ / etc / ansible
  • เพิ่มสิ่งต่อไปนี้ในไฟล์โฮสต์โดยใช้โปรแกรมแก้ไขรายการโปรดของคุณ

[ไคลเอ็นต์]
node1 ansible_ssh_host = 10.0.0.25

  • บันทึกไฟล์โฮสต์

การทดสอบแบบ Ansible

หากคุณทำตามขั้นตอนทั้งหมดอย่างถูกต้องคุณจะได้รับ ความสำเร็จ ข้อผิดพลาดเมื่อคุณเรียกใช้คำสั่งด้านล่างบน ansible-server.

[email protected]: ~ / .ssh # ansible -m ping ไคลเอ็นต์
โหนด 1 | ความสำเร็จ => {
"ansible_facts": {
"discovered_interpreter_python": "/ usr / bin / python3"
},
"การเปลี่ยนแปลง": false,
"ปิง": "สาบ"
}
[email protected]: ~ / .ssh #

พวกเขาดังกล่าวข้างต้นส่ง Ping ไปยังลูกค้าเพื่อทดสอบการเชื่อมต่อและยืนยันว่าดีหรือไม่.

ข้อสรุป

ฉันหวังว่านี่จะช่วยให้คุณมีความคิดที่จะเริ่มต้นด้วยการติดตั้งและเล่นกับมัน คอยติดตามบทแนะนำ Ansible เพิ่มเติมหรือดูที่นี่ แน่นอน Ansible Udemy Mastering.

Tags:

  • เบิ้ล

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map