saltstack

SaltStack;以及与AnsibleWorks,Chef-solo,puppet等等等的比较!

喜夏-厌秋 提交于 2019-12-01 23:23:38
SaltStack;以及与AnsibleWorks,Chef-solo,puppet等等等的比较! ...        http://www.vpsee.com/2013/08/a-system-configuration-management-and-orchestration-tool-saltstack/ 系统自动化配置和管理工具 SaltStack 2013年08月22日 | 标签: devops , puppet , salt , saltstack | 作者: vpsee 我们的服务器 由 Puppet 配置管理工具来管理 ,服务器上线后由 puppet 完成初始化和配置等一系列工作(比如,静态 IP 配置,DNS 设置,NFS/SAN 挂载,LDAP/Kerberos 登录,安全加固配置,内核参数优化,防火墙规则配置等等),等初始化完成后开始运行,运行一段时间后有一些需要自动和手动操作的任务(比如升级、重启、备份等),这时候我们 使用 Fabric 来批量执行 这些临时任务。 所以从这里可以看到 Puppet 和 Fabric 其实是两个不同性质的工具,看下面的归类可能会更清楚一些。Puppet 和 Fabric 两个的工作其实可以由一个工具 SaltStack(或 AnsibleWorks)完成,减少一个工具的使用会减轻一点负担(学习工具的人力成本

saltstack配置gitfs与开发环境

荒凉一梦 提交于 2019-12-01 22:00:59
##dev,stage,prod配置 目的:使用gitfs统一分布式环境中的配置,将开发环境与生产环境区分开来 ###修改/etc/salt/master中如下内容 file_roots: #保留字段 base: - /srv/salt/base #开发环境 dev: - /srv/salt/dev #测试环境 stage: - /srv/salt/stage #生产环境 prod: - /srv/salt/prod pillar_roots: base: - /srv/pillar/base dev: - /srv/pillar/dev stage: - /srv/pillar/stage prod: - /srv/pillar/prod ###重启服务 service salt-master restart service salt-api restart ###top.sls文件 dev: 'localhist': - test pillar中的top.sls同上 ###命令行测试效果 salt ‘localhist’ state.highstate’ ###注意事项 state.sls 命令不受上述配置影响,它默认使用base环境,可通过saltenv=‘dev’ 来指定为开发环境 ##使用gitfs ###安装必要的软件包 yum install -y libgit2

saltstack介绍

你离开我真会死。 提交于 2019-12-01 22:00:43
slatstack是一个基础管理平台 是一个配置管理系统,能够预定义状态的远程结点 是一个分布式远程执行系统,用来在远程结点上执行命令和查询数据 slatstack核心功能:使用命令发送到远程系统是并行而不是串行 使用安全加密协议 使用最小最快的网络载荷 提供简单的编程接口 slatstack优点: 使用python开发,轻量级 底层采用zeromq,实现是的它很快速 开源,通过python写自己的模块 slatstack端口说明: salt-maste:4505为salt消息发布专用端口 4506为客户端与服务端通信端口 1.安装saltstack 1.1安装yum源 使用的是阿里epel6的yum源 http://mirrors.aliyun.com/epel/6Server/x86_64/ 解决一些依赖关系使用阿里的centos6的yum源 http://mirrors.aliyun.com/centos/6/os/x86_64/ [root@slat-master ~]# yum install salt-master -y [root@slat-minion~]# yum install salt-minion -y 安装完毕会有一套关于salt的命令 [root@salt-master ~]# salt salt salt-call salt-cp salt-key

saltstack通过state安装nginx

一个人想着一个人 提交于 2019-11-30 17:54:23
创建nginx.sls文件 install_nginx是安装Nginx的配置,nginx_running负责进程管理,nginx_conf下发Nginx主配置的模板文件,vhost_conf下发Vhost的配置文件。 [root@29-server]# cat /srv/salt/nginx.sls {% set confdir="/etc/nginx/" %} {% if grains['num_cpus'] > 2 %} install_nginx: pkg.installed: - name: nginx nginx_running: service.running: - name: nginx - enable: Ture - require: - pkg: install_nginx - watch: - file: nginx_conf - file: vhost_conf nginx_conf: file.managed: - name: {{confdir}}nginx.conf - source: salt://nginx.j2 - user: root - group: root - template: jinja - mode: 644 vhost_conf: file.managed: - name: {{confdir}}conf.d/nginx.conf

08 saltstack实例

≡放荡痞女 提交于 2019-11-29 20:58:16
1、apache+php 前几章的LAMP: https://www.cnblogs.com/venicid/p/11276232.html#_label2 Php 放在 apache 1、目录结构 2、php安装配置 安装 [root@linux-node1 /srv/salt/prod/modules/apache]# cat php.sls php-install: pkg.installed: - pkgs: - php - php-pdo - php-mysql php-config: file.managed: - name: /etc/php.ini - source: salt://modules/apache/files/php.ini - user: root - group: root - mode: 644 配置文件 [root@linux-node1 /srv/salt/prod/modules/apache]# cp /etc/php.ini files/ 3、apache安装配置 安装 [root@linux-node1 /srv/salt/prod/modules/apache]# cat init.sls include: - modules.apache.php apache-install: pkg.installed: - name:

Saltstack学习(四)-state状态模块及配置管理

