1、什么是Grains
成都創(chuàng)新互聯(lián)公司成立與2013年,是專業(yè)互聯(lián)網技術服務公司,擁有項目做網站、網站設計網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元門源做網站,已為上家服務,為門源各地企業(yè)和個人服務,聯(lián)系電話:028-86922220Grains是SaltStack的一個組件,存放著minion啟動時收集的底層系統(tǒng)的靜態(tài)信息。Grains是存儲在minion端的,當minion啟動時,會進行Grains的采集工作,然后保存下來。在以后的生命周期(再次重啟minion,會重新收集)是不會發(fā)生變化的,所以是靜態(tài)數據。Grains中包含諸如運行的內核版本、操作系統(tǒng)、CPU個數、內存、物理設備型號等信息。
數據采集更新方式:Minion啟動時收集,也可以使用saltutil.sync_grains
2、Grains的應用場景
Grains可以在state系統(tǒng)中使用,用于配置管理模塊。
Grains可以target中使用,在用來匹配Minion,比如匹配操作系統(tǒng),使用-G選項。
Grains可以用于信息查詢,Grains保存著收集到的客戶端的詳細信息。
3、Grains常用操作
a、列出Minion上所有可用的grains的名稱
[root@master ~]# salt '*' grains.ls node02.saltstack.com: - SSDs - biosreleasedate - biosversion - cpu_flags - cpu_model - cpuarch - domain - fqdn - fqdn_ip4 - fqdn_ip6 - gpus - host - hwaddr_interfaces - id - init - ip4_interfaces - ip6_interfaces - ip_interfaces - ipv4 - ipv6 - kernel - kernelrelease - locale_info - localhost - lsb_distrib_codename - lsb_distrib_id - lsb_distrib_release - machine_id - manufacturer - master - mdadm - mem_total - nodename - num_cpus - num_gpus - os - os_family - osarch - oscodename - osfinger - osfullname - osmajorrelease - osrelease - osrelease_info - path - productname - ps - pythonexecutable - pythonpath - pythonversion - saltpath - saltversion - saltversioninfo - selinux - serialnumber - server_id - shell - virtual - zmqversion node01.saltstack.com: - SSDs - biosreleasedate - biosversion - cpu_flags - cpu_model - cpuarch - domain - fqdn - fqdn_ip4 - fqdn_ip6 - gpus - host - hwaddr_interfaces - id - init - ip4_interfaces - ip6_interfaces - ip_interfaces - ipv4 - ipv6 - kernel - kernelrelease - locale_info - localhost - lsb_distrib_codename - lsb_distrib_id - lsb_distrib_release - machine_id - manufacturer - master - mdadm - mem_total - nodename - num_cpus - num_gpus - os - os_family - osarch - oscodename - osfinger - osfullname - osmajorrelease - osrelease - osrelease_info - path - productname - ps - pythonexecutable - pythonpath - pythonversion - saltpath - saltversion - saltversioninfo - selinux - serialnumber - server_id - shell - virtual - zmqversion
b、列出Minion上所有grains的的名稱及內容
[root@master ~]# salt 'node01.saltstack.com' grains.items node01.saltstack.com: ---------- SSDs: biosreleasedate: 07/02/2015 biosversion: 6.00 cpu_flags: - fpu - vme - de - pse - tsc - msr - pae - mce - cx8 - apic - sep - mtrr - pge - mca - cmov - pat - pse36 - clflush - dts - mmx - fxsr - sse - sse2 - ss - syscall - nx - rdtscp - lm - constant_tsc - up - arch_perfmon - pebs - bts - xtopology - tsc_reliable - nonstop_tsc - aperfmperf - unfair_spinlock - pni - pclmulqdq - ssse3 - cx16 - pcid - sse4_1 - sse4_2 - x2apic - popcnt - tsc_deadline_timer - aes - xsave - avx - f16c - rdrand - hypervisor - lahf_lm - ida - arat - epb - pln - pts - dts - fsgsbase - smep cpu_model: Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz cpuarch: x86_64 domain: saltstack.com fqdn: node01.saltstack.com fqdn_ip4: - 10.10.10.141 fqdn_ip6: gpus: |_ ---------- model: SVGA II Adapter vendor: unknown host: node01 hwaddr_interfaces: ---------- eth0: 00:0c:29:98:68:91 lo: 00:00:00:00:00:00 pan0: f6:aa:1f:cb:87:f0 id: node01.saltstack.com init: upstart ip4_interfaces: ---------- eth0: - 10.10.10.141 lo: - 127.0.0.1 pan0: ip6_interfaces: ---------- eth0: - fe80::20c:29ff:fe98:6891 lo: - ::1 pan0: ip_interfaces: ---------- eth0: - 10.10.10.141 - fe80::20c:29ff:fe98:6891 lo: - 127.0.0.1 - ::1 pan0: ipv4: - 10.10.10.141 - 127.0.0.1 ipv6: - ::1 - fe80::20c:29ff:fe98:6891 kernel: Linux kernelrelease: 2.6.32-573.el6.x86_64 locale_info: ---------- defaultencoding: UTF8 defaultlanguage: en_US detectedencoding: UTF-8 localhost: node01.saltstack.com lsb_distrib_codename: Final lsb_distrib_id: CentOS lsb_distrib_release: 6.7 machine_id: 5bd0d598c3ad4f78b38c6e7600000020 manufacturer: VMware, Inc. master: master.saltstack.com mdadm: mem_total: 1863 nodename: node01.saltstack.com num_cpus: 1 num_gpus: 1 os: CentOS os_family: RedHat osarch: x86_64 oscodename: Final osfinger: CentOS-6 osfullname: CentOS osmajorrelease: 6 osrelease: 6.7 osrelease_info: - 6 - 7 path: /sbin:/usr/sbin:/bin:/usr/bin productname: VMware Virtual Platform ps: ps -efH pythonexecutable: /usr/bin/python2.6 pythonpath: - /usr/bin - /usr/lib64/python26.zip - /usr/lib64/python2.6 - /usr/lib64/python2.6/plat-linux2 - /usr/lib64/python2.6/lib-tk - /usr/lib64/python2.6/lib-old - /usr/lib64/python2.6/lib-dynload - /usr/lib64/python2.6/site-packages - /usr/lib64/python2.6/site-packages/PIL - /usr/lib64/python2.6/site-packages/gst-0.10 - /usr/lib64/python2.6/site-packages/gtk-2.0 - /usr/lib64/python2.6/site-packages/webkit-1.0 - /usr/lib/python2.6/site-packages - /usr/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg-info pythonversion: - 2 - 6 - 6 - final - 0 saltpath: /usr/lib/python2.6/site-packages/salt saltversion: 2015.5.10 saltversioninfo: - 2015 - 5 - 10 - 0 selinux: ---------- enabled: False enforced: Disabled serialnumber: VMware-56 4d e6 9b 20 1f b4 60-77 5d 03 1d 1d 98 68 91 server_id: 1356238538 shell: /bin/sh virtual: VMware zmqversion: 3.2.5
c、查看虛擬化的類型
[root@master ~]# salt '*' grains.get virtual node01.saltstack.com: VMware node02.saltstack.com: VMware
d、查詢eth0所有IP地址
[root@master ~]# salt '*' grains.get ip_interfaces node01.saltstack.com: ---------- eth0: - 10.10.10.141 - fe80::20c:29ff:fe98:6891 lo: - 127.0.0.1 - ::1 pan0: node02.saltstack.com: ---------- eth0: - 10.10.10.142 - fe80::20c:29ff:fead:83d lo: - 127.0.0.1 - ::1 pan0:
e、查詢eth0所有IP地址
[root@master ~]# salt '*' grains.get ip_interfaces:eth0 node02.saltstack.com: - 10.10.10.142 - fe80::20c:29ff:fead:83d node01.saltstack.com: - 10.10.10.141 - fe80::20c:29ff:fe98:6891
4、自定義grains
a)在minion上的/etc/salt/minion直接配置grains
[root@node01 ~]# vim /etc/salt/minion grains: roles: IT dept: system [root@master ~]# salt -G 'roles:IT' test.ping node01.saltstack.com: True [root@master ~]# salt -G 'dept:system' test.ping node01.saltstack.com: True
b)通過/etc/salt/grains進行定義
[root@node01 ~]# vim /etc/salt/grains virtual: openstack [root@node01 ~]# /etc/init.d/salt-minion restart Stopping salt-minion daemon: [確定] Starting salt-minion daemon: [確定] [root@node02 ~]# cat /etc/salt/grains virtual: xen [root@node02 ~]# /etc/init.d/salt-minion restart Stopping salt-minion daemon: [確定] Starting salt-minion daemon: [確定] [root@master ~]# salt -G 'virtual:xen' test.ping node02.saltstack.com: True
在minion端添加一個mysqlversion的信息
[root@node01 ~]# cat /etc/salt/grains virtual: openstack mysqlversion: 5.5 測試,發(fā)現(xiàn)存在報錯信息 [root@master ~]# salt -G 'mysqlversion:5.5' test.ping No minions matched the target. No command was sent, no jid was assigned. ERROR: No return received 使用saltutil.sync_grains進行刷新測試 [root@master ~]# salt '*' saltutil.sync_grains node02.saltstack.com: node01.saltstack.com: [root@master ~]# salt -G 'mysqlversion:5.5' test.ping node01.saltstack.com: True
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
網站名稱:saltstackgrains-創(chuàng)新互聯(lián)
本文網址:http://muchs.cn/article4/cddhoe.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供自適應網站、微信公眾號、標簽優(yōu)化、網站導航、營銷型網站建設、App設計
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容