最近有一个项目,安装了一批软件,在这里记录下来。
1 环境准备:
一台windwos server,6台linux server
所有安装介质放在terminal server D:/com_install_media 目录
window server 用户 admin
linux server用户 appcom appcom (应用用户,除heartbeat外的所有程序的用户)
root root(系统管理用户)
hacluster haclient heartbeat默认用户
linux 应用程序安装目录 /appcom/com
安装介质
[appcom@CNSZ031202 install_media]$ tree
.
|-- ClusterLabs-resource-agents-agents-1.0.4-0-gc06b6f3.tar.gz
|-- Heartbeat-3-0-STABLE-3.0.4.tar
|-- Reusable-Cluster-Components-glue--7f690c19ffa8.tar.bz2
|-- cacti-0.8.7g.tar.gz
|-- lighttpd-1.4.23.tar.gz
|-- lua-5.1.4.tar.gz
|-- lua-all.tar.gz
|-- mysql-5.5.11-linux2.6-x86_64.tar.gz
|-- mysql-proxy-0.8.1-linux-rhel5-x86-64bit.tar.gz
|-- nginx-0.8.54.tar.gz
`-- rpm-srv.sh
一 安装yum
1 在windows server上安装apache作反向代理,使得linux服务器可以访问10.25.11.11 yum服务器
安装apache http server,在http.conf中将proxy_mod enable,并添加如下配置:
<VirtualHost *>
ServerName *
ProxyRequests Off
ProxyPass / http://10.25.11.11/
ProxyPassReverse / http://10.25.11.11/
SetEnv force-proxy-request-1.0 1
SetEnv proxy-nokeepalive 1
</VirtualHost>
启动apache,在terminal上访问http://localhost/pub/,如果成功,则反向代理正常,可以使用rpm server了
2 在linux上用执行yum程序
用root登陆主机,同步d:/com_install_media/rpm-srv.sh到linux/root/bin中,执行该脚本。向公司内网的rpmserver注册
3 yum安装依赖包(root权限执行)
3.1 安装编译程序必备的包
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel
zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs
e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients
openldap-servers pcre-devel readline readline-devel automake libtool
3.2 安装snmp监控所需要的包
yum -y install net-snmp net-snmp-libs net-snmp-utils net-snmp-devel
3.3 安装脚本语言
yum -y install ruby python perl php
yum -y install php-mysql php-snmp php-pdo perl-DBD-MySQL
安装php-mysql等rpm是yum会将mysql一起安装上去,所以后期需要清理mysql
3.4 添加heartbeat用户
groupadd -g 778 haclient
useradd -u 778 -g 778 hacluster
3.5 安装lua, (mysql-proxy中使用lua作为脚本,需root权限安装)
cd /appcom/appcom/install_media/
tar zxvf lua-5.1.4.tar.gz
cd lua-5.1.4
make linux;make install
4 创建安装环境
mkdir /appcom/com
chown appcom /appcom/com
cp /bin/vi2 /bin/vi
2~4步骤需要在6台linux server上执行
二 安装软件(appcom权限执行)
1 nginx安装
使用appcom用户
cd /appcom/appcom/install_media
tar zxvf nginx-0.8.54.tar.gz
./configure --user=appcom --group=appcom --prefix=/appcom/com/nginx-0.8.54 --with-http_stub_status_module --with-
http_ssl_module;make;make install
cd /appcom/com
ln -s /appcom/com/nginx-0.8.54 nginx
2 lighttpd安装
使用appcom用户
解压介质文件,进入目录
cd /appcom/appcom/install_media
tar zxvf lighttpd-1.4.23.tar.gz
./configure -prefix=/appcom/com/lighttpd-1.4.23;make;make install
cd /appcom/com
ln -s /appcom/com/lighttpd-1.4.23 lighttpd
3 mysql安装
cp /appcom/appcom/install_media/mysql-5.5.11-linux2.6-x86_64.tar.gz /appcom/com/
tar zxvf mysql-5.5.11-linux2.6-x86_64.tar.gz
ln -s mysql-5.5.11-linux2.6-x86_64.tar.gz mysql
scripts/mysql_install_db --user=appcom
vi support-files/mysql.server
指定下面两项:
basedir=/appcom/com/mysql
datadir=/appcom/com/mysql/data
注释掉
#parse_server_arguments `$print_defaults $extra_args mysqld server mysql_server mysql.server`
并改为
parse_server_arguments
注释掉
#lockdir='/var/lock/subsys'
并改为
lockdir='/appcom/com/mysql/lock/subsys'
移除my.cnf
su root
mv /etc/my.cnf /etc/my.cnf.bk
cd /usr/bin
mkdir tmp
mv -f mysql* tmp/
启停方式:
启动./support-files/mysql.server start
停止./support-files//mysql.server stop
4 安装mysql-proxy
cp /appcom/appcom/install_media/mysql-proxy-0.8.1-linux-rhel5-x86-64bit.tar.gz /appcom/com/
tar zxvf mysql-proxy-0.8.1-linux-rhel5-x86-64bit.tar.gz
ln -s mysql-proxy-0.8.1-linux-rhel5-x86-64bit mysql-proxy
start cd mysql-proxy/bin;./mysql-proxy
启停方式:
cd mysql-proxy/bin;./mysql-proxy <some option>
5 安装heartbeat(root 用户安装)
mkdir /appcom/com/heartbeat-3.0.4
cd /appcom/com/
ln -s /appcom/com/heartbeat-3.0.4 heartbeat
cd /appcom/appcom/install_media
tar -zxvf ClusterLabs-resource-agents-agents-1.0.4-0-gc06b6f3.tar.gz
cd ClusterLabs-resource-agents-c06b6f3
./autogen.sh
./configure --prefix=/appcom/com/heartbeat --sysconfdir=/appcom/com/heartbeat/etc --localstatedir=/appcom/com/heartbeat/var
make;make install
cd /appcom/appcom/install_media
rm -rf Reusable-Cluster-Components-glue--7f690c19ffa8
tar -vxjf Reusable-Cluster-Components-glue--7f690c19ffa8.tar.bz2
cd Reusable-Cluster-Components-glue--7f690c19ffa8
./autogen.sh
./configure --prefix=/appcom/com/heartbeat --sysconfdir=/appcom/com/heartbeat/etc --localstatedir=/appcom/com/heartbeat/var
make;make install
cd /appcom/appcom/install_media
rm -rf cd Heartbeat-3-0-STABLE-3.0.4
tar xvf Heartbeat-3-0-STABLE-3.0.4.tar
cd Heartbeat-3-0-STABLE-3.0.4
./bootstrap
./configure --prefix=/appcom/com/heartbeat --sysconfdir=/appcom/com/heartbeat/etc --localstatedir=/appcom/com/heartbeat/var
make;make install
cd /appcom/com/heartbeat
cp ./lib64/heartbeat/heartbeat ./lib/heartbeat/
/usr/sbin/groupadd haclient
/usr/sbin/useradd hacluster -g haclient
cp /etc/init.d/heartbeat /appcom/com/heartbeat/
配置启动heartbeat(heart必须经过配置才能启动,必须由root权限启动)
touch /appcom/com/heartbeat/etc/ha.d/ha.cf
/appcom/com/heartbeat/heartbeat start
以下是heartbeat的配置目录等信息,我们可以参考来配置
heartbeat configuration:
Version = "3.0.4"
Executables = "/appcom/com/heartbeat/sbin"
Man pages = "/appcom/com/heartbeat/man"
Libraries = "/appcom/com/heartbeat/lib64"
Header files = "/appcom/com/heartbeat/include"
Arch-independent files = "/appcom/com/heartbeat/share"
Documentation files = "/appcom/com/heartbeat/share/doc/"
State information = "/appcom/com/heartbeat/var"
System configuration = "/appcom/com/heartbeat/etc"
Init (rc) scripts = "/etc/init.d"
Init (rc) defaults = "/etc/sysconfig"
Use system LTDL = "no"
HA group name = "haclient"
HA group id = "65"
HA user name = "hacluster"
HA user user id = "17"
Build dopd plugin = "yes"
Enable times kludge = "yes"
5 catic安装
cacti-0.8.7g.tar.gz,直接解压配置使用即可