• atwiki
  • GOL @Wiki
  • Subversionを題材にしたSMF(Service Management Facility)いぢりの編集履歴ソース
「Subversionを題材にしたSMF(Service Management Facility)いぢり」の編集履歴(バックアップ)一覧に戻る

Subversionを題材にしたSMF(Service Management Facility)いぢり - (2006/11/22 (水) 09:26:22) のソース

#ref(ya_g03.jpg,トップページ,http://www6.atwiki.jp/divadiva/pages/22.html)


Solaris10になって、サービスの管理はSMFで行うようになりました。サービスの管理方法が統一されてとても便利ではあるのですが、いざ自分でサービスを登録しようとすると、XML形式のマニフェストファイルなど、覚えなければいけないことがいろいろと出てきます。ここでは特定のサービスを題材にSMFを勉強していきたいと思います。

**Solaris10 SMFによるサービス管理
Solaris10以降、サービスはinetdではなくてSMFで管理されています。とっても便利なので、どんどん使いましょう!

-inetd経由でSMF管理するための設定ファイル生成(Subversionの場合)
まずは/etc/servicesを書きます。
  (/etc/services)
  svn    3690/tcp           # Subversion server
  svn    3690/udp           # Subversion server
次に、inetd用のconfファイルを書きます。
  (inetd.conf_svn)
  svn stream tcp nowait svn /usr/local/bin/svnserve svnserve -i -r /export/home/cn/REPOSITORIES
上記2ファイルの内容に矛盾がないことを確認したら、SMF用ファイル変換コマンドを実行します。
  # inetconv -i ./inetd.conf_svnserve[Enter]
  svn -> /var/svc/manifest/network/svn-tcp.xml
  Importing svn-tcp.xml ...Done
これで、生成が完了します。

inetadmコマンドで確認しましょう。
  # inetadm | grep svn
  enabled online svc:/network/svn/tcp:default
inetd管理のものはinetadmコマンドで無効にできます。
  # inetadm -d /network/svn/tcp

-SMFでちゃんと管理(Subversionの場合)
まずはSMFマニフェストを[[subversion.xml>http://www6.atwiki.jp/divadiva?cmd=upload&act=open&pageid=22&file=subversion.xml]]という名前で記述し、/var/svc/manifest/networkに置きます。今回の例ではFMRI(SMFサービス名)をsvc:/network/subversionにしています。
さらに、上記ファイルは/lib/svc/methodにおいてあるシェルスクリプト[[subversion>http://www6.atwiki.jp/divadiva?cmd=upload&act=open&pageid=&file=subversion.public]]でサーバを起動・停止することを前提としていますので、subversionを記述して、/lib/svc/methodに置きます。

ファイルが揃ったら、SMFに登録します。
  # svccfg import /var/svc/manifest/network/subversion.xml
  # svcs -a | grep subv    <= 確認
  online 11:36:53 svc:/network/subversion:default
ちなみに、マニフェストの削除は、
  # svccfg delete svc:/network/subversion
サービスの開始、停止は、
  # svcadm start svc:/network/subversion
  # svcadm stop svc:/network/subversion
になります!

-その他
[[Solaris10付属の2.0系apacheのSMFによる管理>http://sy2920.s151.xrea.com/solaris/web-server.html]]
記事メニュー
目安箱バナー