saltstack的探索-使用pillar来改进vim的部署

[[email protected] srv]# pwd
/srv
[[email protected] srv]# ls
pillar  salt
[[email protected] srv]# cat pillar/
data.sls  pkg/      top.sls   users/    
[[email protected] srv]# cat pillar/pkg/init.sls 
pkgs:
  {% if grains[‘os_family‘] == ‘RedHat‘ %}
  vim: vim-enhanced
  {% elif grains[‘os_family‘] == ‘Debian‘ %}
  vim: vim
  {% elif grains[‘os‘] == ‘Arch‘ %}
  vim: vim
  {% endif %}

[[email protected] srv]# cat pillar/top.sls 
base:
  ‘*‘:
    - data
    - users
    - pkg
[[email protected] srv]# cat salt/edit/vim.sls 
vim:
    pkg:
      - installed
      - name: {{ pillar[‘pkgs‘][‘vim‘] }}

/root/.vimrc:
    file.managed:
        - source: salt://edit/conf/vimrc
        - mode: 644
        - uesr: root
        - group: root
        - require:
          - pkg: vim

          
执行:
[[email protected] srv]# salt ‘svr205-2‘ state.sls edit.vim
svr205-2:
----------
          ID: vim
    Function: pkg.installed
        Name: vim-enhanced
      Result: True
     Comment: Package vim-enhanced is already installed.
     Started: 18:05:24.707048
    Duration: 1808.3 ms
     Changes:   
----------
          ID: /root/.vimrc
    Function: file.managed
      Result: True
     Comment: File /root/.vimrc is in the correct state
     Started: 18:05:26.515743
    Duration: 153.787 ms
     Changes:   

Summary
------------
Succeeded: 2
Failed:    0
------------
Total states run:     2
时间: 2025-01-06 06:53:37

saltstack的探索-使用pillar来改进vim的部署的相关文章

SaltStack实战之数据系统-Pillar

SaltStack实战之数据系统-Pillar 学习 SaltStack SaltStack实战之数据系统-Pillar 1. Pillar简介和应用场景 2. Pillar应用示例 1. Pillar简介和应用场景 Pillar是Salt用来分发全局变量到所有minions的一个接口.Pillar data的管理类似于Salt State Tree. Salt 0.9.8版本增加了pillar(动态数据) 存储位置: 存储在master端,存放需要提供给minion的信息. 应用场景: 敏感信

改进Vim体验:在插入模式下移动光标,我不要用方向键!alt快捷键使用技巧!

改进Vim体验:在插入模式下移动光标,我不要用方向键!alt快捷键使用技巧! 大家都知道,我们在插入模式下编辑代码的时候 若想写完这一部分后,移动到邻近的一部分,如下一个单词的后面,是很复杂的 '\eea'?还是'方向键*n'?虽然这也没什么复杂的,特别是参照我前面一篇文档,\e(esc)只需要按下alt-; 但有没有更方便的方法呢?我要告诉大家,有,插入模式下的alt快捷键重映射! 如下设置按键码 ;设置按键码判断时间;这个时间和组合键判断时间不同哟!只需要设置一次 :set ttimeout

saltstack数据系统之Grains,pillar

Grains grains 负责采集客户端(minion端)一些基本信息 ,这个也完全可以自定义,可以在客户端自定义,然后自动汇报上来,也可以从服务器端定义然后推下去,采集完后再汇报上来(重启才收集),也可以使用saltutil.sync_grains进行刷新 1.grains之收集信息 [[email protected] salt]# salt 'node1*' grains.ls [[email protected] salt]# salt 'node1' grains.items查看收集

saltstack的探索-安装vim、nginx服务和配置、自定义脚本

1. 配置minion 首先,移除原来的测试minion [[email protected] bin]# salt-key -d test230 The following keys are going to be deleted: Accepted Keys: test230 Proceed? [N/y] y Key for minion test230 deleted. 新增minion: [svr205-2] [[email protected] ~]# yum install salt

saltstack的探索-salt指定目标和分组

一.探讨一下,如何针对指定的minion id来执行 先了解官网文档的targeting这一节的内容: Targeting Salt allows for minions to be targeted based on a wide range of criteria. The default targeting system uses globular expressions to match minions, hence if there are minions named larry1, 

Saltstack系列:Saltstack的Grains和Pillar

Grains和Pillar的用途: Grains : 用于存储minion的基本数据信息: Pillar : 用于存储master分配给minion的数据信息. Grains和Pillar的存储区域: Grains : 元数据存储在minion端: Pillar : 元数据存储在master端. Grains和Pillar的更新方式: Grains : 在minion启动时进行更新: Pillar : 元数据存储在master端,使用 saltutil.refresh_pillar进行刷新,效率

saltstack之grains与pillar

grains 收集被控主机获取信息,通常静态数据,CPU,操作系统,内核,虚拟化等.... 简单函数匹配server2 [[email protected] salt]# cat top.slsbase:  'roles:nginx':    - match: grain    - nginx.service [[email protected] salt]# pwd/etc/salt[[email protected] salt]# cat grains roles: nginxunit: m

Saltstack的Grains和Pillar比较

1.存放位置 Grains:Minion端 Pillar:Master端 2.数据类型 Grains:静态数据 Pillar:动态数据 3.数据采集更新方式 Grains:Minion启动时收集,也可以使用salt '*' saltutil.sync_grains进行刷新 Pillar:在Master端定义,指定给对应的Minion.可以使用salt '*' saltutil.refresh_pillar刷新 4.应用 Grains:存储Minion基本护具,比如用于匹配Minion,自身收据可

saltstack的探索-使用模版分发一个配置文件到minion

配置pillar: [[email protected] salt]# cat /srv/pillar/top.sls     base:     '*':         - data [[email protected] salt]# cat /srv/pillar/data.sls  a: 1 b: 2 c:     c1: 1001     c2: 2001     c3: 3001 使用yaml模版来创建一个配置文件: [[email protected] salt]# cat /sr