bashスクリプトプログラミング18 Keepalived自動配置
1682 ワード
先にKeepalivedを手作業で配置した記事に続いて、今回は自動的に配置します.
keepalivedディレクトリを作成します.ダウンロードして解凍したkeepalived-1.2.7ディレクトリが格納されています.システムサービスとして使用されるkeepalivedスクリプトも含まれています.
前の文で修正してubuntuに使用できるバージョンであることに注意してください.
install.shスクリプトの内容:
新しい関数installDpkgが使用され、toolに定義されています.shスクリプト:
keepalivedのディレクトリ構造は次のとおりです.
keepalivedディレクトリを作成します.ダウンロードして解凍したkeepalived-1.2.7ディレクトリが格納されています.システムサービスとして使用されるkeepalivedスクリプトも含まれています.
前の文で修正してubuntuに使用できるバージョンであることに注意してください.
install.shスクリプトの内容:
#!/bin/bash
source ../common/tool.sh
libssl="libssl-dev"
openssl="openssl"
popt="libpopt-dev"
daemonService="daemon"
installDpkg $libssl
installDpkg $openssl
installDpkg $popt
installDpkg $daemonService
cd keepalived-1.2.7
./configure --prefix=/usr
make
make install
cd ..
cp ./keepalived /etc/init.d/
cd /etc/init.d/
update-rc.d keepalived start 21 2 3 4 5 . stop 21 0 1 6 .
#update-rc.d keepalived default
createFolder "/var/lock/subsys"
cd -
make clean
service keepalived start
新しい関数installDpkgが使用され、toolに定義されています.shスクリプト:
#$1 dpkg name
function installDpkg {
hasDpkg $1
r=$?
if [ $r -eq 1 ]
then
echo "$1 was installed"
else
echo "$1 was not installed, installing..."
apt-get install $1
fi
}
keepalivedのディレクトリ構造は次のとおりです.
keepalived# tree -L 2
.
├── install.sh
├── install.sh~
├── keepalived
├── keepalived~
└── keepalived-1.2.7
├── AUTHOR
├── bin
├── ChangeLog
├── config.log
├── config.status
├── configure
├── configure.in
├── CONTRIBUTORS
├── COPYING
├── doc
├── genhash
├── INSTALL
├── install-sh
├── keepalived
├── keepalived.spec
├── keepalived.spec.in
├── lib
├── Makefile
├── Makefile.in
├── README
├── TODO
└── VERSION
6 directories, 21 files