火曜日 5 27, 2008

昨日 GlassFish Awards Program (GAP) について書きましたが、その後寺田さんも ブログにこのコンテストのことを書いて いますね。

バグレポート部門は、バグレポートを提出して、それを コンテストに応募すれば良いようです。選考基準は

  • Fix のインパクト
  • Fix の困難さ
  • Fix の完全性
  • レポートのテストケースの明快さ
  • bug fix の記述
  • Fix の有用性
といろいろと書かれていますが、要はそのバグがどれだけ重要で直ることに意味があり、また開発者にとって修正時に必要となる情報(再現方法や環境の記述や再現プログラムの作成、わかるなら修正方法)が丁寧に書かれていれば良い点がつくということのようですね。

で、今現在 バグレポート部門にエントリされているのはたった3件 しかありません。後1月で締め切られるのですが、各カテゴリの top 3 report に対して賞金5万ドル(日本円で500万円!)を分け合うようです。現在の3つの レポートは Hudson に対して出ていますが、ぜひ皆さんも Hudson でも GFv2 でも GFv3 でも他の GF プロジェクトでも構いませんのでバグレポートを出してコンテストに エントリーしてみましょう。既にバグレポートを出している人で、寺田さんのようなメールを受け取っている場合は、今すぐにでも出せますね。

わからないことがあれば、 グラジェー discuss_ja@glassfish.dev.java.net メーリングリスト にメールを出してみてください。また、英語で書く際には、上のリストにある3件のエントリーシートを参考にすると良いと思います。

皆さんの参加をお待ちしてます。

月曜日 5 26, 2008

GlassFish Awards Program (GAP) って皆さんご存じですか?このコンテストは アクエリアムでも紹介 しましたが、日本からのエントリーはまだ無いようですね。もしエントリーしたという人がいたらぜひお知らせください。エントリーの受付は6月末までですので、我こそはと思う方はぜひチャレンジしてみてください。

今までエントリーされているものは こちらから参照できます。英語でエントリーしなければならないところがちょっと敷居が高いと感じるかもしれませんが、 賞金はかなり良い と思います。1人ではちょっとと思う方は、3名までのチームでのエントリーも可能です。 グラジェーや、 discuss_ja@glassfish.dev.java.net メーリングリストで仲間を集めたり、よくわからない点を相談していただいても良いと思います。

GAP コンテストのルール は英語なのですが、主要なところを列挙してみます。

  • バグレポート部門と、コントリビューション部門の2つがあります。
  • エントリーする人は GF Community メンバーである必要があります。まだメンバーでない方は、こちらからメンバーになってください。
  • エントリーは英語で、1000ワード以内で書いてください。
  • エントリーの送り先は、 mailto:gap-submissions@glassfish.dev.java.net です。
  • エントリーには、氏名とメールアドレス、住所、国籍を入れてください。
疑問点や、コメントや相談事項があれば、このブログにコメントとして書いて頂いても良いですし、グラジェーや discuss_ja@glassfish.dev.java.net にメールしてみてください。

実際にエントリーする場合は、 上に書いたとおり、既存のエントリーが見られます ので、それらを参照して頂くのが良いだろうと思います。

皆様の参加をお待ちしております。

月曜日 5 19, 2008

Solaris x86 向けの Adobe Reader が 2009 年にリリースされる予定とのことです。 詳細は blogs.adobe.com の次のブログエントリに書かれています。

Adobe Reader on Solaris x86 coming in 2009!

早く出てくれると良いですね。

水曜日 5 07, 2008

日本は連休中だったので、気がつかなかった人が多いかもしれませんが、5月2日に Sun xVM VirtualBox 1.6 がリリースされました。ということでブログを書こうと思ったら、今回もヤッパリ辻さんに先をこされましたね。辻さんのブログに 1.6 での変更点が日本語で投稿されているので、くわしくはそちらをご覧ください。Mac OS X と Solaris が正式にホストOSとしてサポートされたのは嬉しいですね。ダウンロードは こちらからどうぞ。

で、何をしようかなと思ったのですが、やっぱり連休中に発表された OpenSolaris 2008.05 を入れてみました。このリリースは、CD 1枚でブートしインストールできるので、今までの DVD イメージのダウンロードに比べればずいぶんと楽になりました。ダウンロードは こちらになります。

で、やることといえば、CD iso イメージファイルを VirtualBox から起動するだけです。すると次のような画面があがってきます。

あとは「OpenSolaris をインストールする」アイコンをクリックして指示にしたがってインストールするだけです。CD1枚分ですからわりと短時間で終わります。

こんな感じになります。 必要なパッケージは Package Manager を使って後から追加できます。それから VirtualBox の Solaris GuestAdditions もインストールしておきましょう。

