ฉันจะเปิดใช้งานการแก้ไขข้อบกพร่องเพิ่มเติมจาก Ansible และ Vagrant ได้อย่างไร


43

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

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

» vagrant provision                                       ~/vm/blvagrant 1 ↵
[default] Running provisioner: ansible...

PLAY [web-servers] ************************************************************

GATHERING FACTS ***************************************************************
ok: [192.168.9.149]

TASK: [install python-software-properties] ************************************
ok: [192.168.9.149] => {"changed": false, "item": ""}

TASK: [add nginx ppa if it ubuntu 10.04 and up] *******************************
ok: [192.168.9.149] => {"changed": false, "item": "", "repo": "ppa:nginx/stable", "state": "present"}

TASK: [update apt repo] *******************************************************
ok: [192.168.9.149] => {"changed": false, "item": ""}

TASK: [install nginx] *********************************************************
ok: [192.168.9.149] => {"changed": false, "item": ""}

TASK: [copy fixed init for nginx] *********************************************
ok: [192.168.9.149] => {"changed": false, "gid": 0, "group": "root", "item": "", "mode": "0755", "owner": "root", "path": "/etc/init.d/nginx", "size": 2321, "state": "file", "uid": 0}

TASK: [service nginx] *********************************************************
ok: [192.168.9.149] => {"changed": false, "item": "", "name": "nginx", "state": "started"}

TASK: [write nginx.conf] ******************************************************
ok: [192.168.9.149] => {"changed": false, "gid": 0, "group": "root", "item": "", "mode": "0644", "owner": "root", "path": "/etc/nginx/nginx.conf", "size": 1067, "state": "file", "uid": 0}

PLAY RECAP ********************************************************************
192.168.9.149              : ok=8    changed=0    unreachable=0    failed=0

Ansible failed to complete successfully. Any error output should be
visible above. Please fix these errors and try again.

ฉันจะรับข้อมูลการดีบักเพิ่มเติมได้อย่างไร ฉันได้เพิ่มansible.verbose = trueการตั้งค่าคนจรจัดของฉันแล้วซึ่งส่งผลให้พจนานุกรมถูกแสดงในผลลัพธ์ข้างต้น


1
ตามgithub.com/mitchellh/vagrant/issues/2004นี่เป็นจุดบกพร่องของการปล่อย Vagrant ในปัจจุบัน ผมสามารถที่จะ /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/provisioners/ansible/provisioner.rb แพทช์ด้วยตนเองบนพื้นฐานของgithub.com/mitchellh/vagrant/commit/...
Brian Lyttle

คำตอบ:


59

คุณสามารถเพิ่มสิ่งนี้ลงใน Vagrantfile ของคุณ:

ansible.verbose = "vvv"

สิ่งนี้จะต้องไปในที่ที่คุณกำลังเตรียมการสำรองไว้เช่นนี้:

config.vm.provision "ansible" do |ansible|
    ansible.verbose = "vvv"
end

ชุดตัวเลือก verbose ของ ansible:

-v, --verbose         verbose mode (-vvv for more, -vvvv to enable
                        connection debugging)

การตั้งค่านี้vvvv(สี่วี) จะเป็นประโยชน์สำหรับการแก้จุดบกพร่องข้อผิดพลาดการเชื่อมต่อ SSH - แต่มันจะสร้างขนาดใหญ่จำนวนเงินของการส่งออกการแก้ปัญหาเพื่อให้ใช้เพียงสี่ของวีปัญหาการเชื่อมต่อถ้าคุณกำลังมี


10

ฉันสามารถรับผลลัพธ์เช่นนี้ได้:

tasks:
- name: Run puppet
  command: /root/puppet/run_puppet --noop
  register: puppet_output

- name: Show puppet output
  debug: msg="{{ puppet_output.stdout_lines }}"

อย่างน้อยก็แสดงเอาท์พุทให้ฉัน แต่น่าเสียดายที่ยังไม่ได้จัดรูปแบบในทางที่อ่านง่ายมาก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.