簡體   English   中英

使用 consul_kv ansible 模塊在 consul 中加載鍵值對

[英]load key value pairs in consul using consul_kv ansible module

我們在 json 格式的文件中有鍵值對。

{
  "app1":
 [
     {"key": "key1","value": "val1"},
     {"key": "key2","value": "val2"}


 ],
  "app2":
 [
      {"key": "key1","value": "val1"},
     {"key": "key2","value": "val2"}

 ],
  "app3":
 [
     {"key": "key1","value": "val1"},
     {"key": "key2","value": "val2"}

 ]
}

我想將這些值放在 consul 集群中。 這是我正在嘗試的

- debug: msg='key contains {{key}}'
  with_consul_kv:
  - 'config/app1/'
  register: keys

 - name: add a kv pair to the kv store
   consul_kv: key=somekey value=somevalue
   register: new_key

當您不依賴於您的 JSON 結構時,您可以使用如下格式:

myitems:
 - site:
      - {"key": "abcUrl","value": "http://prod.abc.url"}
      - {"key": "user.url","value": "http://prod.abc.login"}
      - {"key": "security.logout.url","value": "http://prod.abc.logout"}
 - site:
      - {"key": "abcUrl","value": "http://prod.abc.url"}
      - {"key": "user.url","value": "http://prod.abc.login"}
      - {"key": "security.logout.url","value": "http://prod.abc.logout"}
 - site:
      - {"key": "abcUrl","value": "http://prod.abc.url"}
      - {"key": "user.url","value": "http://prod.abc.login"}
      - {"key": "security.logout.url","value": "http://prod.abc.logout"}
 - site:
      - {"key": "abcUrl","value": "http://prod.abc.url"}
      - {"key": "user.url","value": "http://prod.abc.login"}
      - {"key": "security.logout.url","value": "http://prod.abc.logout"}

(如果你需要 dc[1-4] 里面的東西,把它寫在鍵/級別上。)

使用這種格式,您可以像這樣提取鍵/值:

- name: remove a key from the store
  debug:
    msg: "key is {{ item.1.key }} and the value is {{ item.1.value }}"
  with_subelements:
    - "{{ myitems }}"
    - site

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM