คำถามติดแท็ก ansible

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

7
วิธีคัดลอกไฟล์ระหว่างสองโหนดโดยใช้ ansible
ฉันต้องการคัดลอกไฟล์ฟอร์มเครื่อง A ไปยังเครื่อง B ในขณะที่เครื่องควบคุมของฉันจากที่ที่ฉันเรียกใช้งานที่ตอบได้ทั้งหมดคือเครื่อง C (เครื่องท้องถิ่น) ฉันได้ลองทำสิ่งต่อไปนี้แล้ว: ใช้คำสั่ง scp ในโมดูลเชลล์ของ ansible hosts: machine2 user: user2 tasks: - name: Copy file from machine1 to machine2 shell: scp user1@machine1:/path-of-file/file1 /home/user2/file1 แนวทางนี้ดำเนินต่อไปไม่สิ้นสุด ใช้โมดูลการดึงและคัดลอก hosts: machine1 user: user1 tasks: - name: copy file from machine1 to local fetch: src=/path-of-file/file1 dest=/path-of-file/file1 hosts: machine2 user: …
101 ansible 

5
วิธีตั้งค่าตัวแปรสภาพแวดล้อม Linux ด้วย Ansible
สวัสดีฉันกำลังพยายามค้นหาวิธีตั้งค่าตัวแปรสภาพแวดล้อมด้วย Ansible สิ่งที่คำสั่งเชลล์ง่ายๆเช่นนี้: EXPORT LC_ALL=C พยายามเป็นคำสั่งเชลล์และได้รับข้อผิดพลาดในการลองใช้โมดูลสภาพแวดล้อมและไม่มีอะไรเกิดขึ้น ฉันขาดอะไรไป
101 linux  ansible 

5
Ansible Playbooks เทียบกับบทบาท
ตามเอกสาร Ansible Playbook คือ: ... พื้นฐานสำหรับการจัดการการกำหนดค่าที่เรียบง่ายและระบบการปรับใช้หลายเครื่องซึ่งแตกต่างจากที่มีอยู่แล้วและเป็นระบบที่เหมาะอย่างยิ่งกับการปรับใช้แอปพลิเคชันที่ซับซ้อน และตามเอกสารเดียวกันอีกครั้งบทบาท คือ: ... วิธีโหลดไฟล์ vars_files งานและตัวจัดการโดยอัตโนมัติตามโครงสร้างไฟล์ที่รู้จัก การจัดกลุ่มเนื้อหาตามบทบาทยังช่วยให้สามารถแบ่งปันบทบาทกับผู้ใช้รายอื่นได้ง่าย อย่างไรก็ตามความแตกต่างระหว่างสิ่งเหล่านี้และกรณีการใช้งานที่แตกต่างกันนั้นไม่ชัดเจนสำหรับฉันในทันที ตัวอย่างเช่นหากฉันกำหนดค่า/etc/ansible/hostsไฟล์ของฉันให้มีลักษณะดังนี้: [databases] mydb01.example.org mydb02.example.org [mail_servers] mymail01.example.org mymail_dr.example.org ... แล้วนี่ " [databases]" รายการ ... บทบาทอะไร? หรือชื่อไฟล์ YAML ของ playbook ที่ไหนสักแห่ง? หรืออย่างอื่น?!? หากมีใครสามารถอธิบายความแตกต่างของสิ่งเหล่านี้ให้ฉันเข้าใจเกี่ยวกับ Ansible ของฉันจะดีขึ้นมาก! Playbook vs Role vs [databases]และรายการที่คล้ายกันใน/etc/ansible/hosts ถ้า Playbooks ถูกกำหนดไว้ในไฟล์ YAML แล้ว Roles จะกำหนดไว้ที่ใด? นอกเหนือจากสิ่งansible.cfgมีชีวิตบนเซิร์ฟเวอร์ …

6
ฉันจะรับบันทึก / รายละเอียดของการดำเนินการโมดูล Ansible-playbook ได้อย่างไร
สมมติว่าฉันดำเนินการต่อไปนี้ $ cat test.sh #!/bin/bash echo Hello World exit 0 $ cat Hello.yml --- - hosts: MyTestHost tasks: - name: Hello yourself script: test.sh $ ansible-playbook Hello.yml PLAY [MyTestHost] **************************************************************** GATHERING FACTS *************************************************************** ok: [MyTestHost] TASK: [Hello yourself] ******************************************************** ok: [MyTestHost] PLAY RECAP ******************************************************************** MyTestHost : ok=2 changed=0 unreachable=0 failed=0 …
96 logging  ansible 

