系统自动化配置和管理工具:SaltStack

http://os.51cto.com/art/201308/409041.htm

SaltStack                2

Salt,,一种全新的基础设施管理方式,部署轻松,在几分钟内可运行起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯。

salt底层采用动态的连接总线, 使其可以用于编配, 远程执行, 配置管理等等.

参见

其他文档

下载Salt文档的副本:

· PDF

· ePub

查看之前的Salt版本文档请访问 http://salt.readthedocs.org. 访问 ReadTheDocs download page 下载离线副本.

访问 SaltStack YouTube channel 获取公告、示例及视频教程.

下载

Salt源码版本可以通过下面的PyPi链接下载获得:

https://pypi.python.org/pypi/salt

以下链接的安装文档,描述了在各个平台上如何获得安装包及对应安装细节:

安装教程

Salt Bootstrap项目,可以从以下的版本库找到,是一个能在多个平台上自动正确安装的独立Shell脚本,

https://github.com/saltstack/salt-bootstrap

入门指南

此演练将帮助你快速入门Salt,并了解关于它的基础知识:

官方Salt演练

下面的入门教程,也可供选择:

States - Salt配置管理系统:

·

States入门

·

·

基本配置管理

·

·

一些基本配置管理

·

·

高级技巧

·

·

Salt文件服务路径继承

·

无Master快速入门:

Salt快速入门

所有的教程都可以在以下列表中找到:

Salt教程列表

深入Salt

部署和使用Salt是个简单的工作,当然也可以以更加深入高级的方式运行。这些文档让我们更明白Salt是如何进行基础设施的管理的。

远程执行

在远程主机运行预定义或任意的命令,也叫远程执行,这是Salt的核心功能。接下来的链接展示了模块(module)和返回器(returner),这是远程执行的关键所在。

模块

Salt 模块是远程执行的基础。它提供了一系列的功能,比如安装包,重启一个服务,运行名称命令,传输文件等等。

所有模块列表

包括:Salt用的核心模块的列表

编写模块

包括:如何写Salt模块的引导

Returners

Salt返回接收器(returner)允许把minion的响应保存在各种数据存储或不同的位置,甚至把响应内容显示在命令行。Returner可以用来扩展Salt,和新的,定制的接口和支持新的数据库进行通信。

所有returners列表

包括:用来保存minion响应内容到Redis,Mongo,Cassandra,SQL或其他地方的返回接收器(returner)模块列表。

编写returners

包括:编写返回接收器(returner)模块的指令。

指定目标

Targeting 指明那些将执行命令或管理服务器配置的minion主机。接下来的链接提供了关于如何指定和匹配目标minion的更多信息。

Globbing and regex

匹配minions 通过通配符和正则表达式

Grains

用来匹配minion的grains,是指那些关于minion主机的静态信息,比如OS,软件版本,虚拟化,CPU,内存等等。

Pillar

通过用户定义的变量匹配minion主机

子网/IP地址

通过子网或IP地址匹配minion主机(当前仅支持IPV4)。

复合匹配

把上面的全部匹配器组合为一个表达式。

节点组

在master配置文件中静态定义minion组,使用:ref:复合 <targeting-compound> 匹配语法。.

批量执行

因此一些命令集在匹配上的minions时只需要执行一次。

配置管理

Salt包含了一个强壮且灵活的配置管理框架,它建立在远程执行的核心功能之上。这个框架在minion上执行,通过渲染语言(rendering language)指定state文件,可轻松配置上万台主机。后面的链接提供了更多学习状态(state)和渲染器(renderer)的资源。

States

使用小的、易读易理解的配置文件表达主机的状态。不需要编程。

所有states列表

Contains: list of install packages, create users, transfer files, start services, and so on.

Pillar系统

Contains: description of Salt‘s Pillar system.

States概览

Contains: an overview of states and some of the core components.

Highstate 数据结构

Contains: a dry vocabulary and technical representation of the configuration format that states represent.

编写states

Contains: a guide on how to write Salt state modules, easily extending Salt to directly manage more software.

Renderers(渲染器)

Renderers use state configuration files written in a variety of languages, templating engines, or files. Salt‘s configuration management system is, under the hood, language agnostic.

所有renderers列表

Contains: a list of renderers. YAML is one choice, but many systems are available, from alternative templating engines to the PyDSL language for rendering sls formulas.

Renderers

Contains: more information about renderers. Salt states are only concerned with the ultimate highstate data structure, not how the data structure was created.

其他主题

The following links explore various Salt topics in depth.

Salt Cloud

Salt Cloud是一个公有云的provision工具,在许多云providers上整合Salt.

文件服务

Salt can easily and quickly transfer files (in fact, that‘s how Salt states work). Even under heavy load, files are chunked and served.

Syndic

Syndic is a tool to allow one master host to manage many masters, which in turn manage many minions. Scale Salt to tens of thousands of hosts or across many different networks.

节点通信

Allow minions to communicate among themselves. For example, configure one minion by querying live data from all the others.

Reactor系统

reactor系统允许Salt创建一个自感知环境通过通过抓取底层事件转化为实质处理。

Salt防火墙设置

This is a tutorial covering how to properly firewall a Salt Master server.

执行调度 (如states)

The schedule system in Salt allows for executions to be run from the master or minion at automatic intervals.

网络技术

