Điểm:1

Lỗi ném chuỗi mã hóa nội tuyến Ansible-vault

lá cờ cn

Tôi đang gặp sự cố với các chuỗi được mã hóa nội tuyến trong Ansible/Ansible-vault.

Tôi đang lưu trữ mật khẩu Ansible Vault trong một tệp và có tệp cấu hình cục bộ khai báo mật khẩu đó:

[mặc định]
vault_password_file = ./my_vault_pass

Vì tôi đã xác định vault_password_file nên tôi tạo biến được mã hóa của mình bằng lệnh sau:

ansible-vault mã hóa_string --stdin-name 'tên người dùng'

Khi được nhắc, tôi nhập giá trị tôi muốn mã hóa và CTRL-D hai lần mà không cần nhấn enter. Sau đó, tôi lấy đầu ra của lệnh đó và thay thế định nghĩa biến bằng nó.

Tệp nhiệm vụ/main.yml của tôi kết thúc như thế này [đã xử lý lại]

---
- tên: Sao chép mẫu
  vmware_guest:
    tên máy chủ: 1.2.3.4
    tên người dùng: !vault |
          $ANSIBLE_VAULT;1.1;AES256
          63353665383934386565306639633734366666303465306364323761323938383433643133313933
          3939356663626465303465646265653731626463386261610a306361343436613030336639303533
          64613337326332353933313931303537653833623863343435623730316266643636373831363937
          6231643937376665620a326465343239643237366465353965376532336365346631653466623038
          35636135303233623733306632333833663535646230393335303261633535353636
    mật khẩu: 'my_password'
    xác thực_certs: Sai
    tên: testvm_2
    mẫu: 'tên mẫu'
    trung tâm dữ liệu: DC1
    thư mục: /Kiểm tra
    trạng thái: poweredon
    wait_for_ip_address: có

Tuy nhiên, với tên tài khoản: thay đổi là thay đổi duy nhất, bây giờ tôi gặp lỗi:

CHƠI [máy chủ cục bộ] ************************************************ *************************************************** ***************

NHIỆM VỤ [Thu thập thông tin] ********************************************* *************************************************** ********
được rồi: [máy chủ cục bộ]

NHIỆM VỤ [chung : Sao chép mẫu] ****************************************** ***************************************************
gây tử vong: [localhost]: KHÔNG THÀNH CÔNG! => {"thông điệp": "Không thể chuyển các tùy chọn cho mô-đun, chúng phải có thể tuần tự hóa JSON: Đối tượng thuộc loại AnsibleVaultEncryptedUnicode không thể tuần tự hóa JSON"}

TÓM TẮT CHƠI *************************************************** *************************************************** ******************
localhost : ok=1 thay đổi=0 không truy cập được=0 thất bại=1 bỏ qua=0 giải cứu=0 bỏ qua=0   
Điểm:0
lá cờ cn

Tôi dường như đã tìm thấy giải pháp cho câu hỏi của riêng mình:

Có vẻ như Ansible không thể mã hóa các biến mô-đun. Một giải pháp thay thế cho vấn đề này là chuyển biến đó sang tệp vars.yml bằng cách sử dụng cú pháp Jinja được mô tả trong Mẹo & Thủ thuật.

I E.

nhiệm vụ.yml

    mật khẩu: '{{ vault_password }}'

Và sau đó trong vars.yml (Tôi đã sử dụng vars/main.yml vì tôi đang sử dụng Thực hành tốt nhất để bố trí thư mục.

vault_password: !vault |
          $ANSIBLE_VAULT;1.1;AES256
          30373438353463646433363433616631616434616237636432653530353330636236666332363661
          6565323338643139623737646431333332383432613962640a636537306139646539303762646166
          61363435643137363738656235613330663131613333656538323035666261336334383138663965
          6365356130346537300a363961623261653030363433353737386666306131336631343633396262
          6565
Zeitounator avatar
lá cờ fr
`Dường như Ansible không thể mã hóa các biến mô-đun`
MattB avatar
lá cờ cn
@Zeitounator Thật thú vị, tôi đã kết thúc vấn đề của mình bằng câu trả lời sau khi trò chuyện trên #ansible Freenode channle. Vì giải pháp thay thế có vẻ hiệu quả nên tôi không theo đuổi vấn đề này nữa nhưng tôi sẽ ghi nhớ điều đó, cảm ơn.

Đă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.