落爺英雄遲暮 提交于 2019-11-29 02:02:28
一、state状态模块 States 是 SaltStack 系统中的配置语言,在日常运维中需要编写大量的 States 文件,例如:创建用户、安装软件、配置软件、服务运行等。需要编写一些 States SLS 文件,即状态配置文件去描述和实现相应的功能。 States SLS 主使用 YAML 语言,也可以支持使用 Python 语言编写。 apache-install: #ID声明,ID必须唯一 pkg.installed: #State状态声明 - names: #选项声明 - httpd #选项列表 - httpd-devel apache-service: service.running: - name: httpd - enable: True #一个ID只能出现一次 #一个ID下相同模块只能使用一次 #一个ID下可以使用多个不同模块 查找状态模块: 文档:https://docs.saltstack.com/en/latest/ref/states/all/ [root@salt-master ~]# salt 'salt-minion1-c7' sys.list_modules #列出所有状态模块 [root@salt-master ~]# salt 'salt-minion1-c7' sys.list_state_functions pkg

Saltstack学习(二)-数据系统

不打扰是莪最后的温柔 提交于 2019-11-29 00:57:55
saltstack主要有两种数据系统: Grains Pillar 一、数据系统-Grains 1.1、Grains简介 1)当minion启动后会收集自身的状态信息即grains信息,grains信息是静态的,存储在minion端,如操作系统版本,内核版本,CPU,内存,硬盘,设备型号等。这些信息可以作为master端的匹配目标 2)master端可以自定义grains设置,但需要执行命令推送到minion端 3)master端推送的数据会存放在minion端的/var/cache/salt 1.2、使用grains查询minion端相关信息 1)salt '*' grains.ls ==>列出所有可打印的状态模块 [root@salt-master ~]# salt 'salt-minion1-c7' grains.ls salt-minion1-c7: - SSDs - biosreleasedate - biosversion - cpu_flags - cpu_model - cpuarch - disks - dns - domain - fqdn - fqdn_ip4 - fqdn_ip6 - fqdns - gid - gpus - groupname - host - hwaddr_interfaces - id - init - ip4_gw - ip4

Saltstack学习(一)

末鹿安然 提交于 2019-11-29 00:38:50
一、Saltstack的基本概述 SaltStack 是一个异构平台基础设施管理工具,具有远程执行、配置管理、云管理, 只需要花费数分钟即可运行起来,扩展性组以支撑管理上万台服务器,速度快,服务器之间秒级通讯数秒钟即可完成数据传递。 1.1、saltstack三大功能 远程执行 配置管理(状态) 云管理 1.2、 SaltStack 四种运行方式 Local 本地运行 Minion/Master 传统方式运行 Syndic 分布式 Salt SSH 1.3、SaltStack常用网址 Saltstack官方文档: https://docs.saltstack.com/en/latest/ Saltstack github: https://github.com/saltstack 来源: https://www.cnblogs.com/hujinzhong/p/11436650.html

SaltStack之用户账户管理

倾然丶 夕夏残阳落幕 提交于 2019-11-28 15:29:38
在Salt.state中,user 模块是用来创建用户和管理用户设定的,用户可以被设置成 present 状态或者 absent 状态 注释: present:添加用户 absent : 删除用户 1. 用户管理 Example 1: 添加一个普通用户(以下都是常用参数) [root@linux-node1 user]# pwd ###这是我的用户管理模块存放的位置,提前的file_roots中定义的。 /srv/salt/prod/modules/user [root@linux-node1 user]# ls Role.sls [root@linux-node1 user]# Role.sls Role: ### ID声明 group.present: ### 状态模块,必须先有组,才能创建用户 - name: Role ### 组名称 - gid: 1000 ### 组ID user.present: ### 添加用户的状态模块 - fullname: Tanjianxin ### 全称,也就是useradd -c的功能 - shell: /bin/bash ### 指定用户登录的shell - home: /home/Role ### 用户家目录 - uid: 1000 ### 用户ID - gid: 1000 ### 用户组ID - groups: ###

【搭建Saltstack运维工具】

前提是你 提交于 2019-11-28 10:02:53
目录 所谓Salt 开始搭建 配置接受密钥 salt命令 YAML详解 目标定位字符串 state模块定义主机状态 Salt采集静态信息之GrainsSalt 原文: http://blog.gqylpy.com/gqy/333 @(Saltstack) *** 所谓Salt Saltstack是由thomas Hatch于2011年创建的一个开源项目,设计初衷是为了实现一个快速的 远程执行系统 . Salt有多强大!     系统管理元日常会进行大量的重复性操作,例如安装软件,修改配置文件,创建用户,批量执行命令等等,如果主机数量庞大, 单靠人工维护是在让人难以忍受.     早期的运维人员会根据生产环境编写特定的脚本来完成大量的重复性工作,这些脚本复杂且难以维护,系统管理员面临的问题主要是系统配置管理、远程执行命令。因此而诞生了很多开源软件,系统维护方面的有 fabric 、 puppet 、 chef 、 ansible 、 Saltstack 等,这些软件擅长维护系统状态或方便的对大量主机进行批量的命令执行.     Salt灵活性强大,可以进行大规模部署,也能进行小规模的系统部署,Salt的设计构造适用于任意数量的服务器,从少量本地网络系统到跨越整个数据中心,扩扑架构都是C/S模型,配置简单.     不管是几台、几百台、几千台服务器