通过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 的目录
#cd /etc/puppet
2.初始化并添加文件到版本库
#git init
#git add *
3. 提交到版本库
#git commit -m "init puppet commit"
4.克隆出一个bare git仓库, 添加bare仓库,相当于/etc/puppet添加了一个分支。
#mkdir -p /data/git
#git clone --bare /etc/puppet /data/git/puppet.git
5.关联远程库
# git remote add -t master origin /data/git/puppet.git
6.克隆分支,在个人家目录下名为puppet-king
# cd ~
# git clone /data/git/puppet.git puppet-king
二、使用git 管理仓库
接着上面的介绍,简单介绍然后使用git管理仓库。
#cd puppet-king
#vim manifests/nodes.pp ##创建节点文件
#git add manifests/nodes.pp ##添回nodes.pp到仓库
#git commit -m "adding nodes.pp by king" ##提交nodes.pp
# git push ##提交分支
#cd /etc/puppet ##进入/etc/puppet/目录
# git pull ##同步仓库
三、Gitweb 管理puppet代码
Lighttpd版本
#yum install gitweb lighttpd
#cat /etc/gitweb.conf
$projectroot = "/etc/puppet"
#cd /etc/puppet
#git instaweb
这会在1234端口开启一个HTTPD 服务,随之在浏览器中显示该页,十分简单。关闭服务时,只需在原来的命令后面加上--stop 选项就可以了
通过http://ip:1234即可访问
Nginx版本
参考官方https://wiki.archlinux.org/index.php/gitweb#Nginx
安装fcgiwrap
#git clone https://github.com/gnosek/fcgiwrap.git
cd fcgiwrap
#autoreconf -i
#./configure
make
#make install
#yum install –y nginx spwan-fcgi gitweb
因为是需要将/etc/puppet放到gitweb里面去,所以,需要将gitweb目录放到/etc/puppet目录下
# tree /etc/puppet/gitweb/
/etc/puppet/gitweb/
├── error.log
├── gitweb.cgi
├── gitweb.css
├── gitweb.js
├── httpd.conf
└── tmp
修改gitweb配置文件
# cat /etc/gitweb.conf
$projectroot = "/etc/puppet"
修改spwan-fcgi配置
# cat /etc/sysconfig/spawn-fcgi
# You must set some working options before the "spawn-fcgi" service will work.
# If SOCKET points to a file, then this file is cleaned up by the init script.
#
# See spawn-fcgi(1) for all possible options.
#
# Example :
#SOCKET=/var/run/php-fcgi.sock
#OPTIONS="-u apache -g apache -s $SOCKET -S -M 0600 -C 32 -F 1 -P /var/run/spawn-fcgi.pid -- /usr/bin/php-cgi"
FCGI_SOCKET=/var/run/fcgiwrap.socket
FCGI_PROGRAM=/usr/local/sbin/fcgiwrap
FCGI_USER=nginx
FCGI_GROUP=nginx
FCGI_EXTRA_OPTIONS="-M 0700"
OPTIONS="-u $FCGI_USER -g $FCGI_GROUP -s $FCGI_SOCKET -S $FCGI_EXTRA_OPTIONS -F 1 -P /var/run/spawn-fcgi.pid -- $FCGI_PROGRAM"
# cat /usr/local/nginx/conf/vhosts/git.conf
server {
listen 8150;
error_log /data/logs/nginx/git.error.log;
access_log /data/logs/nginx/git.access.log;
root /etc/puppet;
location /gitweb/ {
index gitweb.cgi;
include fastcgi_params;
gzip off;
fastcgi_param GITWEB_CONFIG /etc/gitweb.conf;
if ($uri ~ "/gitweb/gitweb.cgi") {
fastcgi_pass unix:/var/run/fcgiwrap.socket;
}
}
}
窗体底端
通过gitweb管理Puppet配置(nginx版本+lighttpd版)的更多相关文章
- 配置nginx实现windows/iis应用负载均衡
nginx是俄罗斯人开发的一款跨平台的高性能HTTP和反向代理服务器,可以利用它实现web应用服务器的负载均衡. 反向代理是指将用户请求通过代理服务器转发给后端内部网络的应用服务器,典型的应用比如配置 ...
- 配置nginx实现windows/iis应用负载均衡(转载)
配置nginx实现windows/iis应用负载均衡 nginx是俄罗斯人开发的一款跨平台的高性能HTTP和反向代理服务器,可以利用它实现web应用服务器的负载均衡. 反向代理是指将用户请求通过代 ...
- 【Nginx】配置Nginx的负载均衡
参考的优秀文章 tomcat配置文件server.xml详解 AJP协议总结与分析 Using nginx as HTTP load balancer 在本机运行2个Tomcat 现需要运行两个Tom ...
- docker配置nginx做反向代理管理tomcat应用
由于业务开始复杂,单一tomcat已经不足以满足业务需求,多tomcat部署起来不方便而且面临域名解析问题,因此开始增加反向代理,由于docker的易用性,便使用docker管理各个应用. docke ...
- centos6.5环境自动化运维之puppet实现nginx反向代理功能及puppet安装配置详解
puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.puppet把这些系统实体称之为资 ...
- nginx+python+fastcgi环境配置(flup版本)
昨天花了一整天的时间研究搭建了nginx+python+fastcgi环境,并测试没问题,由于是第一次,并且参考了网上很多东西,网上也有很多,但还是把自己的过程记录下. 主要感谢这位兄弟的文章给了我很 ...
- Nginx总结(八)Nginx服务器的日志管理及配置
前面讲了如何配置Nginx虚拟主机,大家可以去这里看看nginx系列文章:https://www.cnblogs.com/zhangweizhong/category/1529997.html 今天要 ...
- Apache、nginx 、lighttpd性能比较
Apache.nginx .lighttpd性能比较 1. web服务器简介 1. lighttpd Lighttpd是一个德国人领导的开源软件,其根本的目的是提供一个专门针对高性能网站,安全.快速. ...
- linux 安装配置Nginx
简介: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄国 ...
随机推荐
- A norm is a function. 范数是函数。
[范数]范数是函数.A norm is a function.范数(norm),是具有“长度”概念的函数.在线性代数.泛函分析及相关的数学领域,是一个函数,其为向量空间内的所有向量赋予非零的正长度或大 ...
- 【python】-- SQLAlchemy操作MySQL
ORM.SQLAchemy orm英文全称object relational mapping,就是对象映射关系程序,简单来说就是类似python这种面向对象的程序来说一切皆对象,但是使用的数据库却都是 ...
- SQLServer将一个表内指定列的所有值插入另一个表
insert into records_resolve_bak(resolve_save_addr,resolve_time,resolve_status) select resolve_save_ ...
- xpath中如何使用变量
xpath (python)xpath中如何使用变量描述: 在xpath中该如何使用变量,想选择id是某个值的元素,这个值是个变量. response.xpath('//div[@id=val]'). ...
- 微信小程序生命周期
微信小程序 生命周期 通俗的讲,生命周期就是指一个对象的生老病死. 从软件的角度来看,生命周期指程序从创建.到开始.暂停.唤起.停止.卸载的过程. 下面从一下三个方面介绍微信小程序的生命周期: 应用生 ...
- javascript操作常见的html标签
几乎HTML所有标记都可以说是HTML的控件,如select, input, div, table等.html标签便捷的操作,深受大家的喜欢.现在的大部分网站都是ajax+json来进行数据传送.所以 ...
- C#统计目录中文件MD5值
1. [代码]统计目录中文件MD5值 using System.IO;using System.Security.Cryptography;using System.Collections;using ...
- php数据结构课程---4、栈(是什么)
php数据结构课程---4.栈(是什么) 一.总结 一句话总结: 栈(stack),它是一种运算受限的线性表.其限制是仅允许在表的一端进行插入和删除运算. 1.栈的链表实现? 定义node,设置属性d ...
- Linux课程---6、别名管理和网络配置(Linux命令如何记)
Linux课程---6.别名管理和网络配置(Linux命令如何记) 一.总结 一句话总结: 理解记忆:因为命令要实现那么多功能,必须有那么多参数,而不同的参数就适用不用的情况 命令基本格式:命令关键字 ...
- MySQL常用方法
1.INSTR,例:INSTR(content,'\"SHOP_DES\"')>0,返回字符串在某一个字段的内容中第一次出现位置,没有为0 2.REPLACE,例:conte ...