Windows を使っている方も、Mac を使っている方も、Linux を使っている方も、そしてもちろん Solaris を使っている方も、VirtualBox 1.6 を入れてしまえば OpenSolaris 2008.05 の環境を簡単に作れますので、ぜひ皆さんお試しください。ただ、他の VM 製品も同じですが、ホストOS のメモリだけは増やしておいてください。今回はゲストOSの OpenSolaris 2008.05 に 1GB メモリを割り当てましたが、この場合ホストOS に 2GB ないとちょっと苦しいかもしれません。

水曜日 3 26, 2008

先日は ホットトピックセミナー にたくさんの方が参加していただきありがとうございました。

ちょっと遅くなってしまいましたが、セミナーででたいくつかの質問について OpenDS チームの人から解答をもらったので、お知らせします。

質問: 他のディレクトリーサーバーではなくて OpenDS を使う理由はなんですか?

解答は OpenDS プロジェクトの FAQ にだいたい書かれているのでこちらを是非みて欲しいということでしたが、英語でもありますし、追加でいくつか情報ももらったので簡単にまとめてみます。
まず、オープンソースのディレクトリサーバーは、OpenLDAP, Fedora Directory Server, Apache Directory Server などいくつかあるのですが、あえて新しく OpenDS プロジェクトを始めたのは、1つには、OpenDS プロジェクトを始めたメンバーが実現したいと思っていることと、既存のオープンソースプロジェクトのゴールやポリシーに差があるため、それらに入っていってソースコードを分岐させてしまうのは、コミュニティを混乱させてしまうかもしれないからということです。
では、実現したいことは何かというと、次のようになります。
  1. 性能

    最終的には数億のエントリーを保持し、1秒間に数万オペレーションをひじょうに短いレスポンスタイムでこなせるように考えて、基本設計をしています。
  2. 使いやすさ

    セミナーでもすこしお見せしましたが、インストールや使い勝手が難しくならないようにしています。
  3. 機能

    LDAP の基本機能をどれだけインプリメントしているかという点では、実は既に Sun Java System Directory Server を凌駕している部分もあります。詳しい比較表は、 こちらにあります。
  4. 互換性・安定性

    もともと商用のディレクトリサーバーを開発しているチームが OpenDS もやっているので当然ですが、互換性を気を配りながら新しい機能を追加していますし、安定性も犠牲にはしません。このあたりは一般的なオープンソースのプロジェクトとはちょっと違うところなのかもしれません。
ディレクトリサーバー自体は、裏方で仕事をする役割なので、なかなか派手なアピールポイントを上げるのは難しいのですが、実際に使ってみていただければその良さがわかるだろうとのことです。

質問: CDDL ライセンス以外も採用する予定はないか?

OpenDS コミュニティとして、現時点で CDDL 以外を採用する話はでていないとのことですが、セミナーででた質問の趣旨は理解したので、そういった要求があるかどうか調査はしてみたいといのことでした。実際に CDDL ライセンスだけでは問題があるという具体的な要望がありましたら、ぜひ OpenDS コミュニティのメーリングリストなどに要求してみてください。英語ではちょっとという方は、私のほうに連絡していただければサポートします。このブログ(どのエントリーでもかまいません)にコメントとして書いて頂いても OK です。

なお、セミナーの時は時間配分がわるくてあまり質問の時間をとれませんでした。申し訳ありませんでした。セミナーの時に聞けなかった質問やその後に新たに思いついた質問、試しに OpenDS を使ってみたけどうまくいかないなどのコメントや質問があれば、ぜひこのブログにコメントとして書いてください。時間は多少かかるかもしれませんが解答していきたいと思います。

月曜日 3 24, 2008

前回、 Netbeans 6.0.1 で OpenDS のビルド という記事を 3/18 に投稿しましたが、その後元となる Ludo の記事が 3/21 に更新されたようです。

Developing OpenDS with the NetBeans IDE

Source Repository の中に Netbeans Project に必要なファイルを入れていたのですが、どうもうまくないということで、 OpenDS wiki の中に zip ファイルとしておかれたようです。

自分でまだ試していないのですが、手順としては次のようになるようです。

  1. svn で OpenDS のファイルを取ってくる。これは前のエントリで書いたのと同じです
  2. 次に、 OpenDS Netbeans Project ファイルをとってくる
  3. NetBeans IDE のファイルメニューで「プロジェクトを開く」を選択し、展開したファイルの場所を指定する

取り急ぎお知らせまで。

火曜日 3 18, 2008

OpenDS のビルド方法は https://opends.org/wiki//page/BuildingAndRunningOpenDSWithinNetbeans に書かれています。これを日本語にするのは面倒だなぁと躊躇していたら、 Ludo がもっと簡単な方法をポストしてくれました

Netbeans 6.0.1 をダウンロード およびインストールしたら、メニューから バージョン管理->Subversion->チェックアウト を選択 します。Subversion リポジトリの指定は

  1. リポジトリURL: https://opends.dev.java.net/svn/opends
  2. ユーザー: java.net のアカウント
  3. パスワード: java.net アカウントのパスワード
