Git管理Puppet打造统一配置管理

一、介绍

1)运维工作流程

大数据时代高伸缩性、容错性的特点给运维提出了更高的要求。系统管理不再是疲于安装操作系统、对系统参数进行逐一配置与优化、打补丁、安装软件、配置软件、添加某个服务的时代。为了提高效率、避免重复劳动、减少错误、积累知识,系统管理员都已开始做一些局部的自动化工作。但这些还远不够, 为了满足运维需求,需要统一配置管理。

2)自己实现自动化:git+puppet

Puppet采用了非常简单的C/S架构,所有数据的交互都通过SSL进行,以保证安全。

Git是一个开源的分布式版本控制系统,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。

puppet配置按照用途和业务分组,按照不同的分组创建g

it仓库。也就是每个git仓库对应着一个分组的puppet配置。

二、实现的功能

git管理puppet能够实现的功能大致如下:

1.统一安装、配置管理软件

2.统一配置系统优化参数,修改配置文件

3.服务器重启后,能让服务器自动运行puppet定义的服务。

4.根据给git和puppet根据不同业务和用途的分组,实现对用户的统一配置管理的权限控制。

三、实现的流程

1、安装软件包:

使用自己制作的rpm包,通过puppet来编写批量安装软件包的配置。然后通过git实现分发给puppet客户端,执行安装软件。

2、配置文件修改

用户通过本地安装git客户端,在本地机器上拷贝一个相应分组的Git仓库。然后修改、增加、删除puppet里的配置文件,提交到远程git仓库。

git服务器先更新到本地puppet代码库,然后再推给git仓库。

如果git有更新,git钩子自动运行puppet文件,分发给客户端(比如某某web服务器组)。

3、服务器重启后,能让服务器自动运行puppet定义的服务。

在客户端/etc/rc.local文件里添加执行site.pp文件的命令。就可以开机自动运行puppet定义的服务。

4、根据给git和puppet根据不同业务和用途的分组,实现对用户的统一配置管理的权限控制。

对不同分组,给不同用户的权限也是不同的。

时间: 2024-08-25 14:12:11

Git管理Puppet打造统一配置管理的相关文章

puppet学习之使用git实现puppet版本控制

puppet学习之使用git实现puppet版本控制 本文通过创建用户资源的例子介绍为多台agent同时添加用户账户.git仓库的创建.puppet加入git仓库.通过远程管理主机管理配置文件及文件版本的回滚处理. 一.系统环境 系统平台:Centos6.6_x86_64 主机规划: 192.168.115.21   puppet1.hnr.com  master 192.168.115.22   puppet2.hnr.com  agent 192.168.115.23   puppet3.h

3月30日作业:采购管理、信息管理和配置管理

3月30日作业:采购管理.信息管理和配置管理 一.采购管理 1.采购管理包括哪些过程?(记) 编制采购计划.编制询价计划.请求卖方回应.卖方选择.合同签订.合同收尾 2.编制采购计划过程的成果是什么? 采购管理计划.采购工作说明书 3.判断:每个采购工作说明书都来自于项目范围基准. 每个采购工作说明书都来自于项目范围基准 4.结合P388页表14-1,工作说明书应该清楚地描述哪些内容? 1.采购目标的详细描述 2.采购工作范围 3.工作地点 4.产品及服务的供货周期 5.适用标准 6.验收标准

通过gitweb管理Puppet配置(nginx版本+lighttpd版)

Puppet路径为:/etc/puppet 软件版本:gitweb-1.7.1-3.el6_4.1.noarch git-1.7.1-3.el6_4.1.x86_64 fcgi-2.4.0-12.el6.x86_64 spawn-fcgi-1.6.3-1.el6.x86_64 nginx version: nginx/1.6.2 lighttpd/1.4.35 (ssl) - a light and fast webserver 一.建立puppet git仓库 1.进入puppet 的目录 #

App开发流程之源代码Git管理

base项目已经可以编译运行了,只不过没有实际功能而已.继续完善base项目前,我们需要考虑一下代码管理的事情了. 不管是一个人开发还是一个团队开发,对源代码进行版本管理是必须的,任何人对代码的的任何操作都可以被管理,理由还不够充分么. 以前使用过SVN,不过体验最好的,还是Git方式. 1.本地仓库简单易用,可以完全脱离远程仓库来使用2.所有主干和分支都统一管理,切换自如3.合并代码轻松愉快 Xcode自带代码Git管理,创建项目时候就提到过,当时有建议不采用,因为准备使用其他的管理工具.如果

gitub仓库主页介绍、用git管理本地仓库和github仓库

github仓库主页介绍 名词解释: 工作区: 添加.编辑.修改文件等动作 暂存区: 暂存已经修改的文件,最后统一提交到git中 git(仓库): 最终确定的文件保存到仓库,成为一个新的版本,并且对他人可见 一.本地Git初始化及仓库创建和操作 1.基本信息设置 1)设置用户名 git config --global user.name "Your Name" 2)设置用户名邮箱 git config --global user.email "[email protected

传统企业如何打造统一的持续集成平台

一.传统行业打造统一持续集成平台痛点 多团队维护多套工具链,重复任务多.运维成本高. 各团队交付流程不统一么,重复造轮子,知识经验无法共享. 各交付质量.标准不统一,难以形成统一的度量体系. 二.从零到一的解决方案 1.成立团队该团队初期视公司技术人员规模,可由虚拟组或专属devops工程师组成.该需要具备下述能力: 对需求管理.敏捷有所了解,敏捷教练最佳. 各语言研发专家,制定静态代码检测标准,负责公司技术栈选型. 测试工程师,负责测试工具选型及集成. 运维人员对资源及部署能力及流程进行把控.

GitBash、EGit、SourceTree三个Git管理工具对比

Git管理工具对比(GitBash.EGit.SourceTree) GitBash是采用命令行的方式对版本进行管理,功能最为灵活强大,但是由于需要手动输入希望修改的文件名,所以相对繁琐. EGit是Eclipse的Git插件,最为纠结的一个软件,因为开发时直操作很方便,尤其是有svn开发情节的人更热衷于这样,不过EGit中有很多bug和不人性化的东西,让人吐血,所以 一句话EGit并不能解决所有Git问题,开发时必须部分依赖于其他Git管理工具.一会一一列举. SourceTree是最近应用的

git 管理

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #3e3e3e; background-color: #efefef } span.s1 { } 前言:在git管理前必须得有一个仓库仓库可以是专门的服务器,也可以是一台外网能访问的电脑里做为版本仓库 在这之前 如果您没有自己的版本仓库 搭建一个Gitlab也是一个不错的建议 p.p1 { margin: 0.0px 0.0px 0

windows下使用git管理github项目

在项目版本控制管理中,我想大家都熟悉CVS或着SVN了,对于新兴的git大多人还是抱着观望的态度,本文简单介绍如何在windows下使用git及github仓库管理项目. 第一,下载并安装git 目前windows版本的git有几种实现,但我们选择msysgit发行版,这是目前做得兼容性最好的.下载地址:http://code.google.com/p/msysgit/downloads/list 下载完成后双击安装文件并按照提示完成git的安装.git的安装过程十分简单,安装完毕后会提示你做初