สร้างตัวแปรที่แสดงรายการคอนเทนเนอร์สำหรับทุกโฮสต์
host_vars/host1.yml
ตู้คอนเทนเนอร์:
- ชื่อ: ตัวแทน1
รูปภาพ: docker-registry/container.image:latest
- ชื่อ: ตัวแทน2
รูปภาพ: docker-registry/container.image:latest
- ชื่อ: ตัวแทน3
รูปภาพ: docker-registry/container.image:latest
เช่นเดียวกับโฮสต์อื่น ๆ
จากนั้นใน playbook คุณสามารถทำได้ วนซ้ำรายการนั้น:
โฮสต์: host1,host2,host3
งาน:
- ชื่อ: ปริมาณนักเทียบท่า
คำสั่ง: "ปริมาณนักเทียบท่าสร้าง agent_{{ item.name }}"
วนซ้ำ: {{ ตู้คอนเทนเนอร์ }}
- ชื่อ: เรียกใช้นักเทียบท่า
คำสั่ง: "docker run -d -it --privileged --name agent-{{ item.name }} -e AGENT_NAME=\"{{ item.name }}\" --network network1 --cpus=8 -- memory=32g --ipc=host -e TZ=CET {{ item.image }}"
วนซ้ำ: "{{ คอนเทนเนอร์ }}"
หรือใช้ โมดูลที่เหมาะสม:
โฮสต์: host1,host2,host3
งาน:
- ชื่อ: ปริมาณนักเทียบท่า
นักเทียบท่า_volume:
ชื่อ: "agent_{{ item.name }}"
วนซ้ำ: {{ ตู้คอนเทนเนอร์ }}
- ชื่อ: เรียกใช้นักเทียบท่า
นักเทียบท่า_คอนเทนเนอร์:
ชื่อ: "ตัวแทน-{{ item.name }}"
ภาพ: "{{ item.image }}"
สิทธิพิเศษ: ใช่
ปริมาณ:
- "agent_{{ item.name }}"
วนซ้ำ: "{{ คอนเทนเนอร์ }}"