です。ネットワークによってはプロキシ構成をする必要があるかもしれません。「次へ」 ボタンを押すと、次はチェックアウトするフォルダのダイアログです。設定は
  1. リポジトリフォルダ: trunk
  2. ローカルフォルダ: ファイルを保存するディレクトリ
  3. チェックアウト後に Netbeans プロジェクトをスキャンをチェック
以上で OpenDS のファイルを取ってきてくれると思います。次の作業はビルドですね。上のドキュメントだと、 ここから になります。ソースコードを見てみようというかたはぜひお試しください。
ところで、ここまでのデモでは LDAP のポートに 1389 とか 2389 を使ってきました。実際のところは LDAP ポートが 389 でなければならないケースというのはそれほど多くあるわけではないと思いますが、 一般的に使われる 389 にしたいという要求も場合によっては出てくると思います。

一番簡単なのは、UNIX なら OpenDS を root アカウントでインストールしてしまう方法です。UNIX の場合、一般ユーザーは 1024 以降のポートにしかアクセスできないために 1389 のような番号を使って いるので、root ならこの制約はありません。でも本当にこの方法で良いのでしょうか?root 権限を 不正に取られてしまうと、システムに対していろいろな悪さができてしまうので、できれば避けたいですね。

Solaris 10 でしたら、このような場合に、 Solaris 10 最新セキュリティ技術 - 最小特権モデル に記述されているような方法で、一般ユーザーのままで、1024 より小さなポート番号を使うことも可能です。

OpenDS でこのあたりの設定を行う方法は、 https://www.opends.org/wiki/page/RunningTheServerAsANonRootUser に記述されています。簡単に要約すると、例えば OpenDS を opends というアカウントにインストールし、 実行する場合、この opends アカウントに対して、次の usermod コマンドで必要な役割を設定します。

# usermod -K defaultpriv=basic,net_privaddr,sys_resource,-proc_info,-file_link_any opends
このコマンドでは
  1. basic: 通常のユーザーがもっている特権
  2. net_privaddr: 1023 以下のポートにアクセスできる特権
  3. sys_resource: file descriptor の数を変更する特権(それ以外も)
  4. -proc_info: 多のユーザーのプロセスを見る特権は必要ないので消す
  5. -file_link_any: 多のユーザーのファイルへの hard link は必要ないので消す
といった操作を opends アカウントに対して行っています。これで OpenDS から 389 ポートをつかって LDAP の 通信を行えるようになります。

Linux の場合は、例えば iptables を使って、ポートを変換する方法があります。

# iptables --append PREROUTING --table nat --protocol tcp --dport 389 --jump REDIRECT --to-port 1389
ぜひお試しください。
Sun Java System Web Server 7.0 (WS7)は、 寺田さんのブログでもたびたび取り上げられていますね。今回は WS7 の認証に OpenDS を使う 簡単な方法を紹介しましょう。

英語のドキュメントは、 https://opends.org/wiki/page/SunJavaSystemWebServer7.0 にあります。基本的にこのドキュメントに沿って設定を進めていきます。

WS7 のダウンロードですが、英語のページになってしまいますが、 http://www.sun.com/download/index.jsp?cat=Web%20%26%20Proxy%20Servers&tab=3 より Web Server 7.0 Update 2 を取って来れます。これは日本語を含む7言語にメッセージを 翻訳した多言語版になります。インストールはセットアップコマンドを実行するだけです。Solaris を OS に使っている場合は、Package 版のほうが後々のパッチの保守等が簡単かもしれません。この場合は、 http://www.sun.com/software/javaenterprisesystem/getit.jsp からダウンロードしてください。インストール方法については寺田さんや他の人のブログを参照して ください。

さて、WS7 がインストールできて、OpenDS も起動していることを確認してください。次にまず やることは、WS7 の管理コンソールにアクセスすることです。一般的には https://localhost:8990/ で管理コンソールにアクセスできると思います。設定時に入力したパスワードでログインしてください。

次は、OpenDS を使って認証の設定です。管理コンソールの「共通操作」タブにある「構成を編集」という ボタンをクリックしてください。移動した画面で、次は「アクセス制御」タブをクリックします。すると、 認証データベースの画面が表示されていると思います。もし表示されなかった場合は、サブタブが「認証 データベース」になっているか確認してください。

次に「新規」ボタンをクリックして、認証データベースを作成します。入力項目としては次のようになり ます。

  1. データベースタイプ: LDAP サーバー
  2. 認証データベース名: なんでも良いですが、今回は OpenDS とします
  3. ホスト名: OpenDS が動作しているホスト名です。今回は OpenDS と WS を同じホストに入れたので localhost にします
  4. ポート: OpenDS のポートです。デモだと 1389 か 2389 になると思います
  5. 接続に SSL を使用: 今回のデモでは「いいえ」になります
  6. ベース DN: 今回のデモだと、dc=example,dc=com になります
  7. バインド DN: 今回のデモでは OpenDS で anonyous search できるので、入力の必要はありません
  8. パスワード: 同上
