Calendar Server 6.3 での変更内容および新機能は、次のとおりです。
「Calendar Server 6.3 では、Calendar Express UI は自動的にインストールされない」
「comm_dssetup.pl: Calendar Server 6.3 でのパスワードファイルの新規オプションによるセキュリティー強化」
「Calendar Server 6.3 ユーティリティー csdb、cscal、csuser の cal/sbin への再配置」
これまで、Schema 2 用 Calendar Server のプロビジョニングには、Delegated Administrator ユーティリティーを使用できましたが、Delegated Administrator コンソールを使用することはできませんでした。これより前のリリースで、Delegated Administrator コンソールは Messaging Server のみを管理するための Web グラフィカルユーザーインタフェースでした。このリリースからは、カレンダ LDAP エントリの管理にも Delegated Administrator コンソールを使用できます。Delegated Administrator コンソールを使用すると、カレンダユーザー、グループ、リソース、ドメインに対して LDAP エントリの追加、削除、および変更を実行できます。Calendar Server 用の新しい画面およびメニュー項目が Delegated Administrator コンソールに追加されました。インタフェースの使用方法については、Delegated Administrator のオンラインヘルプを参照してください。『Sun Java System Calendar Server 6.3 管理ガイド』からも、情報を参照できます。
WCAP コマンドで新規パラメータおよび値を使用することで、添付ファイルがサポートされるようになりました。
Universal Web Client (Communications Express) と Connector for Microsoft Outlook のユーザーは、予定や作業にファイルを添付したり、添付ファイルを出席依頼とともに送信したりできます。
添付ファイルをサポートするため、WCAP に次の変更が加えられました。
fetchattachment.wcap: 添付ファイルの取得を容易にする新規コマンドが追加されました。このコマンドを使用すると、予定や作業データ自体ではなく添付ファイルだけを取得できます。
deleteattach: storeevents コマンドに新規引数が追加されました。この引数を使用すると、予定や作業自体を削除せずに、予定や作業から既存の添付ファイルを削除できます。
fetchattach: すべての fetch_by_* コマンドに、予定および作業データ自体とともに添付ファイルを返すことのできる新規パラメータが追加されました。
sendattach: iTIP 出席依頼で実際の添付ファイルを送信するかどうかを指定する新規パラメータが storeevents コマンドに追加されました。
X-S1CS-CLIENT-ATTACH-ID: 添付ファイルの一意の識別子を含む X-Token。添付ファイルの格納時にクライアントが添付ファイル ID を提供した場合にのみ、この X-Token が発行されます。それ以外の場合は、実際の添付ファイルが予定とともに送信されます。
storeevents および storetodos コマンドの、非推奨の attachments 引数に、Calendar Server データストアの外部に格納されている添付ファイルの URL 参照を格納できます。attachments のこの使用方法は、下位互換性のために残されていますが、将来のリリースの配布内容からは削除される予定です。
添付ファイルの詳細は、『Sun Java System Calendar Server 6.3 WCAP Developer’s Guide』を参照してください。
Delegated Administrator を使って LDAP グループを作成できるようになりました。グループには、次の機能が備わっています。
グループはユーザーのリストです。グループには、リスト内のユーザーは「含まれません」。グループはコンテナではありません。
グループには、グループカレンダを含めることができます。
グループに送信される出席依頼は、グループカレンダに加え、すべてのメンバーのカレンダに表示されます。
グループのすべてのメンバーは、グループカレンダに対する同じアクセス権を共有します。
グループカレンダの主な所有者は存在しません。
Calendar Server ソフトウェアの初期のバージョンでは、ドメイン構造はありませんでした。すべてのユーザーおよびグループの LDAP レコードはルートに格納されていました。そのあとのバージョンでは、ホストドメインまたは仮想ドメインと呼ばれる 1 つまたは複数のドメインを選択して確立できました。Calendar Server 6.3 ソフトウェアのリリースでは、すべてのインストールで、デフォルトで複数ドメインモードを使用する必要があります。つまり、少なくとも 1 つのドメインを、ルートドメインの下に置かれるデフォルトドメインとして持つ必要があります。すべてのユーザーおよびグループの LDAP エントリは、このデフォルトドメインに格納される必要があります。また、さらに多くのドメインを持つこともできます。複数ドメインモードの場合、すべての標準的なドメインが、一意のユーザーおよびグループ ID を持つ必要があります。複数ドメインの詳細については、『Sun Java System Calendar Server 6.3 管理ガイド』を参照してください。特に、『Sun Java System Calendar Server 6.3 管理ガイド』の第 10 章「Calendar Server 6.3 の複数ドメイン環境の設定」を参照してください。
実行時環境を作成するために実行する必要がある設定プログラム csconfigurator.sh により、デフォルトドメインの名前が求められます。デフォルトドメインが存在しない場合は、プログラムが作成します。
以前の Calendar Server 配備で複数のドメインを使用していなかった場合、またはドメインを 1 つも使用していなかった場合は、新しいデフォルトドメインに、ユーザーおよびグループの LDAP レコードを移動する必要があります。
スキーマバージョン 2 環境で追加のドメインを作成するには、Sun Java System Delegated Administrator Console または Sun Java System Delegated Administrator Utility を使用します。Delegated Administrator の詳細については、『Sun Java System Delegated Administrator 6.4 管理ガイド』を参照してください。
スキーマバージョン 1 を使用していて、スキーマバージョン 2 に移行しない場合は、Calendar Server ユーティリティー csdomain を使用して追加のドメインを作成できます。
次の機能に対応した画面が設定プログラムに追加されました。
このリリースから、1 つ以上のドメインが常にルートに存在するようになりました。これがデフォルトドメインになります。このため、複数ドメイン環境用のデフォルトドメインの名前を、設定プログラム内に指定できます。
DWP プロトコルおよび CLD プラグインを使用する、分散型データベース環境用のフロントエンドおよびバックエンドマシンの名前を指定できるようになりました。カレンダデータベースは、1 台以上のバックエンドマシンに分散できます。これらのマシンは、1 台のフロントエンドマシンに関連付けることができます。新しい設定プログラムの画面を使って、バックエンドマシンに名前を付け、それをフロントエンドマシンに関連付けることができます。
デフォルトドメインの画面に、カレンダスーパーユーザー (calmaster) の電子メールアドレス用の新規フィールドが追加されました。
定期的な予定の場合、出席者に送信される電子メールの出席依頼に定期的予定の詳細が含まれるようになりました。
csstored デーモンが、各種の Calendar Server データベースを管理するようになりました。ストアにアクセスする各サービスが正しく機能するには、このストアサービスが正常に起動している必要があります。したがって、Calendar Server システムの動作中は常に、フロントエンドおよびバックエンドのすべてのサーバー上でこのサービスが稼働し続けるようにしてください。通常の起動コマンド (start-cal) およびシャットダウンコマンド (stop-cal) は、ほかのデーモンとともに csstored を起動および停止します。
以前のバージョンでは、自動バックアップを設定していなかった場合、Perl スクリプト csstored.pl の実行は不要でした。スクリプトの起動および停止は任意でした。この Perl スクリプトは廃止され、csstored デーモンが導入されました。自動バックアップを設定するかどうかにかかわらず、csstored デーモンの実行は必須となりました。
これまでは、ics.conf のパラメータ local.store.enable を "no" に設定することにより、このスクリプトの実行を無効にすることが可能でした。現在では、local.store.enable をデフォルトの "yes" に設定して、csstored を常に有効にしておく必要があります。
Calendar Server と Messaging Server は、同じ停止および開始機構を使用するようになりました。start-cal コマンドは、watcher プロセスを起動してから、そのほかのプロセスをすべて起動します。watcher プロセスは、その他のサービスの依存関係、およびサービスをどの順序で起動するかを識別します。
登録された各サービス (プロセス) は、Watcher への接続を開きます。プロセスが適切な方法で接続解除されずに終了した場合、Watcher が自動的にそのプロセスを再起動します。定義した間隔内でプロセスが 2 回終了した場合、Watcher はそのプロセスを再起動しません。このタイムアウト間隔は、設定可能です。
Watcher の詳細については、次の情報を参照してください。
Watcher は、登録されたすべてのサービスを監視します。Calendar Server の場合、登録されるプロセスは cshttpd、csadmind、csdwpd、csnotifyd、および csstored です。
デーモン csstored を有効にする必要があります。必ず、設定パラメータ local.store.enable を "y" に設定してください。csstored の有効化は、Calendar Server の以前のバージョンでは任意でしたが、現在は必須になりました。ストアにアクセスする各サービスが起動可能になる前に csstored デーモンの起動が成功する必要があります。このプロセスが停止する場合、依存するプロセスの停止および再起動も必要になります。
Watcher はデフォルトで有効に設定されています。Watcher プロセスを管理するため、次の新規パラメータが、ics.conf ファイルに追加されました。
local.watcher.enable = "y": 起動プログラム (csservice) は、ほかのサービスを起動する前に Watcher の起動を試みます。このパラメータを "n" に設定すると、Watcher プログラムが無効になります。
service.autorestart = "y": Watcher は停止したサービスを自動的に再起動します。"n" の場合、Watcher は停止したサービスを再起動しません。このパラメータを "n" に設定しても、Watcher は引き続きサービスを監視して、障害や非応答エラーメッセージをコンソールおよび cal-svr-base/data/log ファイルに送信します。
local.autorestart.timeout = "600": デフォルトの時間。2 番目のサーバー障害がこの時間内に発生した場合、Watcher は再起動を試行しません。
local.watcher.port: デフォルトポートは "49994" です。ただし、Messaging Server が存在する場合、Messaging Server は自動的にこのポート上で待機するため、Calendar Server と競合します。起こりうる競合を回避するため、Watcher が待機するポートとして別のポートを選択する方が安全です。
Watcher は、単一のログ cal-svr-base/data/log/watcher.log に書き込みます。このログには、次の情報が含まれます。
管理コンソールに送信された障害通知および非応答エラーメッセージ。
すべてのサーバーの停止および起動の記録。
タイムアウト時間内にサーバーの障害が 2 回発生すると、システムはサーバーの再起動試行を停止します。HA システムでは、Calendar Server が停止し、ほかのシステムへのフェイルオーバーが実行されます。
csservice の公開インタフェースは start-cal および stop-cal です。この節では、これらの各ラッパースクリプトの使用方法を示します。また、オプションの説明、および起動や停止を行うコンポーネントのリストを表形式で示します。
start-cal の使用方法を、次に示します。
./start-cal [options...] [components...]
次にオプションのリストを示します。
このヘルプリストを表示する。
デバッグモードを有効にする。
アクティブなサービスのリストを表示する。
有効なサービスのリストを表示する。
すべてのサービスのリストを表示する。
次にコンポーネントのリストを示します。
watcher |
ens |
store |
notify |
admin |
http |
dwp |
コンポーネントを指定しない場合、start-cal は有効なサービスをすべて起動します。
stop-cal の使用方法を、次に示します。
./stop-cal [options...] [components...]
次にオプションのリストを示します。
このヘルプリストを表示する。
デバッグモードを有効にする。
SIGKILL を使って強制的に停止する (UNIX® プラットフォームでのみ使用可能)。
次にコンポーネントのリストを示します。
watcher |
mfagent |
ens |
store |
notify |
admin |
http |
dwp |
コンポーネントを指定しない場合、stop-cal は有効なサービスをすべて停止します。
この節では、Calendar Server での監視フレームワークの実装について説明します。次のトピックが含まれます。
Java Enterprise System Monitoring Framework の詳細は、『Sun Java Enterprise System 5 監視ガイド (UNIX 版)』を参照してください。
Calendar Server と Messaging Server のどちらも、Java Enterprise System 版の監視フレームワーク内に最小限統合されています。監視フレームワークは、実行中に operationalStatus 属性を定期的に確認します。この属性のステータスは、システムが稼働中であることを示す OK、システムが稼働していないことを示す DOWN のいずれかです。
新規プロセスである監視フレームワークエージェント (csmfagent) が、システムの起動時 (start-cal) に起動します。これは、最初に起動するプロセスです。このプロセスは、アプリケーションをインスタンス化して、そのステータスを OK として表明します。これは、SIGTERM もキャッチします。キャッチすると、ステータスを DOWN として表明して終了します。
同様に、Watcher が設定および実行されている場合、システムのいずれかの部分で障害が発生するか応答しなくなると、Watcher は SIGTERM を発行して、csmfagent を停止します。
設定ファイル ics.conf を編集して、次のパラメータを含めます。
local.csmfagent.enable = "y"
次の 2 つの手順を実行します。
/opt/SUNWcsgar/config/com.sun.cmm.cs.xml を /opt/SUNWmfwk/xml にコピーします。
監視フレームワークプロセスを停止してから再起動します。
監視フレームワークを使用するには、次の 2 つの要件を満たす必要があります。
Java Enterprise System Monitoring Framework (JESMF) がインストールされている必要がある。
JESMF がインストールされていない場合、csmfagent は動作しません。
必要なライブラリが Calendar Server から検出可能でなければならない。
Calendar Server は、/opt/SUNWics5/lib 内のシンボリックリンクを使ってライブラリを検索します。
次に JESMF ライブラリを示します。
/opt/SUNWmfwk/lib/libMfTransaction.so |
/opt/SUNWmfwk/lib/libMfRelations.so |
/opt/SUNWmfwk/lib/libMflog4c.so |
/opt/SUNWmfwk/lib/libMfMEServer.so |
/opt/SUNWmfwk/lib/libmfBeepConnectorServer.so |
/opt/SUNWmfwk/lib/libMfRserver.so |
/opt/SUNWmfwk/lib/libMfMEInstrum.so |
/opt/SUNWmfwk/lib/libMfDiscovery.so |
/opt/SUNWmfwk/lib/libMfHashTable.so |
/opt/SUNWmfwk/lib/libMflog.so |
/opt/SUNWmfwk/lib/libasn1cebuf.so |
/opt/SUNWmfwk/lib/libbeepcore.so |
/opt/SUNWmfwk/lib/libbeepxmlutil.so |
/opt/SUNWmfwk/lib/libbptostransport.so |
/opt/SUNWmfwk/lib/libbptosutil.so |
/opt/SUNWmfwk/lib/libbptoswrapper.so |
/opt/SUNWmfwk/lib/libbputil.so |
/opt/SUNWmfwk/lib/libcmm_native.so |
/opt/SUNWmfwk/lib/libmfCserver.so |
/opt/SUNWmfwk/lib/libmfNotificationProfile.so |
/opt/SUNWmfwk/lib/libmfRequestResponseProfile.so |
/opt/SUNWmfwk/lib/libmfTimers.so |
/opt/SUNWmfwk/lib/libmfTimersJNI.so |
/opt/SUNWmfwk/lib/libmfUtils.so |
/opt/SUNWmfwk/lib/libmfber.so |
/opt/SUNWmfwk/lib/libmfberj.so |
/opt/SUNWmfwk/lib/libxmlglobal.so |
これは、JESMF ライブラリをすべて列挙したリストです。監視フレームワークの Calendar Server 部分の実装に、必ずしもこれらすべてのファイルが必要になるとはかぎりません。
このリリースには、予定の通知およびアラーム用の通知サービスとして、Sun Java System Message Queue (JMQ) および Event Notification System (ENS) の 2 つがあります。将来のリリースでは、Communications Service 製品は JMQ のみを使用し、ENS は廃止されます。ただし、このリリースでは、Communications Service 製品 (Messaging Server、Calendar Server、および Instant Messaging) は ENS への内部的な依存関係を保持しており、ENS を引き続き通知およびアラーム用に使用できます。
ENS ではなく JMQ を使用する場合は、Sun Java System Message Queue をインストールして設定する必要があります。また、Calendar Server 6.3 では通知が提供されないため、独自の通知を記述する必要があります。
製品のインストールには、Sun Java Enterprise System インストーラを使用します。Message Queue の設定方法については、Message Queue のマニュアルを参照してください。
Calendar Server を JMQ 用に設定するには、最初に次の行を ics.conf ファイルに追加する必要があります。
local.server.csmfagent.enable = "yes"
caldb.serveralarms.jmqlib = "/opt/SUNWics5/cal/lib/libmqcrt.so" (Solaris の場合)
または
caldb.serveralarms.jmqlib = "/opt/sun/calendar/lib/libmqcrt.so" (Linux の場合)
caldb.serveralarms.dispatchtype = "jmq"
caldb.serveralarms.jmqhost = "localhost"
caldb.serveralarms.jmqport = "7676"
caldb.serveralarms.jmqUser = "guest"
caldb.serveralarms.jmqPWD = "guest"
caldb.serveralarms.jmqTopic = "JES-CS"
各通知には、プロパティー MQ_MESSAGE_TYPE_HEADER_PROPERTY が存在する必要があります。このプロパティーにより、通知の種類が識別可能になります。
また、次の表に示すその他のプロパティーを通知に含めることもできます。
この通知で生成されるアクションの種類を示す文字列プロパティー。このプロパティーに設定可能な値は、"EMAIL"、"AUDIO"、"DISPLAY"、"PROCEDURE"、"FLASHING" です。
アラーム ID を含む文字列プロパティー。
カレンダ ID を含む文字列プロパティー。
コンポーネントの種類を示す文字列プロパティー。値は、"event" または "todo" です。
繰り返し ID を含む整数プロパティー。
コンポーネント ID を含む文字列プロパティー。これは、予定 ID または仕事 ID (作業 ID) です。
通知には、予定と仕事のアラーム通知および更新通知の 2 種類があります。
アラーム通知の場合は、MQ_MESSAGE_TYPE_HEADER_PROPERTY の値は "alarm" だけです。
更新通知の場合、MQ_MESSAGE_TYPE_HEADER_PROPERTY の値は通知をトリガーするアクションの種類によって異なります。表 2–2 に、このプロパティーのトリガーアクションおよび対応する値を示します。
表 2–2 更新通知の値
トリガー |
更新通知の値 |
---|---|
カレンダの削除 |
DELETECAL |
予定の変更 |
MODIFYEVENT |
仕事 (作業) の変更 |
MODIFYTODO |
予定の作成 |
CREATEEVENT |
仕事 (作業) の作成 |
CREATETODO |
予定の更新 |
REFRESHEVENT |
仕事 (作業) の更新 |
REFRESHTODO |
予定への返信 |
REPLYEVENT |
仕事への返信 |
REPLYTODO |
出席者が出席依頼に応答する際、開催者に電子メールによる通知を送信できるようになりました。
この機能を設定するには、ics.conf の ine.reply.enable パラメータを設定します。これを "y" に設定すると、この機能がシステム全体で有効になります。"n" に設定すると、この機能が無効になります。この機能は、デフォルトで有効に設定されています。
応答には、受諾、拒否、暫定的に受諾の 3 種類があります。通知は、応答が単一の出席依頼に対するものか、定期的な予定に対するものかを示します。新たに追加されたメッセージ形式ファイルパラメータは、次のとおりです。対応する形式ファイルも追加されています。
calmail.imipeventacceptnotification.fname= "mail_eventacceptnotification.fmt"
calmail.imipeventdeclinenotification.fname= "mail_eventdeclinenotification.fmt"
calmail.imipeventtentativeacceptnotification.fname= "mail_eventtentativeacceptnotification.fmt"
calmail.imipeventacceptnotificationrecur.fname= "mail_eventacceptnotificationrecur.fmt"
calmail.imipeventdeclinenotificationrecur.fname= "mail_eventdeclinenotificationrecur.fmt"
calmail.imipeventtentativeacceptnotificationrecur.fname= "mail_eventtentativeacceptnotificationrecur.fmt"
これはユーザーが設定する機能ではありません。つまり、これはシステム全体の設定パラメータであり、出席依頼を送信するすべてのユーザーに適用されます。
Calendar Server での電子メール通知の設定の詳細については、『Sun Java System Calendar Server 6.3 管理ガイド』の「電子メール通知を有効にするには」を参照してください。
WCAP インタフェースが変更され、出席者のカレンダの予定のコピーが変更できるようになりました。これには概要と説明のフィールドが含まれます。
Calendar Server 6.3 ユーティリティー rename では、カレンダのデータの名前を変更する場合に、削除済みアイテムも含まれます。
拒否された予定が、「空き/予定あり」カレンダに表示されることはなくなりました。
以前のバージョンの Calendar Server では、Calendar Express (以前のユーザーインタフェース) が、自動的にインストールされ有効になっていました。このインタフェースを使用していない場合でも、無効にすることはできませんでした。Calendar Server 6.3 にアップグレードしている場合、アップグレード処理により、service.http.ui.enable="y" が ics.conf ファイルに追加されます。これにより、古い UI を使用する場合は、有効にしておくことができます。特別な設定は必要ありません。
Calendar Express を無効にするには、ics.conf ファイルで service.http.ui.enable の値を "n" に設定します。
Calendar Express は、新規インストールで自動的にインストールされなくなりました。Calendar Server 6.3 の新規インストールを実行していて、ユーザーインタフェースとして Calendar Express を使用する場合は、Communications Suite 5 インストールプログラムを使用して、明示的にインストールする必要があります。そのあとで、ics.conf ファイルに service.http.ui.enable="y" を追加して、設定する必要があります。新規インストールの場合、デフォルトの内部設定は "n" であるため、明示的に "y" に設定する必要があります。
以前のバージョンの Calendar Server からアップグレードしている場合、アップグレード処理により、値が "y" に設定されたパラメータが ics.conf に追加されます。これにより、何も変更することなく、従来のユーザーインタフェースを使い続けることができます。ただし、このパラメータを "n" に設定することでこれを無効にできます。
従来は、分散型データベース環境 (CLD プラグインを使用する DWP) の場合に、ビッグエンディアンとリトルエンディアンの問題により、フロントエンドプロセスとバックエンドプロセスを同じハードウェアプラットフォームにインストールする必要がありました。このバージョンでは、これは当てはまりません。フロントエンドプロセスとバックエンドプロセスを、それぞれ異なるハードウェアプラットフォームにインストールできるようになりました。
たとえば、フロントエンドマシンを X-86 プラットフォームマシンにして、バックエンドを SPARC プラットフォームマシンにできます。
Calendar Server により送信されたメッセージが iTIP 互換 (Microsoft Outlook と内部互換) になりました。
セキュリティーを強化するため、comm_dssetup.pl の実行時にテキストパスワードではなくパスワードファイルを指定することが可能になりました。新しい -j <passwordfilename> オプションを使用することで、パスワードを保護してセキュリティーを強化できます。これは、スクリプトで使用する場合に特に有用です。現在使用してるスクリプトではパスワードが公開されるため、スクリプトを変更する場合は、-w < password> オプションを削除し、新しいオプションに置き換えてください。
これは、問題 #6392093 の修正です。
以前のバージョンの Calendar Server では、csdb、cscal、および csuser が cal/bin ディレクトリ内に配置されていましたが、このバージョンから cal/sbin ディレクトリ内に配置されることになりました。
Calendar Server のプログラムコードが変更されたために、次の変更が ics.conf ファイルに加えられました。