At it‘s core, Salt is a highly scalable communication layer built on top of ZeroMQ, which enables remote execution and configuration management. The possibilities are endless and Salt‘s future looks bright.

测试Salt

This is a tutorial for writing unit tests and integration tests.

Salt Proxy Minions

Proxy minions allow for the control of devices and machines which are unable to run a salt-minion.

Python API接口

The Python API allows the developer to use Salt locally from scripts and programs easily via importsalt.

External API interfaces

Expose a Salt API such as REST, XMPP, WebSockets, or others using netapi modules. Run these modules using the salt-api daemon. See the full list of netapi modules.

自动更新和Frozen Binary部署

Use a frozen install to make deployments easier (even on Windows!). Or take advantage of automatic updates to keep minions running the latest builds.

Windows软件管理/包仓库

Looking for an easy way to manage software on Windows machines? Search no more! Salt has an integrated software package manager for Windows machines! Install software hosted on the master, anywhere on the network, including any HTTP, HTTPS, or ftp server.

时间: 2024-08-02 11:03:33

系统自动化配置和管理工具:SaltStack的相关文章

自动化运维集中式管理工具saltstack的基于各个平台的部署

集中式管理工具saltstack是兼容Linux.Windows.Unix平台,能实现服务器的批量管理,命令或脚本下发,软件部署,环境搭建,配置管理,是运维人员的提高管理效率的工具.至于更详细的功能与优势这里不再介绍,网络上有很多前辈有介绍,这里只介绍部署方法. 部署环境 saltstack版本:2015.8.7 服务端master:CentOS6.7   master 被控段minion:CentOS5.11   minion01 CentOS6.7    minion02 CentOS7.2

HP 打印机驱动移植到Fedora 9,以及其它新系统(无包管理工具)

实现目标: fedora 9 上支持hp officejet 100 mobile driver,并且移植到新的x系统上(无包管理工具) 由于HP官方网站打印机驱动仅支持Fedora17,18,19,20,还好HP提供了驱动源码,我们可以自己编译和安装.下面是我将HP驱动移植到Fedora9上的过程,供各位参考. 1. 安装环境的配置 su -c "yum -y -d 10 -e 1 install avahi-tools cups cups-devel dbus-devel gcc-c++ g

react-native fastlane自动化构建分发应用管理工具for iOS and Android

关于RN的相关资料,教你一步步开发react-native企业级应用 ReactNative开发企业级电商APP应用,环境搭建->开发工具->重点知识库->基础框架构建->iOS/Android上线 应用完成开发后,讲讲自动化构建fastlane,react-native fastlane自动化构建分发应用管理工具for iOS and Android 简单来说fastlane能为我们做些什么? 1.通过命令行 fastlane ios appstore / fastlane an

Redhat/Fedora 或类似系统, 配置网络的工具介绍

在Redhat早期的版本中, 有linuxconf .redhat-config-network .netconfig 等工具: 在Redhat/Fedora 最新的版本有 system-config-network-tui (文本模式的) .system-config-network (图形模式的),netconfig(文本模式的). 这些工具都会直接修改Linux系统中关于网络接口的配置文件:这是 Linux ifconfig 所不能比的: 其中 redhat-config-network

系统自动化配置工具

PUPPET安装配置过程:http://blog.chinaunix.net/uid-24250828-id-3882898.html saltstack安装配置过程:http://www.linuxyw.com/179.html chef安装配置过程:http://heylinux.com/archives/2208.html ansible安装配置过程:http://sofar.blog.51cto.com/353572/1579894/ dock安装配置过程:http://www.linu

Linux系统网络配置与管理

1.图形化网络配置工具 (1)centos6下图形化网络配置工具 1)system-config-network(或system-config-network-tui) 2)setup (2)cnetos7下图形化网络配置管理工具 1)nm-connection-editor(需要在图形化界面终端中使用) 2)nmtui 3)nmcli 2.ifconfig命令的使用(centos7上默认没有此命令,需要安装net-tools包) (1)查看主机ip 1)ifconfig    #查看所有接口网

11.20 yum:自动化RPM包管理工具

yum(Yellow dog Updater Modified)是多个Linux发行版的软件包管理器,例如Redhat RHEL.CentOS和Fedora.yum主要用于自动安装.升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系. yum [option] [command] [package] yum  [选项]   [指令]    [软件包] 参数选项          解释说明 y                 确认操作 -nogpgcheck       忽略GPG验证 -

配置VMM2008R2管理工具中安装共享的ISO文件

1.  VMM服务器的启动账户,在安装VMM工具时就要输入 2.  库服务器共享文件夹,赋予用户读写权限和NTFS读写权限以及VMM服务启动账户和虚拟服务器读取权限 3.  在Hyper-V服务器委派库服务器 4.重启Hyper-V服务器就可以完成委派任务 菜鸟实验笔记,不足之处还请大神指正

5_linux_远程管理工具

如何登陆linux操作系统? 输入linux系统的ip地址 输入用户名root 输入密码(密码不会显示) 登入成功会显示 [[email protected] ~]# (root:用户名,locahost:主机名,~:家目录(登入时默认的初始目录)) 如何让虚拟机中linux和主机通信? 配置虚拟的的IP地址 然后在windows系统下cmd窗口中ping虚拟机的IP地址 如何配置linux操作系统的IP地址 输入ifconfig命令查看当前配置的网卡与IP地址(windows系统用ipconf