ここまで入力できたら「了解」ボタンをクリックします。これで OpenDS という名前の認証データベースができました。

次は、「アクセス制御リスト(ACL)」というサブタブをクリックし、「新規」ボタンを続いてクリックします。入力値は 次のようになります。

  1. リソース: デモでは規定値の URI と /* のままとします
  2. 認証データベース: 上で作成した OpenDS を選択します
  3. 認証方法: 今回のデモでは基本(Basic)を選択します
  4. Realm: 今回は入力の必要はありません
  5. Deny Access With: デフォルトメッセージにしておきます
次に「アクセス制御エントリ(ACE)で「新規」ボタンをクリックし、次の値を入力します。 まず1つめは、認証なしのアクセスはすべてアクセスを許可しないよう設定します。
  1. アクセス権: 許可しない
  2. ユーザーとグループ: すべて(認証無し)
  3. 他はすべてそのまま
で、「了解」ボタンをクリックします。2つめは、OpenDS で認証した場合アクセスを許可するよう設定します。 再度「アクセス制御エントリ(ACE)」で「新規」ボタンをクリックしてください。入力値は次のようになります。
  1. アクセス権: 許可する
  2. ユーザーとグループ: 認証データベース中のすべて
  3. 他はすべて規定値のまま
で、「了解」ボタンをクリックします。より細かい設定をする場合は、http://docs.sun.com/ にある WS7 の ドキュメントを参照してください。

さて、管理コンソールの左上に黄色のアイコンと「配備保留中」というリンクがあると思います。ここをクリック して、「配備」を実行してください。インスタンスが稼働していれば OK です。稼働していなければ、インスタンス を起動してください。

これで、Web Server にアクセスしてみましょう。デフォルトポートはおそらく http://localhost:8080/ だと 思います。ここにアクセスすると、ユーザー名とパスワードを聞いてくると思います。OpenDS のインストール時に テスト用に生成したユーザーエントリの値を使ってアクセスしてみましょう。例えば、

  1. ユーザー名: user.1
  2. パスワード: password
でアクセスできます。ちなみにインストール時にテスト用に生成されたアカウントのパスワードは常に password になっています。

今回はデモと言うことで簡易な方法を使っていますが、ここまでとても簡単に設定できることがおわかりいただけると思います。 ぜひ皆さんも試してみてください。

月曜日 3 17, 2008

JMX モニタリングの設定

JMX モニタリングを有効にしてみましょう。手順は英語ですが、 https://www.opends.org/wiki/page/AccessingOpenDSMonitoringInformationThroughJconsole に書かれています。dsconfig コマンドを使って設定していますが、ここでは試しに dsconfig コマンドの Interactive Mode を使って設定してみます。長い文字列を打ち込まなくて済むので、私のようにタイプミス が多い人には楽かもしれません。ドキュメントなどにはコマンドラインからオプションを指定して設定してしまう方法で書かれていると思います。実際のところ今回 Interactive Mode でこの blog エントリーを書いてみたのですが、ものすごく冗長になってしまいました。これは dsconfig に Interactive Mode があるという紹介も兼ねてますので今回はこのまま出します。 実際の操作で、コマンドラインから値をすべて指定してしまうのか、Interactive Mode を使うのは好みの問題ですので、使いやすいと思った方で設定してください。

まず、interactive mode でサーバーに接続します。ここでは前回インストールしたサーバーのうち2つ目 を選択しています。

% ./dsconfig -h localhost -p 2389 -D "cn=directory manager" -w password
次に LDAP を選択します。
>>>> Specify OpenDS LDAP connection parameters
How do you want to connect?

    1)  LDAP              
    2)  LDAP with SSL     
    3)  LDAP with StartTLS

Enter choice [1]: 1 <-- 1 を選択
dsconfig で行える操作一覧が出てきます。まずは、Connection Handler を選択します。
>>>> OpenDS configuration console main menu

What do you want to configure?

    1)   Access Control Handler               20)  Log Rotation Policy     
    2)   Account Status Notification Handler  21)  Matching Rule           
    3)   Alert Handler                        22)  Monitor Provider        
    4)   Attribute Syntax                     23)  Password Generator      
    5)   Backend                              24)  Password Policy         
    6)   Certificate Mapper                   25)  Password Storage Scheme 
    7)   Connection Handler                   26)  Password Validator      
    8)   Crypto Manager                       27)  Plugin                  
    9)   Debug Target                         28)  Plugin Root             
    10)  Entry Cache                          29)  Replication Domain      
    11)  Extended Operation Handler           30)  Replication Server      
    12)  Global Configuration                 31)  Root DN                 
    13)  Group Implementation                 32)  Root DSE Backend        
    14)  Identity Mapper                      33)  SASL Mechanism Handler  
    15)  Key Manager Provider                 34)  Synchronization Provider
    16)  Local DB Index                       35)  Trust Manager Provider  
    17)  Local DB VLV Index                   36)  Virtual Attribute       
    18)  Log Publisher                        37)  Work Queue              
    19)  Log Retention Policy                                              

    q)   quit

Enter choice: 7 <-- 7 を選択します
次に Connection Handler の作成をします。私は 4 で一度 JMX Connection Handler を 消してから再作成すているため 2 を選択していますが、既にある場合は(インストール直後は あります)3 の編集を選択してください。
>>>> Connection Handler management menu 

What would you like to do?

    1)  List existing Connection Handlers           
    2)  Create a new Connection Handler             
    3)  View and edit an existing Connection Handler
    4)  Delete an existing Connection Handler       

    b)  back
    q)  quit

Enter choice [b]: 2 <-- 2 を選択(あるいは 3 を選択してください)
JMX Connection Handler を選択します。
>>>> Select the type of Connection Handler that you want to create:

    1)  JMX Connection Handler 
    2)  LDAP Connection Handler
    3)  LDIF Connection Handler

    ?)  help  
    c)  cancel
    q)  quit  

Enter choice [c]: 1 <-- 1 を選択
まず、JMX Connection Handler を有効にします。
>>>> Enter a name for the JMX Connection Handler that you want to create: JMX Connection Handler


>>>> Configuring the "enabled" property

    Indicates whether the Connection Handler is enabled.

Select a value for the "enabled" property:

    1)  true 
    2)  false

    ?)  help  
    c)  cancel
    q)  quit  

Enter choice [c]: 1 <-- 1 を選択
次にポートを設定します。Multi-Master Replication 構成で同じホストにインストール した場合、両方とも同じポートを設定しているはずです。この場合重ならないように別々の ポートを選択してください。規定値は 1689 になっている場合が多いと思いますが、ここでは 1000 足して 2689 にしています。
>>>> Configuring the "listen-port" property

    Specifies the port number on which the JMX Connection Handler will listen
    for connections from clients.

    Only a single port number may be provided.

    Syntax:  1 <= INTEGER <= 65535

Enter a value for the "listen-port" property: 2689 <-- 2689 を選択
今回は SSL 等は設定してませんので、他の項目は変更しません。
>>>> Configure the properties of the JMX Connection Handler

        Property              Value(s)                                         
        -----------------------------------------------------------------------
    1)  allowed-client        All clients with addresses that do not match an  
                              address on the deny list are allowed. If there is
                              no deny list, then all clients are allowed.      
    2)  denied-client         If an allow list is specified, then only clients 
                              with addresses on the allow list are allowed.    
                              Otherwise, all clients are allowed.              
    3)  enabled               true                                             
    4)  key-manager-provider  -                                                
    5)  listen-port           2689                                             
    6)  ssl-cert-nickname     Let the server decide.                           
    7)  use-ssl               false                                            

    ?)  help                                                    
    f)  finish - apply any changes to the JMX Connection Handler
    c)  cancel                                                  
    q)  quit                                                    

Enter choice [f]: f <-- 変更を適用する

The JMX Connection Handler was created successfully

Press RETURN to continue 


>>>> Connection Handler management menu 

What would you like to do?

    1)  List existing Connection Handlers           
    2)  Create a new Connection Handler             
    3)  View and edit an existing Connection Handler
    4)  Delete an existing Connection Handler       

    b)  back
    q)  quit

Enter choice [b]: 


>>>> OpenDS configuration console main menu

What do you want to configure?

    1)   Access Control Handler               20)  Log Rotation Policy     
    2)   Account Status Notification Handler  21)  Matching Rule           
    3)   Alert Handler                        22)  Monitor Provider        
    4)   Attribute Syntax                     23)  Password Generator      
    5)   Backend                              24)  Password Policy         
    6)   Certificate Mapper                   25)  Password Storage Scheme 
    7)   Connection Handler                   26)  Password Validator      
    8)   Crypto Manager                       27)  Plugin                  
    9)   Debug Target                         28)  Plugin Root             
    10)  Entry Cache                          29)  Replication Domain      
    11)  Extended Operation Handler           30)  Replication Server      
    12)  Global Configuration                 31)  Root DN                 
    13)  Group Implementation                 32)  Root DSE Backend        
    14)  Identity Mapper                      33)  SASL Mechanism Handler  
    15)  Key Manager Provider                 34)  Synchronization Provider
    16)  Local DB Index                       35)  Trust Manager Provider  
    17)  Local DB VLV Index                   36)  Virtual Attribute       
    18)  Log Publisher                        37)  Work Queue              
    19)  Log Retention Policy                                              

    q)   quit

Enter choice: q
以上です。

次に、root DN に JMX read, write, notify privilege を与えます。 先ほどと同様、まずは接続です。

% ./dsconfig -h localhost -p 2389 -D "cn=directory manager" -w password


>>>> Specify OpenDS LDAP connection parameters
How do you want to connect?

    1)  LDAP              
    2)  LDAP with SSL     
    3)  LDAP with StartTLS

Enter choice [1]: 1
Root DN の変更なので、31 を選択します。
>>>> OpenDS configuration console main menu

What do you want to configure?

    1)   Access Control Handler               20)  Log Rotation Policy     
    2)   Account Status Notification Handler  21)  Matching Rule           
    3)   Alert Handler                        22)  Monitor Provider        
    4)   Attribute Syntax                     23)  Password Generator      
    5)   Backend                              24)  Password Policy         
    6)   Certificate Mapper                   25)  Password Storage Scheme 
    7)   Connection Handler                   26)  Password Validator      
    8)   Crypto Manager                       27)  Plugin                  
    9)   Debug Target                         28)  Plugin Root             
    10)  Entry Cache                          29)  Replication Domain      
    11)  Extended Operation Handler           30)  Replication Server      
    12)  Global Configuration                 31)  Root DN                 
    13)  Group Implementation                 32)  Root DSE Backend        
    14)  Identity Mapper                      33)  SASL Mechanism Handler  
    15)  Key Manager Provider                 34)  Synchronization Provider
    16)  Local DB Index                       35)  Trust Manager Provider  
    17)  Local DB VLV Index                   36)  Virtual Attribute       
    18)  Log Publisher                        37)  Work Queue              
    19)  Log Retention Policy                                              

    q)   quit

Enter choice: 31 <-- 31 を選択
変更を加えるため、1を選択します。
>>>> Root DN management menu 

What would you like to do?

    1)  View and edit the Root DN

    b)  back
    q)  quit

Enter choice [b]: 1 <-- 1 を選択
1 の default-root-privilege-name を変更するので 1 を選択します。
>>>> Configure the properties of the Root DN

        Property                     Value(s)                                  
        -----------------------------------------------------------------------
    1)  default-root-privilege-name  backend-backup, backend-restore,          
                                     bypass-acl, cancel-request, config-read,  
                                     config-write, disconnect-client,          
                                     ldif-export, ldif-import, modify-acl,     
                                     password-reset, privilege-change,         
                                     server-restart, server-shutdown,          
                                     unindexed-search, update-schema           

    ?)  help                                     
    f)  finish - apply any changes to the Root DN
    c)  cancel                                   
    q)  quit                                     

Enter choice [f]: 1 <-- 1 を選択
read, write, notify privilege を追加するため、2 を選択します。
>>>> Configuring the "default-root-privilege-name" property

    Specifies the names of the privileges that root users will be granted by
    default.

The "default-root-privilege-name" property has the following values:

    *)  backend-backup         *)  ldif-import     
    *)  backend-restore        *)  modify-acl      
    *)  bypass-acl             *)  password-reset  
    *)  cancel-request         *)  privilege-change
    *)  config-read            *)  server-restart  
    *)  config-write           *)  server-shutdown 
    *)  disconnect-client      *)  unindexed-search
    *)  ldif-export            *)  update-schema   

Do you want to modify the "default-root-privilege-name" property?

    1)  Keep these default values
    2)  Add one or more values   
    3)  Remove one or more values
    4)  Remove all values        

    ?)  help
    q)  quit

Enter choice [1]: 2 <-- 2 を選択
jmx-read, jmx-write, jmx-notify を選択します。
Select the values you wish to add:

    1)  data-sync     
    2)  jmx-notify    
    3)  jmx-read      
    4)  jmx-write     
    5)  proxied-auth  
    6)  Add all values

    ?)  help  
    c)  cancel
    q)  quit  

Enter one or more choices separated by commas [c]: 2,3,4 <-- 2, 3, 4 を選択

Press RETURN to continue 
変更後の情報が出力されるので、この値を使うよう指定します。
>>>> Configuring the "default-root-privilege-name" property (Continued)

The "default-root-privilege-name" property has the following values:

    *)  backend-backup         *)  ldif-export     
    *)  backend-restore        *)  ldif-import     
    *)  bypass-acl             *)  modify-acl      
    *)  cancel-request         *)  password-reset  
    *)  config-read            *)  privilege-change
    *)  config-write           *)  server-restart  
    *)  disconnect-client      *)  server-shutdown 
    *)  jmx-notify             *)  unindexed-search
    *)  jmx-read               *)  update-schema   
    *)  jmx-write                                  

Do you want to modify the "default-root-privilege-name" property?

    1)  Use these values                                                       
    2)  Add one or more values                                                 
    3)  Remove one or more values                                              
    4)  Remove all values                                                      
    5)  Reset to the default values: backend-backup, backend-restore,          
        bypass-acl, cancel-request, config-read, config-write,                 
        disconnect-client, ldif-export, ldif-import, modify-acl,               
        password-reset, privilege-change, server-restart, server-shutdown,     
        unindexed-search, update-schema                                        
    6)  Revert changes                                                         

    ?)  help
    q)  quit

Enter choice [1]: 1 <-- 1 を選択

Press RETURN to continue 
変更を適用します。
>>>> Configure the properties of the Root DN

        Property                     Value(s)                                  
        -----------------------------------------------------------------------
    1)  default-root-privilege-name  backend-backup, backend-restore,          
                                     bypass-acl, cancel-request, config-read,  
                                     config-write, disconnect-client,          
                                     jmx-notify, jmx-read, jmx-write,          
                                     ldif-export, ldif-import, modify-acl,     
                                     password-reset, privilege-change,         
                                     server-restart, server-shutdown,          
                                     unindexed-search, update-schema           

    ?)  help                                     
    f)  finish - apply any changes to the Root DN
    c)  cancel                                   
    q)  quit                                     

Enter choice [f]: f <-- f を選択

The Root DN was modified successfully

Press RETURN to continue 
以上です。Status Panel から OpenDS を一度停止し、再度起動してください。

jconsole の起動

次は jconsole を起動して、接続します。jconsole は JAVA_HOME/bin にインストールされています。 J2SE 5.0 と Java 6 で多少 UI が異なりますが、やることは JMX URL の指定と、user 名、パスワード の指定です。

  1. JMX URL: service:jmx:rmi:///jndi/rmi://localhost:2689/org.opends.server.protocols.jmx.client-unknown
  2. Username: cn=directory manager
  3. password: password
以上で、 https://www.opends.org/wiki/page/AccessingOpenDSMonitoringInformationThroughJconsole に書かれているように jconsole からモニタリングができます。ぜひお試しください。

金曜日 3 14, 2008

OpenDS の QuickSetup をつかうと、短時間でしかも簡単に Multi-Master Replication 構成で OpenDS をインストールすることができます。今回は以下の図のような設定にします。本来なら2台のホストに別々にインストールするのですが、今回はデモということで1台のマシンに2つの OpenDS を入れてしまいます。そのためインストールディレクトリとポート番号はそれぞれの OpenDS で異なる値を使うようにします。

OpenDS インストーラの起動

OpenDS は Java Web Start を使ってインストールできてしまいます。まず http://www.opends.org にアクセスして、Downloads のところにある Install Latest with QuickSetupをクリックするだけです。こ れでインストーラが起動します。新規インストールの場合は Install New Server Instance を選択し、 Next ボタンをクリックしてください。

OpenDS の設定

次はサーバーの設定です。今 回の設定は次のようにしました。
  1. Installation Path: /export/home/shioda/OpenDS1
  2. Host Name: localhost (適宜変更してください)
  3. LDAP Listener Port: 1389 (root でない場合は 1024 以降のポートになります)
  4. LDAP Secure Access: disabled(今回は disable で設定します)
  5. Root User DN: cn=Directory Manager

パスワードは適宜入力してください。

セキュリティ設定 今回は LDAP Secure Access を disable にして設定していますが、その横の Configure ボタンを押すと、次の画面で設定を行えます。

トポロジー設定

ここで、data replication のトポロジー設定を行います。今回は、最初のインストールなので、次のように設定しました。
  1. Tis server will be a part of replication topology を選択
  2. Replication Port+ 8989 (既定値)

ディレクトリデータの入力

ディレクトリデータを入力できます。テストの場合は、Bind DN< は既定値の dc=example,dc=com、またデータは自動生成したものをいくつか入れるということで、Import Automatically Generated Sample Data を選択すればよいでしょう。データをお持ちの場合は、 Bind DN の変更や ldif ファイルの指定を行ってください。

以上でインストールに必要な入力はすべて終わりました。入力データをチェックして、インストールを開始してください。インストールに成功すると、画面の中程に Launch Status Panel というボタンが表示されます。ここをクリックするとステータスパネルが表示されます。パスワードを聞かれますが、こ れはインストールの設定時に入力したものになります。

以上で、Multi-Master Replication 構成の最初の OpenDS インストールが終わりました。ここまでは、ネットワークやサンプルデータの生成数にもよりますが、3 - 5分程度で終わったのではないかと思います。スタンドアロン構成で使う場合は、トポロジ設定のところで This will be a standalone server を選択するだけであとは同じになります。

2台目の OpenDSをインストールし Multi-Master Replication 構成で起動

今回はデモということで、同じマシンに2台目の OpenDS をインストールしてしまいます。もう1台マシンを用意できる方は別のマシンにインストールしてください。もう一度 OpenDS のインストーラを起動すると設定画面が出てきます。設定は次のようにしました。
  1. Installation Path: /export/home/shioda/OpenDS2
  2. Hostname: localhost (適宜変更してください)
  3. LDAP Listener Port: 2389 (使用中の場合、1000 づつポート番号が加算されていきます)
  4. LDAP Secure Access: disable (1台目と同じにします)
  5. Root User DN: cn=Directory Manager
  6. Password:
以上です。

トポロジ設定

今回も This server will be part of a replication topology を選択します。Replication Port は 9989 になっています。すでに1台目の OpenDS をインストール・実行済みですので、There is a server in the topology を選択し、1台目の OpenDS の情報を入力します。
  1. Host Name: localhost (1台目の OpenDS をインストールしたホスト名 )
  2. Port: 1389 (1台目の OpenDS のポート )
  3. Admin User: cn=Directory Manager
  4. Password:

Global Admin の設定

Global Administrator のアカウント作成とパスワードの設定を行います。このアカウントは replicatin トポロジーの管理に使用されます。

データの複製

1 台目の OpenDS からデータを複製します。サンプルデータを入れた場合は、Create local instance of existing base Dns and configure replication を選択し、 dc=example,dc=com もチェックします。

設定作業は以上で終わりです。インストールを開始してください。ここまでおそらく10分かからずに2台の OpenDS インストール、および Multi-Master Replication での構成が終わったと思います。ぜひみなさんもお試しください。

火曜日 2 19, 2008

VirtualBoxのことをブログに書こうと思っていたのですが、時間ばかりどんどんたってしまいました。 すでにこちらに日本語でブログのエントリがありますね。

でもせっかくなので、画面だけでもお見せしておきます。環境は Solaris Express Developer Edition (SXDE) 1/08 で、Sun Fire X2100 2GB Memory のマシンに入れました。表示は普段会社で使っている SunRay です。インストールするといっても、pkgadd するだけなので悩むこともあまりありませんでした。ただ、1つ注意する点というか同僚がはまった点ですが、Sun のキーボードをつかっている場合、デフォルトでホストキーにアサインされる右 Ctrl キーが存在しないので、最初に /usr/bin/VirtualBox を起動したら、まず最初にファイル->環境設定 ダイアログを開いて、ホストキーを変更する必要がありました。そうしないとマウスを VM にとられたら戻って来れなくなります :-) 他のシステムにインストールする場合でもここは念のため確認したほうがよさそうですね。

あと、Solaris package には VBoxGuestAdditions がなぜか入っていなかったのですが、 こちらから ISO イメージをダウンロードできます。これをクライアント OS にインストールしないと、rdesktop のような RDP クライアントからアクセスしたときにマウスポインタが2つ表示されてしまうなどの問題がでます。

というわけで、こんな感じで、Windows XP と Ubuntu 7.10 が動いてます。

皆さんもぜひお試しください。

木曜日 10 11, 2007

Application Server 8.2p3 パッチが SunSolve からダウンロードできるようになったようです。詳細についてはパッチの README ファイルをご覧ください。

Enterprise Edition のパッチ

124672-04 Application Server Enterprise Edition 8.2, Solaris: SVR4 patch
124673-04 Application Server Enterprise Edition 8.2, _x86: SVR4 patch
124674-04 Application Server Enterprise Edition 8.2, RHEL4.0 RHEL3.0 Linux: Pkg_patch
124675-03 Application Server Enterprise Edition 8.2, Solaris: File based patch
124676-03 Application Server Enterprise Edition 8.2, _x86: File based patch
124677-03 Application Server Enterprise Edition 8.2, Linux: File based patch
124678-03 Application Server Enterprise Edition 8.2, Windows: File based patch
124684-05 Application Server Enterprise Edition 8.2, Windows 2000/2003 XP(MSI package base): Maintenance patch

Platform Edition のパッチ

124679-03 Application Server Platform Edition 8.2, Solaris: File based patch
124680-03 Application Server Platform Edition 8.2, _x86: File based patch
124681-03 Application Server Platform Ed 8.2, Linux: File based patch
124682-03 Application Server Platform Edition 8.2, Windows: File based

月曜日 10 08, 2007

先週 GlassFish と JRuby on Rails 簡単インストールを書きましたが、その直後に Arun からスクリーンキャストが出ていましたのでお知らせしておきます。

このスクリーンキャストは英語の音声ですが、わりとわかりやすいのと画面を見ているだけでも GlassFish で JRuby on Rails の環境をセットアップしたり使うのが簡単だということがよくわかりますので、興味のある方はぜひご覧になってみてください。なお、このスクリーンキャストに関連するブログはこちらになります。

追伸: 30分ほど前に アクエリアムRails 用 GlassFish と GlassFish 用 Railsという題で荻布さんから翻訳記事が投稿されていていましたね。スクリーンキャスト以外にもいろいろな情報へのリンクがありますので、ぜひそちらもご覧ください。

木曜日 10 04, 2007

Mac 用 GlassFish が http://www.apple.com/downloads/macosx/unix_open_source/からダウンロードできるようになっているんですね。Barton のブログで知りました。

私は Mac を持っていないので試していませんが、Mac を使っている方、ぜひダウンロードしてみてください。

This blog copyright 2008 by shioda