日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SaltStack 学习笔记 - 第六篇: 详解Pillar

發(fā)布時間:2024/4/13 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SaltStack 学习笔记 - 第六篇: 详解Pillar 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.


什么是Pillar?

Pillar是在salt 0.9.8版本后才添加的功能組件。它跟grains的結(jié)構(gòu)一樣,也是一個字典格式,數(shù)據(jù)通過key/value的格式進行存儲。在Salt的設(shè)計中,Pillar使用獨立的加密sessiion,所以Pillar可以用來傳遞敏感的數(shù)據(jù),例如ssh-key,加密證書等。


Pillar 是什么樣子?


###??一臺centos?6.5的?dell?r420服務(wù)器的pillar [root@yw_home?_grains]#?salt?192.168.0.100?pillar.data 192.168.0.100:----------master:----------auth_mode:1auto_accept:Falsecachedir:/var/cache/salt/masterclient_acl:----------client_acl_blacklist:----------cluster_masters:cluster_mode:paranoidconf_file:/etc/salt/masterconfig_dir:/etc/saltcython_enable:Falsedaemon:Truedefault_include:master.d/*.confenable_gpu_grains:Falseenforce_mine_cache:Falseenumerate_proxy_minions:Falseenvironment:Noneext_job_cache:ext_pillar:extension_modules:/var/cache/salt/master/extmodsexternal_auth:----------external_nodes:failhard:Falsefile_buffer_size:1048576file_client:localfile_ignore_glob:Nonefile_ignore_regex:Nonefile_recv:Falsefile_roots:----------base:-?/srv/saltfileserver_backend:-?rootsfileserver_followsymlinks:Truefileserver_ignoresymlinks:Falsefileserver_limit_traversal:Falsegather_job_timeout:2gitfs_base:mastergitfs_remotes:gitfs_root:hash_type:md5hgfs_base:defaulthgfs_branch_method:brancheshgfs_remotes:hgfs_root:id:192.168.0.100interface:0.0.0.0ipv6:Falsejinja_lstrip_blocks:Falsejinja_trim_blocks:Falsejob_cache:Truekeep_jobs:24key_logfile:/var/log/salt/keykeysize:4096log_datefmt:%H:%M:%Slog_datefmt_logfile:%Y-%m-%d?%H:%M:%Slog_file:/data/logs/salt_master.loglog_fmt_console:[%(levelname)-8s]?%(message)slog_fmt_logfile:%(asctime)s,%(msecs)03.0f?[%(name)-17s][%(levelname)-8s]?%(message)slog_granular_levels:----------log_level:warningloop_interval:60master_ext_job_cache:master_roots:----------base:-?/srv/salt-mastermaster_tops:----------max_open_files:100000minion_data_cache:Truenodegroups:----------group_all:*open_mode:Falseorder_masters:Falseoutputter_dirs:peer:----------permissive_pki_access:Falsepidfile:/var/run/salt-master.pidpillar_opts:Truepillar_roots:----------base:-?/srv/salt/pillarpillar_version:2pki_dir:/etc/salt/pki/masterpub_hwm:1000publish_port:4505publish_session:86400range_server:range:80reactor:renderer:yaml_jinjaret_port:4506root_dir:/runner_dirs:salt_transport:zeromqsaltversion:2014.1.0search:search_index_interval:3600serial:msgpacksign_pub_messages:Falsesock_dir:/var/run/salt/masterstate_auto_order:Truestate_events:Truestate_output:fullstate_top:salt://top.slsstate_verbose:Truesvnfs_remotes:svnfs_root:syndic_master:syndic_master_port:4506syndic_wait:1timeout:5token_dir:/var/cache/salt/master/tokenstoken_expire:43200user:rootverify_env:Truewin_gitrepos:-?https://github.com/saltstack/salt-winrepo.gitwin_repo:/srv/salt/win/repowin_repo_mastercachefile:/srv/salt/win/repo/winrepo.pworker_threads:10

pillar的數(shù)據(jù)是跟特定的minion關(guān)聯(lián)的,可以用來傳遞minion自己的信息。管理員也可以自定義自己的pillar來對minion進行管理。

默認(rèn)情況下,master配置文件中的所有數(shù)據(jù)都添加到Pillar中,且對所有minion可用。如果要禁用這一默認(rèn)值,可以在master配置文件中添加如下數(shù)據(jù),重啟服務(wù)后生效:

pillar_opts:?False


自定義Pillar數(shù)據(jù) ?

在Master的SLS文件中定義

假設(shè)使用默認(rèn)pillar_roots配置 /srv/pillar

vim?/srv/pillar/top.sls ##?編輯pillar?的?top.sls?文件添加下面內(nèi)容 base?:?'*':-?data-?git dev??:'os:CentOs':-?git????vim?/srv/pillar/data/init.sls ##?添加下面內(nèi)容 roles:webservervim??/srv/pillar/git.sls ##?添加下面內(nèi)容 {%?if?grains['os']?==?'CentOs'?%}? git:?git {%?elif?grains['os']?==?'Debian'?%}? git:?git-core {%?endif?%}


pillar 更sls一樣擁有自己的top.sls文件,通過top.sls文件作為入口,組織其它的pillar文件。

data定義了一個roles的值,如果不使用詳細(xì)的data.init聲明,則默認(rèn)會使用data下的init.sls作為聲明文件,如果同時存在data.sls跟data/init.sls文件,則會優(yōu)先使用data.sls文件來訪問。

git是使用grains的系統(tǒng)類型來進行不同的pillar定義。


在master上修改Pilla文件后,需要用以下命令刷新minion上的數(shù)據(jù):

salt?'192.168.0.100'?saltutil.refresh_pillar


怎么使用Pillar ?

  • Targeting :

? ? ? Salt使用-I 選項來使用

salt?-I?'roles:webserver'?test.ping
  • SLS文件中使用

需要根據(jù)系統(tǒng)環(huán)境安裝一個git軟件

vim?/srv/salt/git_env.sls ##?添加下面內(nèi)容 git?:?pkg.installed:-?name?:?{{pillar['git']}}##?或是添加成下面樣式,設(shè)置默認(rèn)的pillar值 git:pkg.installed:-?name:?{{?salt['pillar.get']('git',?'git')?}}

?

參考文章:?

http://www.ituring.com.cn/article/42398

http://docs.saltstack.cn/topics/pillar/index.html











轉(zhuǎn)載于:https://blog.51cto.com/arlen/1424515

總結(jié)

以上是生活随笔為你收集整理的SaltStack 学习笔记 - 第六篇: 详解Pillar的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。