4
ตอบได้: ตั้งค่าตัวแปรเป็นเนื้อหาไฟล์
ฉันใช้โมดูล ec2 กับansible-playbookฉันต้องการตั้งค่าตัวแปรเป็นเนื้อหาของไฟล์ นี่คือวิธีที่ฉันกำลังทำอยู่ Var กับชื่อไฟล์ งานเชลล์ไปcatยังไฟล์ ใช้ผลลัพธ์ของการcatส่งผ่านไปยังโมดูล ec2 ตัวอย่างเนื้อหาของ playbook ของฉัน vars: amazon_linux_ami: "ami-fb8e9292" user_data_file: "base-ami-userdata.sh" tasks: - name: user_data_contents shell: cat {{ user_data_file }} register: user_data_action - name: launch ec2-instance local_action: ... user_data: "{{ user_data_action.stdout }}" ฉันคิดว่ามีวิธีที่ง่ายกว่านี้มาก แต่ฉันไม่พบขณะค้นหาเอกสาร Ansible

8
จะใช้โมดูลเทมเพลตกับชุดตัวแปรต่างๆได้อย่างไร
กรณีการใช้งานของฉันมีดังต่อไปนี้: ฉันมีไฟล์เทมเพลตและฉันต้องการสร้างไฟล์ 2 ไฟล์ที่แตกต่างกันจากเทมเพลตนั้นโดยตัวแปรจะถูกเติมด้วยชุดตัวแปรที่แตกต่างกันสำหรับแต่ละไฟล์ ตัวอย่างเช่นสมมติว่าฉันต้องการเทมเพลตไฟล์ที่มีบรรทัด: mkdir -p {{myTemplateVariable}} ฉันต้องการหาวิธีที่เหมาะสมในการทำให้ตัวแปรนี้เต็มไปด้วย "File1" และ "File2" สิ่งที่ต้องการ : - name: template test 1 template: src=myTemplateFile dest=result1 - name: template test 2 template: src=myTemplateFile dest=result2 โดยที่ฉันสามารถระบุสำหรับเทมเพลตแรกที่ตัวแปรที่จะใช้คือ a = "File1" และสำหรับตัวที่สอง b = "File2"

7
ตอบได้: ฉันสามารถเรียกใช้บทบาทจากบรรทัดคำสั่งได้หรือไม่
สมมติว่าฉันมีบทบาทที่เรียกว่า "apache" ตอนนี้ฉันต้องการเรียกใช้บทบาทนั้นบนโฮสต์ 192.168.0.10 จากบรรทัดคำสั่งจากโฮสต์ Ansible ansible-playbook -i "192.168.0.10" --role "path to role" มีวิธีทำไหม?

6
Ansible: stdout ของคำสั่ง Store ในตัวแปรใหม่?
ภายใน playbook ของฉันฉันต้องการสร้างตัวแปรที่ถือเอาท์พุทของคำสั่งภายนอก หลังจากนั้นฉันต้องการใช้ประโยชน์จากตัวแปรนั้นในเทมเพลตสองสามรายการ นี่คือส่วนที่เกี่ยวข้องของ Playbook: tasks: - name: Create variable from command command: "echo Hello" register: command_output - debug: msg="{{command_output.stdout}}" - name: Copy test service template: src=../templates/test.service.j2 dest=/tmp/test.service - name: Enable test service shell: systemctl enable /tmp/test.service - name: Start test service shell: systemctl start test.service และสมมติว่านี่คือเทมเพลตของฉัน: [Unit] Description=MyApp …

10
แหล่งที่มา. bashrc ด้วย Ansible ไม่ได้
ฉันสามารถ ssh ไปยังโฮสต์ระยะไกลและทำsource /home/username/.bashrc- ทุกอย่างทำงานได้ดี อย่างไรก็ตามถ้าฉันทำ: - name: source bashrc sudo: no action: command source /home/username/.bashrc ฉันเข้าใจ: failed: [hostname] => {"cmd": ["source", "/home/username/.bashrc"], "failed": true, "rc": 2} msg: [Errno 2] No such file or directory ฉันไม่รู้ว่าฉันทำอะไรผิด ...
85 ansible 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.