Score:0

ansible ไม่พบบทบาทที่กล่าวถึงใน playbook

ธง uz

ฉันค่อนข้างใหม่กับ Ansible ดังนั้นฉันอาจกำหนดค่าผิดพลาด
[ฉันมีคอนเทนเนอร์ Docker ที่ใช้บริการ Ansible อยู่ในนั้น
ฉันมีที่เก็บ Ansible ที่มีไฟล์ Ansible (นี่คือที่เก็บ .Git]

ความตั้งใจของฉันคือการ เปลี่ยนแต่ละแล็บในเซิร์ฟเวอร์ vCenter กลับเป็นสแน็ปช็อตเฉพาะโดยอัตโนมัติ
ดังนั้นฉัน (ด้วยความช่วยเหลือของ คู่มืออธิบายบทบาทอธิบายพร้อมตัวอย่าง):

  • สร้างบทบาทกับ ansible-กาแล็กซี่ init ชื่อคำสั่ง วีเซ็นเตอร์ (ดูแผนผังไดเร็กทอรีด้านล่าง)
  • สร้างไฟล์งาน vcenter ภายใน งาน โฟลเดอร์ (ดูแผนผังไดเร็กทอรีด้านล่าง) นี่คือตัวอย่างของ รีเวอร์.yml ไฟล์งาน:
- ชื่อ: เปลี่ยนกลับเป็นภาพรวม
  vmware_guest_snapshot:
    ชื่อโฮสต์: "{{ vcenter_hostname }}"
    ชื่อผู้ใช้: "{{ vcenter_username }}"
    รหัสผ่าน: "{{ vcenter_password }}"
    ศูนย์ข้อมูล: "{{ datacenter_name }}"
    สถานะ: ย้อนกลับ
    snapshot_name: ทำความสะอาด
  delegate_to: localhost
  • ให้ข้อมูลรับรอง vCenter ใน vcenter\vars\main.yml ไฟล์เช่นนี้:
# ไฟล์ vars สำหรับ vcenter
vcenter_hostname: vcenter.foo.com
vcenter_username: [email protected]
vcenter_password: f#0$o#1$0o
  • รวมงานใน งาน\main.yml ไฟล์ด้วย งานนำเข้า ที่สำคัญดังนี้
---
# ไฟล์งานสำหรับบทบาท/vcenter
- import_tasks: poweroff.yml
- import_tasks: poweron.yml
- import_tasks: revert.yml
- import_tasks: shutdown.yml
  • สร้าง revert_lab.yml คู่มือการเล่นที่รวมบทบาทเช่นนี้
---
- ชื่อ: ย้อนกลับห้องปฏิบัติการภายในองค์กร
  โฮสต์: ทั้งหมด
  บทบาท:
  - วีเซ็นเตอร์

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

ansible-playbook playbooks/revert_lab.yml --syntax-check

ข้อผิดพลาดที่ฉันได้รับคือ:

[คำเตือน]: Ansible กำลังทำงานในไดเร็กทอรีที่เขียนได้ทั่วโลก (/ansible) โดยไม่สนใจว่าเป็นซอร์ส ansible.cfg สำหรับข้อมูลเพิ่มเติมโปรดดู
https://docs.ansible.com/ansible/devel/reference_appendices/config.html#cfg-in-world-writable-dir
[คำเตือนการปฏิเสธ]: Ansible จะต้องใช้ Python 3.8 หรือใหม่กว่าบนคอนโทรลเลอร์ที่เริ่มต้นด้วย Ansible 2.12 เวอร์ชันปัจจุบัน: 3.6.8 (ค่าเริ่มต้น 16 พ.ย. 2020, 16:55:22 น.) [GCC
 4.8.5 20150623 (หมวกแดง 4.8.5-44)]. คุณลักษณะนี้จะถูกลบออกจาก ansible-core ในเวอร์ชัน 2.12 คำเตือนการเลิกใช้งานสามารถปิดใช้งานได้โดยการตั้งค่า 
deprecation_warnings=เท็จ ใน ansible.cfg
[คำเตือน]: ไม่มีการแยกวิเคราะห์สินค้าคงคลัง มีเพียง localhost โดยปริยายเท่านั้นที่ใช้งานได้
[คำเตือน]: รายการโฮสต์ที่ให้มาว่างเปล่า มีเพียง localhost เท่านั้นที่ใช้งานได้ โปรดทราบว่า localhost โดยปริยายไม่ตรงกับ 'ทั้งหมด'
ข้อผิดพลาด! ไม่พบบทบาท 'vcenter' ใน /ansible/playbooks/roles:/root/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:/ansible/playbooks

ข้อผิดพลาดดูเหมือนจะอยู่ใน '/ansible/playbooks/revert_lab.yml': บรรทัดที่ 5 คอลัมน์ 5 แต่อาจ
อยู่ที่อื่นในไฟล์ขึ้นอยู่กับปัญหาไวยากรณ์ที่แน่นอน

บรรทัดที่ละเมิดดูเหมือนจะเป็น:

  บทบาท:
  - วีเซ็นเตอร์
    ^ ที่นี่

ฉันตัดสินใจที่จะเพิ่ม ansible.cfg ไปยังที่เก็บของฉันด้วย a บทบาท_เส้นทาง กุญแจ:

[ค่าเริ่มต้น]
สินค้าคงคลัง = / ansible / สินค้าคงคลัง
roles_path = /ansible/บทบาท
# roles_path = ./roles:..~/ansible/roles

ฉันวิ่งอีกครั้ง --syntax-ตรวจสอบ คำสั่ง แต่ได้รับข้อผิดพลาดเดียวกัน ฉันลองใช้สถานะเส้นทางของบทบาทประเภทต่างๆ - และได้รับข้อผิดพลาดเดียวกัน แน่นอน ansible-playbook คำสั่งไม่ทำงาน (พร้อมข้อความแสดงข้อผิดพลาดเดียวกัน):

playbooks ansible-playbook/revert_lab.yml -i สินค้าคงเหลือ/test/onpremis/domain.com/lab_r.yml

ดังนั้น, ฉันจะทำให้เข้าใจบทบาทของฉันได้อย่างไร
ฉันจะทำให้ ansible รัน playbook ได้สำเร็จได้อย่างไร
ansible.cfg เกี่ยวข้องหรือไม่เกี่ยวข้องกับ "เรื่องราว" หรือไม่

พื้นที่เก็บข้อมูลของฉัน:

ค:.
ââââตอบได้
â â ansible.cfg
â ââââ สินค้าคงเหลือ
â â ââââทดสอบ
â â ââââคลาวด์
â â ââââในองค์กร
â â ââââdomain.com
â â â lab_j.yml
â â â lab_r.yml
â â ââââgroup_vars
â â all.yml
â ââââเพลย์บุ๊ค
â â revert_lab.yml
â ââââบทบาท
â ââââvศูนย์
â ââââงาน
â â main.yml
â â poweroff.yml
â â poweron.yml
â â return.yml
â â ปิดระบบ.yml
â ââââvars
main.yml
Score:0
ธง cz

Ansible บอกคุณว่ามีอะไรผิดปกติ:

[คำเตือน]: Ansible กำลังทำงานในไดเร็กทอรีที่เขียนได้ทั่วโลก (/ansible) โดยไม่สนใจว่าเป็นซอร์ส ansible.cfg สำหรับข้อมูลเพิ่มเติม โปรดดู https://docs.ansible.com/ansible/devel/reference_appendices/config.html#cfg-in-world-writable-dir

ซึ่งหมายความว่าการเปลี่ยนแปลงของคุณใน ansible.cfg จะถูกละเว้น

แก้ไขสิทธิ์ในไดเร็กทอรีนี้แล้วลองอีกครั้ง

uz flag
```chmod o-w``` บนไดเร็กทอรี ansible

โพสต์คำตอบ

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