文档详情

Puppet利用Nginx多端口实现负载均衡.doc

发布:2015-09-24约字共4页下载文档
文本预览下载声明
随着公司应用需求的增加,需要不断的扩展,服务器数量也随之增加,当服务器数量不断增加,我们会发现一台puppetmaster压力大,解析缓慢,而且时不时出现“time out”之类的报错,那这时有什么优化的办法吗?我们在Puppet官网上找寻解决方案,发现puppetmaster可以配置多端口,结合WEB代理(推荐Nginx),这样puppetmaster承受能力至少可以提升数倍以上,相当于在很大程度上优化了puppet的处理能力。 1.遵循前面的环境设定,我们这里的服务器环境及软件版本分别为: 服务器系统:CentOS5.8 x86_64 Ruby版本:ruby-1.8.5 Puppet版本:puppet-2.7.9 Nginx版本:nginx-0.8.46 2.Mongrel安装 要使用puppet多端口配置,需要指定mongrel类型,默认没有安装,需要安装: yum install -y rubygem-mongrel 3.配置puppetmaster 在/etc/sysconfig/puppetmaster文件末尾添加如下两行,分别代表多端口、mongrel类型,内容如下所示: PUPPETMASTER_PORTS=(8141 8142 8143 8144 8145) PUPPETMASTER_EXTRA_OPTS=--servertype=mongrel --ssl_client_header=HTTP_X_SSL_SUBJECT 4.安装Nginx服务 安装之前请确保系统已经安装pcre-devel正则库,然后再编译安装Nginx,需要添加SSL模块参数支持,Nginx的安装过程如下所示: yum -y install pcre-devel cd /usr/local/src wget /download/nginx-0.8.46.tar.gz tar zxvf nginx-0.8.46.tar.gz cd nginx-0.8.46 ./configure --prefix=/usr/local/nginx --with-http_ssl_module make make install cd ../ 添加www用户组及用户,命令如下所示: groupadd www useradd -g www www 5.我们依据puppet需求来修改配置文件nginx.conf,内容如下所示: user www; worker_processes 8; events { worker_connections 65535; } http { include mime.types; default_type application/octet-stream; sendfile on; tcp_nopush on; keepalive_timeout 65; #定义puppet客户端访问puppet-server端日志格式 log_format main $remote_addr - $remote_user [$time_local] $request $request_length $request_time $time_local $status $body_bytes_sent $bytes_sent $connection $msec $http_referer $http_user_agent $http_x_forwarded_for $upstream_response_time $upstream_addr $upstream_status ; access_log /usr/local/nginx/logs/access.log main; upstream puppetmaster { server :8141; server :8142; server :8143; server :8144; server :8145; } s
显示全部
相似文档