saltstack學習筆記4-Grains

來源:互聯網
上載者:User

標籤:saltstack

Grains是saltstack記錄minion靜態資訊的一個組件,我們可以簡單地理解為Grains裡面記錄著每台Minion的一些常用屬性,比如CPU、記憶體、磁碟、網路資訊等,我們可以通過grains.items查看某台Minion的所有Grains資訊,Minions的Grains資訊是Minions啟動的時候採集彙報給Master的,在實際應用環境中我們需要根據自己的業務需求去自訂一些Grains。


定義minion有三種方式:

minion端通過設定檔定義

minion端通過模組定義

Python通過模板定義


Grains簡單的命令用法

salt ‘minion1‘ sys.list_functions grains

minion1:

    - grains.append

    - grains.delval

    - grains.filter_by

    - grains.get

    - grains.get_or_set_hash

    - grains.has_value

    - grains.item

    - grains.items

    - grains.ls

    - grains.remove

    - grains.setval

    - grains.setvals

grains有如上方法,詳細用法可以通過命令查看

salt ‘minion1‘ sys.doc grains

-----------------------------------------------------------------------

minion通過設定檔定義,這種方法很簡單就是修改minion的設定檔

vim /etc/salt/minion,注釋部分有這麼一段

#grains:

#  roles:

#    - webserver

#    - memcache

#  deployment: datacenter4

#  cabinet: 13

#  cab_u: 14-15


為了統一控制grains可以將資訊集中寫到檔案中

grains可以按照這種YAML格式進行修改和定義

/etc/salt/grains


grains:

  roles:

    - webserver

    - memcache

  deployment: datacenter4

  cabinet: 13

  cab_u: 14-15

重啟minion使之生效

salt ‘minion1‘ grains.item grains:roles

minion1:

    ----------

    grains:roles:

        - webserver

        - memcache

--------------------------------------------------------------------------------

通過Grains模組定義Grains


salt ‘minion1‘ grains.append saltbook ‘verycool‘

minion1:

    ----------

    saltbook:

        - verycool

[[email protected] apache]# salt ‘minion1‘ grains.item saltbook

minion1:

    ----------

    saltbook:

        - verycool


可以使用grains.setvals同時設定多對Grains資訊

salt ‘minion1‘ grains.setvals "{‘salt‘:‘good‘,‘book‘:‘cool‘}"

minion1:

    ----------

    book:

        cool

    salt:

        good

[[email protected] apache]# salt ‘minion1‘ grains.item salt

minion1:

    ----------

    salt:

        good

[[email protected] apache]# salt ‘minion1‘ grains.item book

minion1:

    ----------

    book:

        cool

當然也支援刪除Grains資訊,更多用法可以通過sys.doc grains命令查詢

----------------------------------------------------------------------------

使用Python指令碼方式添加grains方法我們後續再說

本文出自 “八英裡” 部落格,謝絕轉載!

saltstack學習筆記4-Grains

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.