Điểm:0

Ansible - cách lặp qua các dịch vụ có trong tệp kiểm kê

lá cờ vn

winapp.example.comXin chào, tôi có tệp kiểm kê chứa cả máy chủ ứng dụng windows, máy chủ web và chỉ các dịch vụ tương ứng cần dừng hoặc khởi động lại. Yêu cầu chỉ dừng các dịch vụ cụ thể đối với nhóm máy chủ. Ví dụ: máy chủ ứng dụng nên sử dụng dịch vụ dưới máy chủ ứng dụng: vars

Đánh giá cao sự giúp đỡ của bạn !!!

Tập tin Inventory\hosts.ini chứa

[máy chủ ứng dụng]
winapp1.example.com
winapp2.example.com

[máy chủ ứng dụng: vars]
  dịch vụ:
    - Dịch vụ quy trình làm việc
    - Dịch vụ cấu hình
    - Dịch vụ đồng bộ hóa
    - Dịch vụ ParentConfiguration

[máy chủ nô lệ]
winlvapp1.example.com
winlvapp2.example.com

[máy chủ ứng dụng nô lệ: vars]
  dịch vụ:
    - Dịch vụ đồng bộ hóa
    - Dịch vụ ParentConfiguration

[máy chủ web] 
webser1.ent.wfb.bank.corp

[máy chủ web: vars]
  dịch vụ:
    - Dịch vụ quy trình làm việc
    - Dịch vụ đồng bộ hóa
    - Dịch vụ ParentConfiguration

[tất cả máy chủ:trẻ em]
máy chủ ứng dụng
máy chủ ứng dụng nô lệ
máy chủ web

dịch vụ_stop.yml

---
- tên: SHRP dừng dịch vụ Demo
  máy chủ: tất cả
  thu thập_facts: sai

  nhiệm vụ:
  - tên: Tạm dừng dịch vụ
    win_service:
      tên: "{{mục}}"
      trạng thái: đã dừng
    vòng: 
      - "{{ dịch vụ }}"
Điểm:1
lá cờ cn

Bạn đã có một giải pháp. Xác định một biến có cùng tên, nhưng nhóm các giá trị cụ thể. Sử dụng một tên biến đó trong các vở kịch có thể chạy trên cả hai nhóm.

Một số cú pháp tồn tại để nhận các giá trị cụ thể của nhóm.

  • Xác định một biến trong khoảng không quảng cáo cho một nhóm
  • Trong các tệp group_vars bên cạnh playbook hoặc kho.
  • Một biểu thức tra cứu hoặc chính tả được lập chỉ mục theo tên nhóm.

Của bạn là một ví dụ về cái đầu tiên.

lá cờ vn
Tôi nghĩ rằng tôi đã cung cấp một tên biến là "dịch vụ" để làm cho nó trở nên phổ biến giữa các nhóm. Với các cài đặt ở trên, tôi gặp lỗi khi phát được thực thi do "dịch vụ" không được xác định. Đánh giá cao sự giúp đỡ của bạn !!!
John Mahowald avatar
lá cờ cn
Vui lòng chỉnh sửa câu hỏi của bạn để thêm lỗi.
lá cờ vn
Tôi có cùng một mã được đề cập ở trên và Khi tôi chạy playbook, tôi gặp lỗi sau. { "msg": "Dữ liệu không hợp lệ được chuyển đến 'vòng lặp', nó yêu cầu một danh sách, thay vào đó, hãy lấy cái này: dịch vụ. Gợi ý: Nếu bạn đã chuyển một danh sách/dict của chỉ một phần tử, hãy thử thêm wishlist=True vào yêu cầu tra cứu của bạn hoặc sử dụng q /truy vấn thay vì tra cứu.", "_ansible_no_log": không }

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.