リリース情報 (resource-agents 3.9.3)
2012年5月25日にresource-agents 3.9.3がリリースされました! ということでいつものごとく、メーリングリストに投稿されたリリースノートの意訳です。
We've tagged on May 25th a new stable resource-agents release (3.9.3) in the upstream repository.
Big thanks go to all contributors! Needless to say, without you this release would not be possible.
5月25日にresource-agents 3.9.3をリリースしました。
バグの報告やパッチの作成などにご協力いただいたみなさん、本当にありがとうございました!
Some highlights:
今回のリリースで注目すべき大きな変更点は下記のとおりです。
- rgmanager/vm.sh: Added support for doing tunneled migrations
rgmanagerにvm.shスクリプトが追加されました。libvirtの「トンネルマイグレーション」をサポートしています。
vm.shで「–tunnelled」オプションも使えるようになったみたいですね。 virshコマンドのヘルプはこんな感じでした。これみてもよくわかんないな…。
# virsh help migrate
名前
migrate - 他のホストにドメインを移動させる
形式
migrate [--live] [--p2p] [--direct] [--tunnelled] [--persistent] [--undefinesource] [--suspend] [--copy-storage-all] [--copy-storage-inc] [--change-protection] [--verbose] <domain> <desturi> [<migrateuri>] [<dname>] [--timeout <number>] [--xml <string>]
詳細
ドメインを他のホストに移動させる。活性移動では --live を付加する。
オプション
--live 活性移動
--p2p peer-2-peer migration
--direct direct migration
--tunnelled tunnelled migration
--persistent persist VM on destination
--undefinesource undefine VM on source
--suspend do not restart the domain on the destination host
--copy-storage-all migration with non-shared storage with full disk copy
--copy-storage-inc migration with non-shared storage with incremental copy (same base image shared between source and destination)
--change-protection prevent any configuration changes to domain until migration ends)
--verbose display the progress of migration
[--domain] <string> ドメイン名、id または uuid
[--desturi] <string> connection URI of the destination host as seen from the client(normal migration) or source(p2p migration)
[--migrateuri] <string> 移動 URI。通常は省略可
[--dname] <string> 移行中に新しい名前に改名(サポートがある場合)
--timeout <number> force guest to suspend if live migration exceeds timeout (in seconds)
--xml <string> filename containing updated XML for the target
- new resource agents:
asterisk, dhcpd, named, pound, rsyslog, slapd, varnish
新しいRAがいくつか追加されました。
RAの名前は、そのRAが起動/監視/停止処理を担当するサービスやデーモンなどの名前そのままなので解説は省略します。新規RAは asterisk, dhcpd, named, pound, rsyslog, slapd, varnish です。
- mysql: improve replication support
mysql RAの修正です。
レプリケーション機能のサポートが一部改良されています。
- pgsql: support for replication
pgsql RAの修正です、
レプリケーション機能のサポートが追加されました。
- Raid1: support for multiple MD arrays
Raid1 RAの修正です。
複数のmdデバイスで構成されたアレイに対するサポートが追加されました。
- SAPInstance/SAPDatabase: use saphostagent and support for more databases
SAPInstance RAおよびSAPDatabase RAの修正です。
すいません、SAP、みたことすらないのでアレなんですが、saphostagentというツール?コマンド?を使って複数のデータベースを操作することができるようになったような感じです。
- several new ocft test cases
ocftのテストケースを追加しました。
ocf-testerというツールがあるのですが、これを使うとRAの単体試験ができます。 The OCF Resource Agent Developer’s Guideに使い方が紹介されているので、興味のある方は試してみてください。
The full list of changes for the linux-ha RA set is available in ChangeLog.
Please upgrade at the earliest opportunity.
Best,
チェンジログはGitHubで参照することができます。
可能であれば、早い時期にバージョンアップすることをお勧めします。
では、バージョンアップの方法をご紹介します。 試した環境はRHEL6.2です。
$ uname -a
Linux dl380g5c 2.6.32-220.el6.x86_64 #1 SMP Wed Nov 9 08:03:13 EST 2011 x86_64 x86_64 x86_64 GNU/Linux
$ cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.2 (Santiago)
まず、GitHubからソースコードをダウンロードします。
$ git clone http://github.com/ClusterLabs/resource-agents.git
タグを確認して…
$ cd resource-agents
$ git describe --tags
v3.9.3
ビルドの準備をにょろにょろと実行して…
$ ./autogen.sh
$ ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc
依存関係を確認します。
$ grep BuildRequires resource-agents.spec
BuildRequires: automake autoconf pkgconfig
BuildRequires: perl python-devel
BuildRequires: libxslt glib2-devel
BuildRequires: which
BuildRequires: cluster-glue-libs-devel
BuildRequires: docbook-style-xsl docbook-dtds
BuildRequires: libnet-devel
BuildRequires: libnet1
BuildRequires: libnet
BuildRequires: libglue-devel
BuildRequires: libxslt docbook_4 docbook-xsl-stylesheets
cluster-glue-libs-develあたりが罠です。 Linux-HA JapanのダウンロードサイトからPacemakerリポジトリパッケージをダウンロードしてcluster-glue-libs-develもインストールしてください。 では、RPMを作成してみましょう。
# su - root
# make rpm
Processing files: resource-agents-debuginfo-3.9.3-1.el6.x86_64
伸張ファイルの検査中: /usr/lib/rpm/check-files /root/rpmbuild/BUILDROOT/resource-agents-3.9.3-1.el6.x86_64
書き込み完了: /home/resource-agents/resource-agents-3.9.3-1.el6.src.rpm
書き込み完了: /home/resource-agents/x86_64/resource-agents-3.9.3-1.el6.x86_64.rpm
書き込み完了: /home/resource-agents/x86_64/ldirectord-3.9.3-1.el6.x86_64.rpm
書き込み完了: /home/resource-agents/x86_64/resource-agents-debuginfo-3.9.3-1.el6.x86_64.rpm
出来上がったRPMをインストールしてください。
# rpm -ihv x86_64/resource-agents-3.9.3-1.el6.x86_64.rpm
または
# rpm -Uhv x86_64/resource-agents-3.9.3-1.el6.x86_64.rpm
RPMが必要ない場合は、make installでインストールしてください。 この場合も当然、cluster-glue-libs-develとかそのへんの依存関係には注意してください。
# make install
gitとかmakeとかめんどくさいなあ、特定のRAだけアップデートしたいんだけどなあ という場合は、コピペでも大丈夫! GitHubの「ZIP」というアイコンをぽちっとしてソースコードをダウンロードしましょう。 zipファイルをunzipコマンドで解凍してあげると、RAはheartbeatという名前のディレクトリの下にもりっといます。
# ls heartbeat
AoEtarget LVM SendArp apache ids ocf-shellfuncs sapdb.sh
AudibleAlarm LinuxSCSI ServeRAID apache-conf.sh iscsi ocf-shellfuncs.in scsi2reservation
CTDB MailTo SphinxSearchDaemon asterisk jboss oracle sfex
ClusterMon Makefile Squid conntrackd lxc oralsnr shellfuncs
Delay Makefile.am Stateful db2 mysql pgsql shellfuncs.in
Dummy Makefile.in SysInfo dhcpd mysql-proxy pingd slapd
EvmsSCC ManageRAID VIPArip drbd named portblock symlink
Evmsd ManageVE VirtualDomain eDir88 nfsserver postfix syslog-ng
Filesystem Pure-FTPd WAS ethmonitor nginx pound tomcat
ICP README WAS6 exportfs ocf-binaries proftpd varnish
IPaddr Raid1 WinPopup fio ocf-binaries.in ra-api-1.dtd vmware
IPaddr2 Route Xen http-mon.sh ocf-directories rsyncd
IPsrcaddr SAPDatabase Xinetd iSCSILogicalUnit ocf-directories.in rsyslog
IPv6addr.c SAPInstance anything iSCSITarget ocf-returncodes sapdb-nosha.sh
では、使いたいRAを所定のディレクトリにコピー! この例ではpgsql RAをアップデートしています。 コピーする前に一応バックアップもとっておいてくださいね。
# cp -p heartbeat/pgsql /usr/lib/ocf/resource.d/heartbeat/pgsql
configureのオプションによって配布先は異なるかもしれませんが、前のバージョンのresrouce-agentsをインストールしているのであれば、ocfとかresource.dとかで検索してそれっぽいディレクトリを探してください。
実行権限もちゃんとついてると思いますが、一応確認してください。
# ls -l /usr/lib/ocf/resource.d/heartbeat/pgsql
RAのバグかな?と思ったら、まずは最新版のRAを試してみることをおすすめします。