ADOBE FLASH MEDIA SERVER 4.0 設定および管理ガイド ® ® © 2010 Adobe Systems Incorporated. All rights reserved. Adobe® Flash® Media Server 4 設定および管理ガイド This user guide is protected under copyright law, furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Adobe Systems Incorporated. Adobe Systems Incorporated assumes no responsibility or liability for any errors or inaccuracies that may appear in the informational content contained in this guide. This user guide is licensed for use under the terms of the Creative Commons Attribution Non-Commercial 3.0 License. This License allows users to copy, distribute, and transmit the user guide for noncommercial purposes only so long as (1) proper attribution to Adobe is given as the owner of the user guide; and (2) any reuse or distribution of the user guide contains a notice that use of the user guide is governed by these terms. The best way to provide notice is to include the following link. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/3.0/us/ Adobe, the Adobe logo, Adobe AIR, ActionScript, AIR, Flash, and Flex are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries. Linux is the registered trademark of Linus Torvalds in the U.S. and other countries. Windows is either a registered trademark or a trademark of Microsoft Corporation inthe United States and/or other countries. Mac is a trademark of Apple Inc., registered in the United States and other countries. All other trademarks are the property of their respective owners. Updated Information/Additional Third Party Code Information available at http://www.adobe.com/go/thirdparty Portions include software under the following terms: This product contains either BSAFE and/or TIPEM software by RSA Security, Inc. Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA. Notice to U.S. Government End Users. The Software and Documentation are “Commercial Items,” as that term is defined at 48 C.F.R. §2.101, consisting of “Commercial Computer Software” and “Commercial Computer Software Documentation,” as such terms are used in 48 C.F.R. §12.212 or 48 C.F.R. §227.7202, as applicable. Consistent with 48 C.F.R. §12.212 or 48 C.F.R. §§227.7202-1 through 227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users (a) only as Commercial Items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein. Unpublished-rights reserved under the copyright laws of the United States. Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity laws including, if appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60, 60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference. 最終更新日 2010/9/8 iii 目次 第 1 章:サーバーのデプロイメント ポートの要件 ............................................................................................................. 1 クラスタへのサーバーのデプロイメント エッジサーバーのデプロイメント ..................................................................................... 2 ........................................................................................... 3 ピアアシストネットワーキングアプリケーションの負荷分散 64 ビットのサーバーのデプロイメント ................................................................... 8 ...................................................................................... 8 第 2 章:サーバーの設定 仮想ホスト用のサーバーの設定 設定ファイルの操作 パフォーマンス機能の設定 セキュリティ機能の設定 一般的な設定作業 ............................................................................................. 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 コンテンツの格納場所の設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Apache HTTP Server の設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 サードパーティの Web サーバーの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Differentiated Services(DiffServ)の設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 第 3 章:Administration Console の使用 Administration Console への接続 アプリケーションの検査 管理者の管理 サーバーの管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 第 4 章:ログファイルの監視と管理 ログファイルの使用 アクセスログ アプリケーションログ 診断ログ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 第 5 章:サーバーの管理 サーバーの起動と停止 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 サーバーステータスの確認 ビデオファイルの確認 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 エッジサーバーのキャッシュの消去 Linux でのサーバーの管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 第 6 章:Administration API の使用 Administration API の使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 目次 第 7 章:XML 設定ファイルの参照 設定ファイルを 3.5 から 4.0 に変更します。 Adaptor.xml ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Application.xml ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 Logger.xml ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 Server.xml ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 Users.xml ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Vhost.xml ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 最終更新日 2010/9/8 iv 1 第 1 章:サーバーのデプロイメント ポートの要件 Flash Media Server をインストールするときには、Flash Media Server および Flash Media Administration Server が リッスンするデフォルトポートを受け入れることができます。新しいポートを入力することもできます。Flash Media Server のデフォルトポートは、1935 および 80 です。Flash Media Administration Server のデフォルトポートは 1111 で す。 次の表では、クライアントがサーバーへの接続を確立する必要があるポートを示しています。 ポート番号 Type プロトコル 説明 1935 パブリック RTMP/E、RTMFP デフォルトでは、Flash Player および AIR クライアン トは ポート 1935 を使用して Flash Media Server に RTMP および RTMFP 接続を行います。 RTMP プロトコルを使用して Flash Media Server と 通信するために、クライアントは、次の順序でポート に接続しようとします。1935、80 (RTMP)、80 (RTMPT) 80 パブリック RTMP/E、RTMTP、 HTTP デフォルトでは、ポート 1935 を使用して Flash Media Server に接続できない Flash Player および AIR のクライアントは、ポート 80 (RTMPT)を使用 したトンネリングを試行します。 Apache がインストールされ、有効な場合、ポート 80 を使用して行われた HTTP 要求は、ポート 8134 を 使用して Apache にプロキシされます。 19350-65535 パブリック RTMFP デフォルトでは、クライアントは、ポート 1935 およ びポート 19350 ∼ 65535 を使用して RTMFP プロト コル経由で Flash Media Server と通信します。 RTMFP プロトコルは UDP を使用して通信します。ク ライアントがサーバーにポート 1935 を使用して接続 し、サーバーがクライアントをポート 19350 ∼ 65535 の間にリダイレクトします。 デフォルトの RTMFP ポート範囲を変更するには、 Adaptor.xml 設定ファイル内の Adaptor/RTMFP/Core/HostPortList/HostPort エレメ ントを編集します。 詳細については、40 ページの「ピアアシストネット ワークの IP アドレスおよびポートの設定」を参照して ください。 8134 内部 HTTP Flash Media Server は、ポート 8134 を使用して HTTP 要求を Apache にプロキシします。 注意 :HTTP Dynamic Streaming のトラフィックを Flash Media Server 経由で Apache HTTP Server にプロキシしないでください。HTTP Dynamic Streaming 接続は、サーバーを通じてプロキシをす る際にハングアップする可能性があります。クライア ント自身のポート(デフォルトはポート 8134)を使 用して直接クライアントを Apache HTTP Server に 接続するか、Flash Media Server の代わりに Apache がポート 80 を使用するように設定します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 2 サーバーのデプロイメント ポート番号 Type プロトコル 1111 パブリック HTTP、RTMP 説明 デフォルトでは、Flash Player、AIR および HTML ク ライアントは、ポート 1111 を使用して Flash Media Administration Server に接続します。クライアント は、接続 URL 内にポート 1111 を指定する必要があり ます。クライアントは、RTMPS を使用して Flash Media Administration Server にアクセスできませ ん。そのため、ポート 1111 に対するすべての外部ア クセスをブロックすることで、Administration Server へのアクセスをファイアウォール内のクライ アントのみに制限することをお勧めします。 443 パブリック RTMPS RTMPS のデフォルトのポートです。RTMPS は、セ キュアなネットワーク接続を実現する SSL 標準に準拠 しています。RTMPS を使用することで、セキュアな ポート上の TCP ソケットを介した接続が可能になりま す。 関連項目 13 ページの「fms.ini ファイルのパラメーターの編集」 クラスタへのサーバーのデプロイメント クラスタへのサーバーのデプロイメントのワークフロー クライアントの負荷を複数のサーバーに分散させるため、ロードバランサの背後に複数のサーバーをデプロイできます。複 数のサーバーをデプロイすることで、より多くのクライアントに対応するようにアプリケーションの規模を拡張し、また単 一障害点をなくすための冗長性を提供できるようになります。クラスタには、Flash Media Interactive Server、Flash Media Development Server、Flash Media Streaming Server など、どのバージョンのサーバーでもデプロイすることがで きます。 1 Adobe® Flash® Media Server をインストールして、各コンピューターでインストールを確認します。 最小限の必要システム構成を満たすコンピューターにすべてのサーバーをデプロイしていることを確認します。 注意:プラットフォーム間の互換性のため、すべてのフォルダーとアプリケーションには小文字の名前を使用してくださ い。 2 ロードバランサを設定して、Flash Media Interactive Server または Flash Media Streaming Server をホスティングす るサーバーを参照します。 ロードバランサの背後での複数サーバーのクラスタ化 クラスタ内のすべてのサーバーをロードバランサのプール(サーバーファーム)に追加します。ロードバランサは、プール 内のすべてのサーバー間でトラフィックを分散します。負荷をラウンドロビンモードで分散し、TCP ポート 1935 を監視す るようにロードバランサを設定します。 外部から参照できる IP アドレスがサーバーにない場合に、HTTP トンネリングが動作するためには、ロードバランサの背 後にサーバーをデプロイする際に、cookie を有効にしてください。ロードバランサは cookie を確認し、この cookie を使用 して、要求を同じサーバーに送信します。cookie はロードバランサまたは Adaptor.xml 設定ファイルの Adaptor/HTTPTunnel/SetCookie エレメントで有効にできます。 注意:トンネリング接続については、cookie は現在 Windows 版の Adobe® Flash® Player 9.0.28 以降でのみサポートされ ています。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーのデプロイメント 詳細については、次の項を参照してください。 • www.adobe.com/go/learn_fms_redundancy_jp • www.adobe.com/go/learn_fms_clustering_jp • www.adobe.com/go/learn_fms_scalable_jp エッジサーバーのデプロイメント エッジサーバーのデプロイメントのワークフロー 注意:Flash Media Streaming Server をエッジサーバーとして設定することはできません。 デフォルトでは、サーバーはオリジンサーバーとして動作します。サーバーをエッジサーバーとして実行するには、XML ファイルを設定する必要があります。一般的に、1 つのコンピューターで Flash Media Interactive Server をオリジンサー バーとして実行し、別のコンピューターで Flash Media Interactive Server をエッジサーバーとして実行します。 1. Flash Media Interactive Server をインストールして、各コンピューターで Flash Media Interactive Server のインストール を確認します。 すべてのエッジサーバーおよびオリジンサーバーを、最小限の必要システム構成を満たすコンピューターにデプロイします。 インストールおよびインストールの確認方法の詳細については、『Adobe Flash Media Server インストールガイド』を参 照してください。 注意:プラットフォーム間の互換性のため、すべてのフォルダーとアプリケーションには小文字の名前を使用してください。 2. エッジサーバーを設定して、再起動します。 そのエッジサーバー上で、エッジサーバーとして実行する仮想ホストの Vhost.xml ファイルを編集します。 3. エッジサーバーがオリジンサーバーと通信できることを確認します。 最も簡単に確認する方法は、明示的な接続を作成することです。エッジサーバーに明示的に接続して SWF ファイルを作成 し、VOD サービスまたはライブサービスを実行します。 4. 複数のエッジサーバーをインストールする場合、Vhost.xml ファイルを各エッジサーバーの同じディレクトリにコピーします。 5. 各エッジサーバーがオリジンサーバーと通信できることを確認します。 6. オリジンサーバーを配置し、同じサブネット上の最も近い場所にそれらのエッジサーバーを配置します。 7. 複数のエッジサーバーをデプロイする場合は、ロードバランサを設定します。 ロードバランサは、クライアントとエッジの間に置きます。ラウンドロビンモードでエッジサーバーのプールにアクセスし、 TCP ポート 1935 を監視するようにロードバランサを設定します。各エッジサーバーの Vhost.xml ファイルの RouteEntry エレメントで、プールの仮想 IP(VIP)アドレスを IP アドレスとして使用します。RouteEntry エレメントの構成方法の詳 細については、デフォルトの Vhost.xml ファイルの RouteEntry エレメントのコメントか、「RouteEntry」を参照してくださ い。 最終更新日 2010/9/8 3 FLASH MEDIA SERVER 4.0 設定および管理ガイド 4 サーバーのデプロイメント エッジサーバーの設定 エッジサーバーとして実行されるようにサーバーを設定するには、エッジサーバーとして実行する仮想ホストの Vhost.xml 設定ファイルを編集します。Vhost.xml ファイルで、エッジサーバーがクライアントをオリジンサーバーに接続する方法を 定義します。 注意:また、いくつかの仮想ホストではアプリケーションをローカル(オリジンとして)で実行し、それ以外の仮想ホスト ではアプリケーションをリモート(エッジとして)で実行するように設定することも可能です。この方法は、「混在モード」 または「ハイブリッドモード」と呼ばれます。 エッジサーバーとして実行するための仮想ホストの設定 1 設定する仮想ホストの Vhost.xml ファイルを開き、次のコードを探します(コメントは省略されています)。 <VirtualHost> ... <Proxy> <Mode>local</Mode> <Anonymous>false</Anonymous> <CacheDir enabled="false" useAppName="true"></CacheDir> <LocalAddress></LocalAddress> <RouteTable protocol=""> <RouteEntry></RouteEntry> </RouteTable> <EdgeAutoDiscovery> <Enabled>false</Enabled> <AllowOverride>true</AllowOverride> <WaitTime>1000</WaitTime> </EdgeAutoDiscovery> </Proxy> </VirtualHost> 注意:デフォルトでは Vhost.xml ファイルは、RootInstall/conf/_defaultRoot_/_defaultVHost_ ディレクトリに格 納されています。 2 必要に応じて、次の XML エレメントを編集します。 要素 必須/オプション 説明 Mode 必須 サーバーをオリジンサーバーとして実行されるように設定するには、local と入力 します。サーバーをエッジサーバーとして実行されるように設定するには、 remote と入力します。 Anonymous オプション エッジサーバー接続が暗黙(true)か明示(false)かを指定するブール値です。 デフォルト値は false です。 CacheDir オプション エッジサーバーでストリームのメモリへのキャッシュやディスクへのキャッシュ を有効にするか無効にするかを指定したり、キャッシュの場所を指定したりでき ます。enabled および useAppName の 2 つの属性があります。 キャッシュを有効にするには、enabled 属性を true に設定します。キャッシュが 有効な場合、サーバーはデフォルトで RootInstall/cache/appName ディレク トリにストリームを置きます。useAppName 属性は、アプリケーションのキャッ シュ名にアプリケーション名を使用するかどうかの指定に使用します。 キャッシュを有効にすると、VOD アプリケーションのパフォーマンスが飛躍的に 向上します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 5 サーバーのデプロイメント 要素 必須/オプション 説明 LocalAddress オプション プロキシの外部への接続をバインドするローカル IP アドレスを指定します(プロ キシのループバックアドレス)。このエレメントにより、管理者は、送受信される トラフィックを個々のネットワークインターフェイスに分離する方法でネット ワークトラフィックを制御することができます。 RouteTable オプション。アプリケーショ ン開発者にオリジンサーバー の URL を公開する必要がない 場合、公開することが望まし くない場合、暗黙の接続を使 用する場合にルーティング テーブルを作成します。 RouteEntry オプション オリジンからエッジへの接続をどのようにルーティングするかを各 RouteEntry エ レメントで指定します。protocol という属性があり、外部への接続のプロトコル を示します。この属性を「rtmp」または「rtmps」 のいずれかに設定します。 特定の RouteEntry エレメントの RouteTable プロトコルを無効にするには、変更 する RouteEntry エレメントに protocol 属性を追加します。 各 RouteEntry エレメントは、ホスト/ポートのペアを別のホスト/ポートのペア にマップします。次の例では、host1:port1 への接続は host2:port2 にルーティング されます。 host1:port1;host2:port2 通常、host1:port1 はエッジサーバーで、host2:port2 がオリジンサーバーです。次 の例では、宛先がポート 1935 のホスト「エッジ」である接続を、ポート 80 のホ スト「オリジン」にルーティングします。 <RouteEntry>edge:1935;origin:80</RouteEntry> ホストまたはポートには、ワイルドカードキャラクタ(*)を指定できます。次の 例では、宛先が任意のポートの任意のホストである接続を、ポート 1935 のホス ト「オリジン」にルーティングします。 <RouteEntry>*:*;origin:1935</RouteEntry> 接続のルーティング先のホスト/ポートにもワイルドカードを指定できます。次 の例では、宛先が任意のポートの任意のホストである接続を、ポート 80 の同じホ ストにルーティングします。 <RouteEntry>*:*;*:80</RouteEntry> 接続を拒否するには、次のように、ルーティング先のホスト/ポートの組み合わ せを null に指定します。 <RouteEntry>edge:80;null</RouteEntry> RouteEntry エレメントには protocol 属性があります。この属性は特定の RouteEntry エレメントに対して RouteTable プロトコルを無効にします。例えば、 RouteTable に、暗号化された外部への RTMPS 接続を指定する RouteEntry エレ メントおよび通常の RTMP 接続を指定する RouteEntry タグが存在する可能性があ ります。プロトコルが指定されていないと、外部への接続では内部への接続と同 じプロトコルが使用されます。 3 XML を検証し、Vhost.xml ファイルを保存します。 4 サーバーを再起動します。 関連項目 9 ページの「アダプターと仮想ホスト」 エッジサーバーでのキャッシュの設定 エッジサーバーを経由して再生されているストリームは、オプションでエッジサーバーのハードドライブにキャッシュして、 オリジンに戻る余分なネットワークトラフィックを回避できます。エッジサーバーは、Least-Recently-Used(LRU)ス キームを使用して、ディスクキャッシュを自動的に管理します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーのデプロイメント エッジサーバーは、ディスク上でキャッシュされたファイルをバケットにグループ化します。各バケット内のファイルは順 序付けられていませんが、バケット自体は LRU によって順序付けられています。エッジサーバーは、ディスクスペースを 解放する必要がある場合に、最も長い間使用されていないバケットのコンテンツ全体を削除します。ファイルが追加される と、「最新の」バケットに入れられ、既存のファイルがアクセスされるときも同様に、最新のバケットに移動されます。この ようにして LRU の順序付けが維持されます。 ディスクキャッシュは N 個のバケットに分割されますが、新しくアクセスされたすべてのコンテンツは最新のバケットに移 動され、実際には最新のバケットのサイズだけが増加します。バケットが K/N バイト(K はディスクキャッシュの最大サイ ズ)に達すると、サーバーはロールオーバーをトリガーします。ロールオーバーとは、サーバーが最も古いバケットを削除 し、新しいコンテンツの移動先になる新しいバケットを作成することです。 例えば、以下のようになります。 1 最大サイズ 80 GB の 8 個のバケットを持つように設定された空のディスクキャッシュを使用して開始します。 2 すべてのコンテンツはバケット「00」が 10 GB になるまでバケット「00」に送られます。 3 新しいバケット「01」が作成されます。すべてのコンテンツが今度はこのバケットに送られます。さらに、バケット 「00」からアクセスされたコンテンツがバケット「01」に移動されることもあります。 4 バケット「01」が 10 GB になると、サーバーはバケット「02」を作成します。その後も同様に処理されます。 5 「00」から「07」までの 8 個のバケットになるまで、繰り返します。 6 バケット「07」が 10 GB になると、サーバーはバケット「08」を作成し、バケット「00」とそこに含まれているすべて のコンテンツを削除します。 この削除は、ディスクの合計サイズではなく、「新しい」バケットのサイズによってのみトリガーされます。コンテンツは古 いバケットのいずれかから最新のバケットに移動できるため、古いバケットはその最大サイズである N/K バイトのままでは 維持されません。その結果、サーバーが古いバケットの削除を開始したときに、ディスクの合計サイズは最大値である K よ りも小さくなります。 Vhost.xml ファイルの CacheDir エレメント内のエッジサーバー上のキャッシュを設定します。次の表では、キャッシュを設 定するために使用するサブエレメントを示しています。 要素 説明 MaxSize ディスクキャッシュの許容される最大サイズを GB 単位で指定します。サーバーは、 キャッシュの LRU(Least Recently Used)クリーンアップを使用して、キャッ シュを最大サイズを超えないようにします。デフォルト値は 32 GB です。値が 0 の 場合は、ディスクキャッシュが無効になります。値が -1 の場合は、最大サイズが指 定されません。 NumBuckets キャッシュを分割するバケット数を指定します。キャッシュサイズの合計は、 MaxSize によって定義します。2 ∼ 128 の値を指定でき、デフォルト値は 8 です。 バケット数を増加すると、一度に削除されるディスクコンテンツの量が少なくなる だけではなく、ファイルを新しいバケットに移動する頻度が増加します。このため、 ディスクの利用率が増加し、パフォーマンスが低下します。NumBucketsAtRisk で 移動できるコンテンツを含むバケットの数を定義できます。 NumBucketsAtRisk 削除の「可能性がある」と見なされるバケット数を指定します。0 ∼ NumBuckets 1 の値を指定でき、デフォルトは NumBuckets/2 です。過度に頻繁にファイルを移 動することでディスクのパフォーマンスを犠牲にすることがないように、最も古い NumBucketsAtRisk バケット内にあるセグメントだけがアクセス時に最新のバケッ トに移動されます。 値が 0 の場合、元の場所から取り出されたセグメントは新しいバケットには移動さ れず、結果的にキャッシュは LRU キャッシュに変換されます。値がデフォルトの NumBuckets/2 である場合、コンテンツの「古い方の半分」にあるセグメントだけ が移動されます。コンテンツの「新しい方の半分」にあるセグメントは、削除され る前に再度アクセスされる可能性が高いので、これらのセグメントを移動すること はあまり重要なことではありません。 最終更新日 2010/9/8 6 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーのデプロイメント エッジサーバーへの接続 エッジサーバー接続には、明示および暗示(「匿名」とも呼ばれます)の 2 つのタイプがあります。 明示エッジサーバーのアドレスは、クライアントの NetConnection.connect() 呼び出しの際にオリジンサーバーの URL に接 頭辞として付加されます。例えば、アプリケーションが fms.foo.com 上で実行中の場合、クライアントが rtmp://fms.foo.com/app/inst などの接続文字列を使用してアプリケーションに接続されることはありません。この代わりに、 クライアントはエッジのプロトコルとホスト名がオリジンの URL に接頭辞として付加されているエッジに接続されます。 例えば次のようになります。 rtmp://fmsedge.foo.com/?rtmp://fms.foo.com/app/inst 暗黙エッジサーバーは、クライアントの NetConnection.connect() 呼び出しの際にオリジンサーバーの URL を変更または修 正することはありません。暗黙エッジの ID (IP アドレスとポート番号)は、アプリケーション開発者からは隠されます。 ODBC 接続の作成 ❖ エッジサーバーへの明示的な接続を作成するには、クライアントサイドからの NetConnection.connect() 呼び出しで次の シンタックスを使用します。 rtmp://edge/?rtmp://origin/app エッジの接頭辞とメインの URL を疑問符(?)で区切ります。この接頭辞に含まれるのは、プロトコル、ホスト名、 ポート番号(オプション)だけです。この接頭辞は必ず閉じスラッシュで終了してください。 ODBC 接続の作成 1 Vhost.xml 設定ファイルで、Proxy/Anonymous エレメントを true に設定します。 注意:Vhost.xml ファイルを変更後、サーバーを再起動します。 2 Vhost.xml ファイルの RouteTable エレメントにルーティングテーブルを作成します。詳細については、Flash Media Server と共にインストールされる Vhost.xml ファイルに含まれている RouteEntry タグのコメントを参照してください。 3 エッジサーバーへの暗黙的な接続を作成するには、クライアントサイドからの NetConnection.connect() 呼び出しで次の シンタックスを使用します。 rtmp://edge/app/appinstance チェーン内のエッジサーバーへの接続 ❖ オリジンサーバーへの接続の確立時に、任意の数のエッジサーバーをチェーン化することができます。2 つの明示エッジ をチェーン化してオリジンサーバーに接続要求を送信するには、次のシンタックスを使用します。 rtmp://edge1/?rtmp://edge2/?rtmp://origin/app/inst チェーン内の各エッジを介して接続が移行すると、そのサーバーは文字列内の最初のトークンを使用します。例えば、 edge1 への接続が確立されると、接続文字列は、次のように変更されます。 rtmp://edge2/?rtmp://origin/app/inst 注意:RTMPT プロトコルはエッジにのみ指定でき、オリジンには指定できません。 エッジをチェーン化するための URL の記述では疑問符(?)を使用するため、Flash Player 7 以前のバージョンで は、共有オブジェクトに問題が発生する可能性があります。URL を共有オブジェクトに渡す前に URL の疑問符をエ ンコードまたはエスケープするために次の関数を呼び出します。 function escapeURI(uri) { index = uri.indexOf('?'); if (index == -1) return uri; prefix = uri.substring(0, index); uri = uri.substring(index); return prefix += escape(uri); } 最終更新日 2010/9/8 7 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーのデプロイメント ピアアシストネットワーキングアプリケーションの負荷分散 RTMFP アプリケーションの負荷を分散するには、エッジオリジンの設定をセットアップします。各エッジサーバーの Vhost.xml 設定ファイル内で、<Mode>remote</Mode> を設定します。詳細については、4 ページの「エッジサーバーの設 定」を参照してください。 クライアント上では、NetConnection URL が "rtmfp://fms-server/application" から "rtmfp://edge-fms-server/?rtmfp://origin- fms-server/application" に変わります。または、オリジンサーバーをポイントするように、エッジサーバー上の Vhost.xml 内の RouteTable および RouteEntry を設定できます。この場合、クライアントの URL は "rtmfp://fms-server/application" のま まです。 エッジサーバー間で負荷を分散する DNS エントリを設定します。サーバーが RTMFP イントロデューサーとして機能する には、アプリケーションごとにオリジンサーバーを使用します。ピアのルックアップを動作させるには、クライアントが同 じサーバープロセスに接続する必要がありますが、同じアプリケーションに接続する必要はありません。ピアルックアップ はオリジンサーバーを越えては機能しません。ただし、peerID は、オリジンサーバー上の負荷を軽減するエッジサーバー 上にキャッシュされます。複数のクライアントが同一のエッジサーバーに接続すると、そのエッジサーバーでイントロダク ションが行われる可能性があり、その場合オリジンサーバーに対するルックアップ呼び出しは行われません。 関連項目 3 ページの「エッジサーバーのデプロイメント」 64 ビットのサーバーのデプロイメント Flash Media Server は、32 ビットおよび 64 ビットのオペレーティングシステムにインストールされます。64 ビットの サーバーは、4 GB を超えるアドレス指定が可能なメモリ空間を使用します。これは、Flash Media Server がより大きな ファイルキャッシュを使用することで、ディスクの IO を減らせるようにします。 64 ビットのサーバーをデプロイする場合は、以下に注意してください。 • ネットワークトポロジで 64 ビットおよび 32 ビットのエッジサーバーとオリジンサーバーを任意に組み合わせて使用で きます。 • オンデマンドメディアのパフォーマンスを可能な限り高めるには、記録済みメディアのキャッシュのサイズを増やしま す。 • 32 ビットのシステム用に作成したカスタムの C++ プラグインは、64 ビットのシステムでは機能しません。32 ビットの プラグインを 64 ビットのサーバーで使用するには、64 ビットのライブラリを使用してプラグインを再コンパイルしま す。 関連項目 16 ページの「64 ビットのサーバーの設定」 最終更新日 2010/9/8 8 9 第 2 章:サーバーの設定 仮想ホスト用のサーバーの設定 アダプターと仮想ホスト サーバー上で複数のテナントをホストする場合は、ユーザーが各自のセクションを持てるようにサーバーを設定します。管 理者は、コンテンツを最も効果的に提供できるように自身のセクションを設定できます。仮想ホストは、ニーズに合わせて いくつかの方法で設定できます。 サーバーは、サーバー、アダプター、仮想ホスト(「vhost」とも呼ばれます)およびアプリケーションという階層レベルに 分けられます。サーバーは最上位のレベルにあり、1 つ以上のアダプターを含みます。各アダプターは 1 つ以上の仮想ホス トを含みます。仮想ホストはそれぞれ 1 つ以上のアプリケーションをホスティングします。アプリケーションにはそれぞれ 1 つ以上のインスタンスが含まれています。アダプターや仮想ホストを追加すると、複数のアプリケーションやサイトのホ スティングのためにサーバーを編成できます。 注意:サーバーと格納メディアへのアプリケーションの登録の詳細については、46 ページの「コンテンツの格納場所の設 定」を参照してください。 サーバー上で複数の Web サイトをホスティングする場合は、仮想ホストを使用して、ユーザーに独自のルートフォルダー を提供します。例えば、2 つの仮想ホストを使用すると、1 つのサーバーで www.test.com と www.example.com をホス ティングできます。 IP アドレスまたはポート番号をアダプターに割り当てることはできますが、仮想ホストに割り当てることはできません。し たがって、仮想ホストを IP アドレスやポート番号ごとに整理する場合は、アダプターを使用します。例えば、SSL を設定す るために仮想ホストに独自の IP アドレスが必要な場合は、その仮想ホストのアダプターに対して IP アドレスを割り当てま す。 一方の仮想ホストをエッジサーバーとして動作するように設定し、もう一方をオリジンサーバーとして動作するように設定 することもできます。これは、ハイブリッドモードでのサーバーの実行と呼ばれます。 設定フォルダーの構造 階層レベル(サーバー、アダプター、仮想ホスト、アプリケーションおよびアプリケーションインスタンス)にはそれぞれ 個別の設定があり、その設定内容は rootinstall/conf ディレクトリにある XML ファイル(Server.xml、Adaptor.xml、 Vhost.xml、Application.xml)に格納されています。管理者およびロギングに関する情報用の設定ファイル(Users.xml と Logger.xml)も存在します。最も重要な設定パラメーターは fms.ini ファイルに取り込まれているため、1 つのファイル でサーバーを設定することができます。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 conf Server.xml Users.xml Logger.xml fms.ini _defaultRoot_ Adaptor.xml _defaultVHost_ Application.xml Vhost.xml サーバーの設定(conf)ディレクトリのデフォルトの構造 これらの XML ファイルをテキストエディターまたは XML エディターで編集し、サーバーを再起動して変更内容を反映さ せます。Users.xml または fms.ini を変更する場合は、Flash Media Administration Server も再起動する必要があります。 詳細については、13 ページの「設定ファイルの操作」を参照してください。 conf ディレクトリの構造は、次の規則によって定義されます。 • ルート設定フォルダーは rootinstall/conf です。このディレクトリは、削除することも名前を変更することもできませ ん。サーバーの conf ディレクトリには Server.xml ファイル、Logger.xml ファイルおよび Users.xml ファイルが必要で す。 • 初期化ファイルである fms.ini は rootinstall/conf ディレクトリにあります。このファイルには、管理者のユーザー名と パスワード、インストール時に選択した設定内容など、一般的に使用される設定が格納されています。 • デフォルトアダプターのルートディレクトリは rootinstall/conf/_defaultRoot_ です。このディレクトリは、削除する ことも名前を変更することもできません。各アダプターのルートディレクトリには Adaptor.xml ファイルが必要です。 • 仮想ホストのデフォルトのルートディレクトリは rootinstall/conf/_defaultRoot_/_defaultVHost_ です。このディレ クトリは、削除することも名前を変更することもできません。各仮想ホストのルートディレクトリには Vhost.xml ファ イルが必要です。各アダプターにはデフォルトの仮想ホストが必要です。 • 仮想ホストディレクトリには、Application.xml ファイルと Users.xml ファイルが含まれている場合があります。 Application.xml ファイルは、その仮想ホストにあるすべてのアプリケーションのデフォルト設定として使用されます。 また、Users.xml ファイルには、仮想ホストの管理者に関する情報が含まれています。 • Application.xml ファイルをアプリケーションの登録ディレクトリに置くと、アプリケーション固有の設定を作成でき ます。登録アプリケーションディレクトリの詳細については、『Adobe Flash Media Server 開発者ガイド』を参照して ください。 アダプターの追加 1 追加するアダプター名で新しいディレクトリを rootinstall/conf フォルダーに作成します(例、 rootinstall/conf/adaptor2)。 2 adaptor2 ディレクトリに、_defaultVHost_ ディレクトリと Adaptor.xml ファイルを作成するか、またはコピーして 貼り付けます。 各アダプターディレクトリに、_defaultVHost_ ディレクトリと Adaptor.xml ファイルを含める必要があります。 3 _defaultVHost_ ディレクトリに、Application.xml ファイルと Vhost.xml ファイルを作成するか、またはコピーして 貼り付けます。 4 アダプターディレクトリの Adaptor.xml ファイルに、このアダプターの新しいポートをリッスンするよう HostPort エレ メントを追加します。 最終更新日 2010/9/8 10 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 <HostPort name="edge2" ctl_channel=":19351" rtmfp=":1936">:1936</HostPort> name、ctl_channel および rtmfp 属性値はサーバー上で一意でなければなりません。rtmfp 属性および HostPort エレメン トは、IP アドレスがバインドされるポートを指定します。IP アドレスを指定しない場合、アダプターは使用可能なすべ てのインターフェイス上でリッスンします。サーバーは内部的に制御チャネル(ctl_channel)属性を使用して、サーバー プロセス間で通信を行います(HostPort エレメントを追加すると新しい FMSEdge プロセスが作成されます)。 サーバーは HostPort 値を使用してクライアントをリッスンします。異なる IP アドレスを使用していない限り、2 つのア ダプターは内部的にも外部的にも同じポート上でリッスンすることはできません。ホストに複数の IP アドレスがある場 合、複数のアダプターがポート 1935 上でリッスンできます。さらに、2 つのアダプターの制御チャネルが異なっている 必要があります。制御チャネルが同じだと、2 つのアダプターを同時に使用することはできません。それぞれのアダプ ターがリッスン時に使用する制御チャネルは互いに異なっていることを確認します。次の例は、複数の IP アドレスを持 つホスト向けです。 <HostPort name="edge1" ctl_channel=":19350" rtmfp="xx.xx.xx.xx:1935">xx.xx.xx.xx:1935</HostPort> <HostPort name="edge2" ctl_channel=":19351" rtmfp="yy.yy.yy.yy:1935">yy.yy.yy.yy:1935</HostPort> 5 ピアアシストネットワークアプリケーションを実行している場合、Adaptor/RTMFP/Core/HostPortList/HostPort エ レメントを追加します。40 ページの「ピアアシストネットワークの IP アドレスおよびポートの設定」を参照してくださ い。 6 サーバーを再起動します。 7 新しいアダプターで Administration Console にログインするには、「Username」ボックスでシンタックス adaptorname/username を使用します(例、adaptor2/admin)。 Administration Console へのログインについては、64 ページの「Administration Console への接続」を参照してくだ さい。 管理者は、Users.xml ファイルの UserList セクションで定義されます。管理者は、サーバーレベルのユーザー(root ユーザーに似ています)または仮想ホストレベルのユーザーのいずれかになります。デフォルトのアダプター以外のアダ プターにログインした場合は、仮想ホスト管理者と見なされ、サーバーまたはユーザーを管理する権限は付与されませ ん。 conf Server.xml Users.xml Logger.xml fms.ini _defaultRoot_ Adaptor.xml _defaultVHost_ Application.xml Vhost.xml Users.xml adaptor2 Adaptor.xml _defaultVHost_ Application.xml Vhost.xml Users.xml adaptor2 というアダプターが追加された conf ディレクトリ 最終更新日 2010/9/8 11 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 仮想ホストの追加 1 仮想ホストの名前を持つフォルダーをアダプタフォルダーに作成します(例、 rootinstall/conf/_defaultRoot_/www.example.com)。 2 Application.xml ファイル、Vhost.xml ファイルおよび Users.xml ファイルを新しく作成した仮想ホストフォルダーに コピーします(Users.xml ファイルは、この仮想ホストに管理者を定義している場合にのみ必要となります)。 3 Vhost.xml ファイルでは、AppsDir エレメントで次のようにアプリケーションディレクトリを指定します。 <AppsDir>C:\www.example.com<\AppsDir> 注意:複数の仮想ホストに対して同じアプリケーションディレクトリを使用できますが、ネームスペースのコンフリクト が発生するため、この方法はお勧めできません。 4 XML を検証し、Vhost.xml ファイルを保存します。 5 サーバーを再起動します。 注意:サーバーを再起動しなくても、startVHost() Administration API を呼び出したり、Administration Console にログインしたりすることはできます。 6 Administration Console にログインします。 Administration Console へのログインについては、64 ページの「Administration Console への接続」を参照してくだ さい。 7 仮想ホスト名を指定して、新しい仮想ホストに接続します。例えば、「Server name」フィールドに www.example.com と入力します。 8 テストアプリケーションを新しい仮想ホストに接続し、動作することを確認します。 conf Server.xml Users.xml Logger.xml fms.ini _defaultRoot_ Adaptor.xml _defaultVHost_ Application.xml Vhost.xml Users.xml www.example.com Application.xml Vhost.xml Users.xml www.example.com という仮想ホストが追加された conf ディレクトリ 単一アプリケーションの設定 アプリケーションのフォルダーに、Application.xml ファイルを配置できます。アプリケーションレベルの Application.xml ファイルに設定された値は、仮想ホストレベルの Application.xml ファイルの値よりも優先されます。 最終更新日 2010/9/8 12 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 例については、Flash Media Server に付属する vod アプリケーションとライブアプリケーションを参照してください。 rootinstall\applications\vod と rootinstall\applications\live に移動します。各フォルダーには、Application.xml ファ イルが含まれています。これらのファイルの値は、仮想ホストレベルのファイルである rootinstall\conf\_defaultRoot_\_defaultVHost_\Application.xml の値よりも優先されます。 仮想ホストレベルの Application.xml ファイルの設定がアプリケーションレベルの Application.xml ファイルの設定によっ て変更されないようにするには、override 属性をタグに追加し、次のように "no" に設定します。 <LoadOnStartup override="no">false</LoadOnStartup> 仮想ホストレベルの Applcation.xml ファイル内のエレメントに override="no" が設定されていると、アプリケーションレベ ルの Application.xml ファイル内のそのエレメント、またはそのエレメントに含まれるすべてのエレメントを変更できませ ん。 設定ファイルの操作 設定ファイルの編集 注意:設定ファイルは、rootinstall/conf フォルダーにあります。設定ファイルの名前、場所および階層については、9 ペー ジの「設定フォルダーの構造」を参照してください。 fms.ini を含めて設定ファイルを編集するには、次の手順に従います。 1 ファイルをテキストエディターで開きます。 2 ファイルを編集します。 3 ファイルを保存します。 4 XML を検証します。 5 Flash Media Server を再起動します。 Users.xml ファイルを変更する場合は、Flash Media Administration Server も再起動します。 fms.ini ファイルのパラメーターの編集 rootinstall/config/fms.ini ファイルは、Flash Media Server INI ファイルです。INI ファイルはデフォルトの設定ファイ ルです。このファイルには、最もよく編集される設定パラメーターが含まれています。fms.ini ファイルを編集して、サー バーの admin ユーザー名とパスワード、アダプターのホストポート、アプリケーションが含まれたフォルダー、メディア ファイルが含まれたフォルダーなどを変更できます。 fms.ini ファイルには、次に示すように、パラメーターとそれらの値のリストが含まれています。 SERVER.ADMIN_USERNAME = admin SERVER.ADMIN_PASSWORD = admin XML 設定ファイルはこれらのパラメーターを使用します。User.xml ファイルからの抜粋を次に示します。 <UserList> <!-- This tag defines an administrator for the server. --> <User name="${SERVER.ADMIN_USERNAME}"> <!-- Password for this vhost administrator. --> <Password encrypt="false">${SERVER.ADMIN_PASSWORD}</Password> サーバーが起動すると、XML 設定ファイルのパラメーターが fms.ini ファイルの値に置き換えられます。 最終更新日 2010/9/8 13 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 fms.ini ファイルの編集 1 rootInstall/conf/fms.ini をテキストエディターで開きます。 2 バックアップとしてファイルのコピーを他の場所に保存します。 3 パラメーターに新しい値を入力します。 4 ファイルを保存します。 5 Flash Media Server を再起動します。User.xml ファイルで値を編集するときは、Flash Media Administration Server を再起動します。 6 Administration Console を開き、新しいパスワードを使用してログインします。 設定ファイルでのシンボルの使用 設定を簡単にするために、設定ファイルの XML エレメントの値としてシンボルを使用できます。rootInstall/conf フォル ダーに substitution.xml という名前のファイルを作成します。このファイルは、シンボルを、サーバーが設定ファイルを読 み取るときに置換する文字列にマッピングします。マップファイルをセットアップすると、設定ファイルを 1 つ 1 つ編集す る代わりにマップファイルを編集するだけで済むので、以降の更新をより短時間で行えるようになります。 インストール時にインストーラーによっていくつかのマッピングが定義され、fms.ini ファイルに格納されます。起動時に サーバーは、rootinstall\conf ディレクトリで fms.ini ファイルと substitution.xml ファイルを探します。追加のマップ ファイルを作成して、substitution.xml ファイルから参照することもできます。 サーバーには、ROOT と CONF という定義済みシンボルがあり、この 2 つのシンボルは常に利用できます。ROOT シンボル は FMSMaster.exe ファイルの格納場所に、CONF シンボルは Server.xml ファイルの格納場所にそれぞれマッピングされて います。 サーバーは、次の順序でシンボルマップを作成します。 1 定義済みシンボル ROOT および CONF が評価されます。 2 fms.ini ファイルが評価されます。 3 substitution.xml ファイルがある場合は、サーバーは Symbols タグを探し、表示されている順序で子タグを処理します。 4 サーバーは、(substitution.xml ファイル内の KeyValueFile エレメントに)表示されている順序で追加のマップファイル を処理します。 5 外部マップファイルに定義されているシンボルは、各ファイルに表示されている順序で処理されます。 substitution.xml ファイルの作成: 1 XML ファイルを新規作成し、substitution.xml として rootinstall/conf フォルダーに保存します。 2 次の XML 構造を入力します。 <Root> <Symbols> <SymbolName>StringToMapTo</SymbolName> </Symbols> </Root> 作成するシンボルごとに SymbolName エレメントを追加します。 3 例えば、この substitution.xml ファイルは、シンボル TESTUSERNAME を値 janedoe にマッピングします。 <Root> <Symbols> <TESTUSERNAME>janedoe</TESTUSERNAME> </Symbols> </Root> 最終更新日 2010/9/8 14 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 4 rootinstall/conf/Users.xml ファイルをテキストエディターで開きます。 5 行 <User name="${SERVER.ADMIN_USERNAME}"> を探し、シンボル SERVER.ADMIN_USERNAME をシンボル TESTUSERNAME に置き換えます。 サーバーは、XML ファイルを読み取るときに、substitution.xml ファイルの値を次のように置換します。 <User name="janedoe"> 注意:このシンボルは属性として使用されるので、引用符で囲まれます。通常の値として使用されているシンボルは、引 用符で囲まれません。 6 Administration Server を再起動します。 注意:Users.xml ファイルを変更する場合は、Administration Server を再起動する必要があります。他の XML 設定 ファ イルを変更する場合は、サーバーを再起動する必要があります。 追加のマップファイルの作成 すべてのテキスト置換マッピングは、subsitutions.xml 内の Symbols タグの下に指定できますが、追加のマップファイルを 作成することもできます。このためには、substitution.xml ファイルで 1 つ以上の KeyValueFile エレメントを作成します。 これらのエレメントには、外部ファイルの場所を保持できます。 例えば、次の例ではファイル C:\testfiles\mySymbols.txt を参照しています。 <Root> <KeyValueFile>C:\testfiles\mySymbols.txt</KeyValueFile> </Root> これらの外部ファイルは、XML 形式ではありません。これらのファイルには、シンボルと値のペアのコレクションが格納 されています。次の形式で 1 行につき 1 つのペアが表示されます。 symbol=value 次の例は、シンボルと値の 3 つのペアを示しています。 USER_NAME=foo USER_PSWD = bar HELLO= "world and worlds" コメントは、シャープ記号(#)で始まる別の行に配置します。シンボル定義と同じ行にコメントを配置しないようにしま す。 行にある最初の等号(=)は、シンボルと値を区別する区切り文字と見なされます。シンボルと値の前後にスペースがある 場合は削除されます。ただし、スペースが二重引用符で囲まれている場合は削除されません。 環境変数の使用 XML 設定ファイルで環境変数を参照するには、2 つのパーセント記号(%)の間で環境変数の名前を使用します。キャラク タ % は、シンボルがユーザー定義の文字列ではなく環境変数を参照することをサーバーに示します。 環境変数をシンボルとして指定するためのシンタックスは、${%ENV_VAR_NAME%} です。 例えば、サーバーは次のシンボルを変数 COMPUTERNAME にマッピングします。 ${%COMPUTERNAME%} 環境変数を使用するときに、それを substitution.xml ファイルで定義する必要はありません。 最終更新日 2010/9/8 15 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 パフォーマンス機能の設定 このセクションのパフォーマンスのヒントに加えて、基本的な Apache Web サーバーを最適化することもできます。詳細に ついては、「Apache Performance Tuning」を参照してください。 ライブメディアを配信するためのサーバーの設定 次に示す 3 つの設定内容が、ライブメディア配信の規模と待ち時間に影響を与えます。 • 18 ページの「ストリームブロックのサイズの設定」 • 18 ページの「集約メッセージの送信」 • 20 ページの「オーディオサンプルの結合」 注意:集約メッセージを送信し、同じアプリケーション内のオーディオサンプルを結合しないでください。 ライブメディアを配信するようにサーバーを設定するには、次の使用ケースの中から適したものを選択します。 大規模なブロードキャスト(待ち時間よりも規模が重要) この使用ケースでは、可能な限り多くのユーザーに配信しなが ら、いくらかの待ち時間を許容します。また、可能な限り多くのユーザーに配信しながらコストを削減したい場合は、大規 模な集約メッセージを送信し、大規模なストリームブロックサイズを設定します。 大規模なブロードキャスト(規模よりも待ち時間の短縮が重要) この使用ケースでは、可能な限り多くのユーザーに配信し ながら、待ち時間を可能な限り短縮します。待ち時間を短縮するためには、規模を調整する必要があります。より小規模な 集約メッセージを送信します。または、集約メッセージを送信せずに、オーディオサンプルを結合します。 インタラクティブ(待ち時間が最短)インタラクティブアプリケーションでは、待ち時間が非常に少ないことが要求されま す。集約メッセージは送信しないでください。待ち時間が最短の場合は、オーディオサンプルを結合しないでください。 データの待ち時間に懸念がある場合は、オーディオサンプルを結合します。オーディオサンプルを結合すると、オーディオ の待ち時間が発生しますが、残りのストリームには影響を与えません。メッセージを集約すると、ストリーム全体で待ち時 間が発生します。 インタラクティブアプリケーションは、規模の調整が最も困難で、大規模なブロードキャストの使用ケースよりも多くの ハードウェアを必要とします。 オンデマンドメディアを配信するためのサーバーの設定 オンデマンド(VOD)メディアを配信するようにサーバーを設定するには、次のタスクを実行します。 1 17 ページの「記録済みメディアのキャッシュの設定」 2 18 ページの「ストリームブロックのサイズの設定」 64 ビットのサーバーの設定 64 ビットのサーバーでは、32 ビットのサーバーよりも多くの物理メモリを処理できます。64 ビットのサーバーでオンデマ ンドビデオを配信するときは、記録済みメディアのキャッシュのサイズを増やします。記録済みファイルのキャッシュのサ イズを制限する項目は、コンピューターで使用可能な RAM 容量だけです。 注意:プロセスのメモリがシステムメモリの 90% を超えると、プロセスがメモリの制限に近づいていることを示すシステム 警告が表示されます。 ❖ 17 ページの「記録済みメディアのキャッシュの設定」 最終更新日 2010/9/8 16 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 オーディオのみのメディアを配信するためのサーバーの設定 オーディオのみを含むメディアを配信するには、次の手順に従います。 1 20 ページの「オーディオサンプルの結合」 2 18 ページの「集約メッセージの送信」 記録済みメディアのキャッシュの設定 サーバーからストリームが要求されると、そのストリームのセグメントがサーバー上のキャッシュに格納されます。キャッ シュが容量に達していない限り、サーバーはセグメントをキャッシュに置きます。ストリームがセグメントにアクセスしよ うとするたびに、サーバーはキャッシュを確認します。セグメントが使用可能な場合、サーバーは再生のために、そのセグ メントへの参照をストリームに渡します。セグメントが使用できない場合は、ソースからセグメントを取得し、キャッシュ に挿入してから、そのセグメントへの参照をストリームに返します。 キャッシュがいっぱいになると、サーバーは未使用のセグメントを最も長い間使用されていないものから順に削除します。 ただし、すべての未使用セグメントを削除しても、新しいセグメントのための容量が十分でないことがあります。このよう な場合、サーバーはストリームが使用できないことをクライアントに通知し、コアログファイルにエントリを作成します。 cache-full イベントがコアログファイルにある場合は、キャッシュのサイズを増やすか、再生ストリームの数を制限します。 コアログファイルの詳細については、79 ページの「ログファイルの監視と管理」を参照してください。 1 rootinstall/conf/fms.ini ファイルを開きます。 2 SERVER.FLVCACHE_MAXSIZE パラメーターを編集します。 これは、キャッシュの最大サイズ(メガバイト)で、デフォルト値は 500 です。ファイルキャッシュはコアプロセスと プロセスアドレス空間を共有します。各コアプロセスには、個別のファイルキャッシュがあります。32 ビットのプロセ スの場合、Windows では 2 GB の制限、Linux では 3 GB の制限があります。64 ビットのインストールの場合、制限は より大きくなります。詳細については、16 ページの「64 ビットのサーバーの設定」を参照してください。 サーバーがパブリッシュできる一意のストリームの数は、キャッシュのサイズによって制限されます。要求されたスト リームが記録済みメディアのキャッシュ内に見つかる可能性を高めるには、SERVER.FLVCACHE_MAXSIZE の値を大き くします。サーバープロセスが使用するメモリ容量を減らすには、SERVER.FLVCACHE_MAXSIZE の値を小さくします。 キャッシュのサイズは大きい方が便利ですが、システムメモリの全使用量が OS の処理制限を超えないようにすることを お勧めします。メモリキャッシュを利用するときは、メモリ制限および必要なメモリとストリームのパフォーマンスを考 慮するようにしてください。 注意:キャッシュの設定はライブストリームには影響しません。ライブストリームはキャッシュを必要とせず、また、利 用もしないからです。 3 サーバーを再起動します。 キャッシュサイズを正確に計算する方法はありません。なぜなら、キャッシュサイズは、使用可能な RAM 容量と実行され ている他のプロセスの数によって異なるためです。ただし、一般的なガイドラインに従って、キャッシュの推奨サイズを概 算することはできます。 システムの合計 RAM 容量の一部は OS によって使用され、別の一部は Flash Media Server 以外のプロセスによって使用さ れます。 Amount of RAM available for FMS (R) = RAM size - RAM used by the OS and non-FMS processes Flash Media Server で使用できる RAM は、開始されたコアの数で分割されます。 Amount of RAM per core (Rc) = Amount of RAM available for FMS (R) / Number of Cores そのため、一部の RAM 容量はコアプロセスによって使用され、ファイルキャッシュに使用できません。 Recommended File Cache Size = Amount of RAM per core (Rc) - RAM used by each core process 最終更新日 2010/9/8 17 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 Flash Media Server の各プロセスで使用される RAM は負荷によって異なり、正確な数値はありません。ただし、概算の数 値として、512 MB を使用できます。 次の例は、ファイルの妥当なキャッシュサイズを判断しようとしたものです。 RAM size = 8 GB RAM used by OS and non-FMS processes = 1.2 GB (approximately) Number of FMS core processes allowed = 3 Amount of RAM available for FMS (R) = 8 - 1.2 = 6.8 Amount of RAM per core (Rc) = 6.8 / 3 = 2.27 GB Recommended file cache size = 2.27 - 0.5 = 1.76 GB ストリームブロックのサイズの設定 ストリームは、ネットワークに書き込まれるときにブロックに分割されます。ブロックのサイズを指定できます。この値を 大きくすると書き込みが減るので CPU の使用率が減少しますが、ただし、大きい値により、狭い帯域幅の接続で他のコン テンツが遅延する可能性があります。コンテンツサイズが大きく受信接続の帯域幅が広いほど、ブロックのサイズを増やす ことで得られるメリットが大きくなります。 1 FLA ファイルを開きます。 注意:これらの値を、仮想ホストレベルまたはアプリケーションレベルで Application.xml ファイルに設定できます。 アプリケーションレベルで値を設定するには、Application.xml ファイルをアプリケーションのフォルダーにコピーしま す。 2 Client エレメントで、OutChunkSize エレメントの値を 128 ∼ 65,536 バイトに設定します。初期設定値は 4,096 バイトで す。 詳細については、123 ページの「Application.xml ファイル」を参照してください。 3 サーバーを再起動します。 集約メッセージの送信 重要:集約メッセージを送信したり、同じアプリケーション内のオーディオサンプルを結合したりしないでください。 集約メッセージは、サブメッセージのリストが含まれた単一のメッセージです。集約メッセージを送信すると、CPU の使 用率が減り、サーバーの容量が増えます。Flash Player 9.0.60.0 以上を実行しているクライアントに集約メッセージを配信 するように、アプリケーションを設定することができます。この設定が無効になっている場合、サーバーはクライアントに 配信する前に集約メッセージを個々のメッセージに分割します。 集約メッセージは、ライブストリームおよび記録されたストリームで使用できます。 オリジンサーバーは、エッジサーバーに集約メッセージを配信でき、エッジサーバーはディスク上にキャッシュされた FLV データから集約メッセージを配信できます。エッジサーバーは、オリジンサーバーが集約メッセージを配信しなかったとし ても、集約メッセージを配信できます。 集約メッセージを確実に有効にするには、次の設定が有効であることを確認します。 • Server.xml ファイル内の EnableAggMsgs • Application.xml ファイル内の AggregateMessages • Vhost.xml ファイル内の AggregateMessages(該当する場合) 次の表では、上記の設定に加え、集約メッセージの使用に関連するその他の設定内容を説明しています。 最終更新日 2010/9/8 18 FLASH MEDIA SERVER 4.0 設定および管理ガイド 19 サーバーの設定 要素 設定ファイル 説明 Streams/EnableAggMsgs Server.xml FLV モジュールでの集約メッセージの作成を有効にし ます。この設定が “true“ の場合、FLV モジュールは セグメントデータをロードする際に集約メッセージを 返します。この設定が “false“ の場合、FLV モジュー ルは通常のオーディオ、ビデオおよびデータのメッ セージを返します。 デフォルト値は “true“ です。 Streams/MaxAggMsgSize FLV モジュールから返される集約メッセージの最大サ Server.xml イズ(バイト単位)を定義します(集約メッセージが 有効な場合)。モジュールは個々のメッセージを断片 化しないので、モジュールによって返されたメッセー ジの実サイズはわずかに大きい可能性がありますが、 その代わり、このサイズを超過するまでメッセージ全 体を含めます。 デフォルト値は 65536 です。 Client/AggregateMessages Application.xml 集約メッセージをサポートするクライアントへの集約 メッセージの配信を有効にします。この設定が無効に なっている場合、サーバーはクライアントに配信する 前に集約メッセージを個々のメッセージに分割しま す。 デフォルト値は “true“ です。 StreamManager/Live/Queue Application.xml ライブストリームにパブリッシュされる着信メッセー ジをキューに入れます。これは、サブスクライブして いるクライアントに送信する前にサーバーが集約メッ セージを作成できるようにするためのものです。 キューが有効になっていない場合は、集約メッセージ は作成されません。 デフォルト値は “true“ です。 StreamManager/Live/Queue/MaxQ ueueSize Application.xml ライブキューが、その中に含むメッセージを送信する までに拡大できる最大サイズ(バイト単位)を定義し ます。 キューのサイズを大きくするとより大きな集約を作成 でき、サーバーの効率が高まりますが、送信に待ち時 間が発生します。キューのサイズを小さくすると、待 ち時間は減少しますが効率は低下します。 StreamManager/Live/Queue/MaxQ ueueDelay Application.xml メッセージが送信されるまでのライブキューの最大遅 延時間(ミリ秒単位)を定義します。 この設定は、パブリッシュしているストリームに許容 できない長さの待ち時間が発生しないようにするのに 使用できます。 遅延を大きくするとより大きな集約を作成でき、サー バーの効率が高まります。遅延を減らすと、待ち時間 は減少しますが効率は低下します。 StreamManager/Live/Queue/Aggre gateMessages Application.xml キューの消去時に集約メッセージが生成されるか否か を決定します。 この設定が有効であると、キュー内のメッセージが集 約メッセージとしてまとめられ、送信効率を向上させ ます。 キューを有効にし、集約メッセージの生成を無効にす ることができますが、それによりパフォーマンス上の 利点が生まれるわけではありません。 デフォルト値は “true“ です。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 20 サーバーの設定 要素 設定ファイル 説明 StreamManager/Live/Queue/Aggre gateMessages/MaxAggMsgSize Application.xml サーバーが作成する集約メッセージの最大サイズを定 義します。サーバーは、必要に応じて、より小さい集 約を作成できます。 サーバーは、MaxQueueSize よりも大きなメッセージ を作成できないので、この数値は通常、キューの設定 されたサイズ以下に設定されます。 Proxy/AggregateMessages 仮想ホストがエッジプロキシとして設定されている場 合に、エッジキャッシュから集約メッセージを配信す るかどうかを決定します。 Vhost.xml デフォルト値は false です。 この設定を無効にした場合、エッジサーバーが発信元 から集約メッセージを受信すると、メッセージは キャッシュされる前に分割されます。 集約メッセージが有効な場合に、エッジキャッシュか ら返される集約メッセージのサイズ(バイト単位)を 定義します。 Proxy/AggregateMessages/MaxAgg Vhost.xml MsgSize この設定は、ディスクキャッシュから取得されたメッ セージにのみ適用されます。オリジンサーバーから直 接受信された集約メッセージは、現状のまま返されま す。そのため、メッセージのサイズは集約メッセージ のサイズに対するオリジンサーバーの設定により決定 されます。 集約メッセージを使用するようにサーバーとアプリケーションを設定しても、以下の状況からそれらのメッセージは配信さ れません。 • クライアントの Flash Player のバージョンが、9.0.60.0 未満です。 • ストリームがオーディオフィルター、ビデオフィルターまたは FPS 制御に設定されています。 • ストリームにはトランスコードが必要です。 これらのいずれかの条件が存在する場合、Flash Media Server は集約メッセージをサブメッセージに分け、メッセージが個 別に配信されます。 集約メッセージが有効になったことを確認した後、Server.xml ファイルの設定を使用して、メッセージのサイズを設定でき ます。また、ストリームのタイプに基づいて、メッセージを有効または無効にすることもできます。詳細については、212 ページの「Streams」を参照してください。 また、Application.xml ファイルでメッセージキューを設定することもできます。詳細については、156 ページの 「Queue」を参照してください。 オーディオサンプルの結合 重要:集約メッセージを送信し、同じアプリケーション内のオーディオサンプルを結合しないでください。 ライブストリームのブロードキャスト中により多くの接続を処理するには、オーディオサンプルを結合します。 1 rootinstall/conf/_defaultRoot_/_defaultVHost_/Application.xml ファイルを開きます。 注意:これらの値を、仮想ホストレベルまたはアプリケーションレベルで Application.xml ファイルに設定できます。 アプリケーションレベルで値を設定する場合は、Application.xml ファイルをアプリケーションのフォルダーにコピーし ます。 2 ファイルの StreamManager / Audio /「CombineSamples」 セクションを指定し、値に次のエレメントを設定します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 21 サーバーの設定 要素 説明 Subscribers ストリームのサブスクライブ側の数がこの値を超えていると、オーディオサ ンプルは結合されます。デフォルト値は 8 です。ライブストリーミング容量 を増やすには、この値を 1 に設定します。 LoCPU CPU がこの値を下回っていると、オーディオサンプルは結合されません。デ フォルト値は 60 です。ライブストリーミング容量を増やすには、この値を 1 に設定します。 HiCPU CPU がこの値を上回っていると、オーディオサンプルは結合されません。デ フォルト値は 80 です。ライブストリーミング容量を増やすには、この値を 1 に設定します。 MaxSamples 複数のサンプルを 1 つのメッセージに結合します。デフォルト値は 4 です。 ライブストリーミング容量を増やすには、この値を 8 に設定します。 3 サーバーを再起動します。 接続要求の制限 サーバーに対する接続レートが高いと、既にサーバーに接続されているユーザーの作業に悪影響を与えることがあります。 1 Server.xml 設定ファイルで次のコードを探します。 <Root> <Server> ... <Protocol> <RTMP> <Edge> <MaxConnectionRate>100</MaxConnectionRate> 要素 説明 影響 MaxConnectionRate サーバーが 1 秒間に許可する、リスナーごとの外部か この値を超えるレートで要求された接続は らの接続の最大数。リスナーは、Adaptor.xml ファ TCP/IP ソケットキューに残り、キューが長くな イルの HostPort エレメントで定義されます。サー ると、オペレーティングシステムによって警告 なしに破棄されます。 バーがリッスンするよう設定されている各ポートが、 リスナーを表します。最大接続レートは、12.5 のよ うに小数点以下まで設定することができます。値を 0 または -1 にすると、この機能は無効になります。 このエレメントの値は、すべてのリスナーに対するグ ローバル設定です。このエレメントで 1 秒間の接続が 10 に設定されている場合、リスナーごとの 1 秒間の 接続数は 10 に制限されます。リスナーが 3 つあり、 MaxConnectionRate が 10 に設定されている場合、 サーバーは最大接続レートとしてこれを合計した値を 適用するため、1 秒あたりの接続数は 30 となります。 2 XML を検証し、XML ファイルを保存します。 3 サーバーを再起動します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 22 サーバーの設定 アイドル状態の接続の終了 場合によっては、ソケットのサーバー側が認識しないうちに、クライアントがアプリケーションを終了していることがあり ます。この現象は、管理しているソケットに対して TCP クローズメッセージを送信せずにルーターが抜かれたり、クラッ シュしたりした場合や、ノートパソコンがドッキングステーションから切り離されたりした場合に発生することがあります。 新しいクライアントおよびアクティブなクライアント用にこれらのリソースを再要求するために、サーバーがアイドル状態 のクライアントを閉じることができます。 Flash Media Server は、しばらく静止していたソケットを使用して小さな ping メッセージを送信します。遠端のクライア ントが消失した場合、サーバーの TCP はそのデータの再送を最終的に停止します。これが発生した場合、ソケットが シャットダウンし、サーバーは関連するクライアントオブジェクトなどをクリーンアップできます。 クライアントがアイドル状態かどうかをチェックする頻度は、Server.xml、Vhost.xml、Application.xml の各設定ファイ ルのエレメントによって指定されます。クライアントが最大アイドル時間(デフォルトは 10 分)より長い間アイドル状態に なっている場合、サーバーは NetConnection オブジェクト(クライアント)に対して、code プロパティに NetConnection.Connect.Idle を設定してステータスメッセージを送信し、その後に NetConnection.Connect.Closed を設定して ステータスメッセージを送信します。サーバーは、サーバーへのクライアント接続を閉じて、アクセスログに 432 x-status コードを書き込みます。また、 「クライアント x は y 秒間アイドル状態です」などのメッセージをコアおよびイベントログに 書き込みます。 アイドル状態の接続を閉じるには、Server.xml ファイルでこの機能を有効にします。Server.xml ファイルでこの機能を有 効にすると、Vhost.xml ファイルと Application.xml ファイルで個々の仮想ホストの機能または個々のアプリケーションの 機能を無効にすることができます。Vhost.xml ファイルで値が定義されていなければ、サーバーに接続されているすべての クライアントに対して、Server.xml 設定ファイルで定義された値が適用されます(Vhost.xml の値は Server.xml の値より 優先されます)。Application.xml ファイルで定義されている値は、Vhost.xml ファイルで定義されている値より優先され ます。 アイドル状態の接続の終了の有効化 1 VHost.xml ファイルで次の行を見つけます。 <AutoCloseIdleClients enable="false"> <CheckInterval>60</CheckInterval> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> 2 次のエレメントを編集します。 要素 説明 影響 AutoCloseIdleClients アイドル状態のクライアントを閉じるには、 enable 属性を true に設定します。enable 属 性を省略した場合、または true に設定しな かった場合、この機能は無効になります。デ フォルト値は false です。 CheckInterval MaxIdleTime サーバーが、クライアント接続がアクティブ かどうかをチェックする間隔を秒単位で指定 します。デフォルト値は 60 秒です。 クライアントが切断されるのは、そのクライアント が MaxIdleTime 値を超えた後、初めてサーバーが クライアントが切断されるまでの最大アイド ル時間を秒単位で指定します。このエレメン トが 0 以下の場合は、デフォルトのアイドル 小さい値を設定すると、不必要に接続が切断されて しまう場合があります。このエレメントを設定する ときは、ネットワークの待ち時間を考慮してくださ い。アイドル時間がサーバーとクライアント間の通 常の往復よりも短い場合、接続が解除されてしまう 場合があります。 時間が使用されます。デフォルトのアイドル 時間は 600 秒(10 分)です。 最終更新日 2010/9/8 接続がアイドル状態かどうかをチェックしたときで す。間隔を短く設定すれば、接続を切断するタイミ ングがより信頼できるものになります。 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 仮想ホスト設定の指定 Vhost.xml ファイルでは、仮想ホストのこの機能を無効にしたり、仮想ホストの最大アイドル時間を別に指定したりするこ とができます。 1 Vhost.xml ファイルで次のコードを探し、コメントを削除します。 <VirtualHost> <AutoCloseIdleClients enable="false"> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> </VirtualHost> 2 次のエレメントを編集します。 要素 説明 AutoCloseIdleClients 個々の仮想ホストの機能を無効にするには、enable 属性を false に設定します。Server.xml でこのエレ メントが無効になっている場合は、Vhost.xml ファイルで true を指定しても、すべての仮想ホストに対 してこの機能が無効になります。 MaxIdleTime クライアントが切断されるまでの最大アイドル時間を秒単位で指定します。デフォルトのアイドル時間 は 600 秒(10 分)です。仮想ホストごとに異なる値を設定できます。 このエレメントに値が設定されていない場合、サーバーは Server.xml ファイルで設定されている値を 使用します。 Vhost.xml ファイルの MaxIdleTime エレメントの値は、Server.xml ファイルの MaxIdleTime エレメン トの値より優先されます。 3 サーバーを再起動します。 アプリケーションの設定の指定 Application.xml ファイルでは、アプリケーションのこの機能を無効にしたり、アプリケーションの最大アイドル時間を別 に指定したりすることができます。 1 Application.xml ファイルで次のコードを探し、コメントを削除します。 <VirtualHost> <AutoCloseIdleClients enable="false"> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> </VirtualHost> 2 次のエレメントを編集します。 要素 説明 AutoCloseIdleClients 個々のアプリケーションの機能を無効にするには、enable 属性を false に設定します。Server.xml でこ のエレメントが無効になっている場合は、Application.xml ファイルで true を指定しても、すべてのア プリケーションに対してこの機能が無効になります。 MaxIdleTime クライアントが切断されるまでの最大アイドル時間を秒単位で指定します。デフォルトのアイドル時間 は 600 秒(10 分)です。アプリケーションごとに異なる値を設定できます。 このエレメントに値が設定されていない場合、サーバーは Vhost.xml ファイルで設定されている値を使 用します。Vhost.xml でこのエレメントに値が設定されていない場合は、Server.xml ファイルで設定 されている値を使用します。 Vhost.xml ファイルの MaxIdleTime エレメントの値は、Server.xml ファイルの MaxIdleTime エレメン トの値より優先されます。 3 サーバーを再起動します。 最終更新日 2010/9/8 23 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 アプリケーションをサーバープロセスに割り当てる方法の設定 注意:このセクションは、Flash Media Interactive Server と Flash Media Development Server にのみ適用されます。 Flash Media Streaming Server は、複数のプロセスをサポートしていません。 状況によっては、アプリケーションをサーバープロセスに割り当てる方法を変更する必要があります。通常は、サーバーの 起動時に、FMSMaster.exe(Windows)または fmsmaster(Linux)というプロセスが起動します。アプリケーションイ ンスタンスは、FMSCore.exe(Windows)または fmscore(Linux)というプロセスで実行されます。マスタープロセス は、必要に応じてコアプロセスを開始する監視機能です。マスタープロセスは一度に 1 つしか実行できませんが、コアプロ セスは一度に複数実行できます。 注意:実行できるコアプロセスの数はシステムメモリによって制限されていますが、100 を超えるコアプロセスを実行しな いでください。20 を超えるコアプロセスが必要になることは恐らくありません。コアプロセスの数を設定し、reloadApp() Administration API または HTTP コマンドを使用する場合は、Tech Note kb403044 を参照してください。 アプリケーションをサーバープロセスに割り当てる方法は、Application.xml 設定ファイルの Process セクションで設定で きます。仮想ホストフォルダーの Application.xml ファイル(例、 rootinstall/conf/_defaultRoot_/_defaultVHost_/Application.xml)の設定は、その仮想ホストで実行されているすべて のアプリケーションに適用されます。アプリケーションのフォルダーにある Application.xml ファイル(例、 rootinstall/applications/myApp/Application.xml)の設定は、そのアプリケーションにのみ適用されます。XML の構造 は以下のようになっています。 <Application> <Process> <Scope>vhost</Scope> <Distribute numprocs="3"></Distribute> <LifeTime> <RollOver></RollOver> <MaxCores></MaxCores> </LifeTime> <MaxFailures>2</MaxFailures> <RecoveryTime>300</RecoveryTime> </Process> ... </Application> プロセススコープの設定 ❖ Scope タグは、アプリケーションインスタンスをコアプロセスに割り当てるレベルを指定します。アプリケーションイン スタンスは 1 つのプロセス内で単体で実行できます。また、他のインスタンスと一緒に実行することもできます。Scope エレメントには次のいずれかの値を入力します。 値 説明 adaptor アダプター内のすべてのアプリケーションインスタンスが 1 つのプロセスでまとめて実行されます。 vhost 仮想ホスト内のすべてのアプリケーションインスタンスが 1 つのプロセスでまとめて実行されます。これがデフォル ト値です。 app 1 つのアプリケーションのすべてのインスタンスが 1 つのプロセスでまとめて実行されます。 inst 各アプリケーションインスタンスは、独自のプロセスで実行されます。アプリケーションを分離するにはこの値が最 適です。この値では、システムリソースが最も多く消費されます。 独自のプロセスで各インスタンスを実行すると、多数のプロセスを作成できます。Distribute numprocs 属性を 1 よ り大きい値に設定すると、その数のプロセスにインスタンスを分散させることができます。 最終更新日 2010/9/8 24 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 複数のコアプロセスへのプロセススコープの分配 この 4 つのプロセススコープだけでは、すべての分配処理を適切に行えない場合もあります。例えば、アプリケーションが 1 つあり、そのアプリケーションの 25 のインスタンスを実行する必要がある場合、これらのインスタンスを 1 つのコアプロ セス(<Scope>app</Scope>)に分散するか、25 のコアプロセス(<Scope>inst</Scope>)に分散することができます。この 場合、Scope を app に、Distribute numprocs を 3 に設定して、アプリケーションインスタンスを 3 つのコアプロセスに分配 します。 注意:numprocs 属性の値に制限はありませんが、40 を超えるプロセスが必要になることはほぼありません。使用可能な RAM にもよりますが、ほとんどの場合、3 ∼ 11 が現実的な値と言えます。素数を使用すると、接続を均等にプロセスに分 配できるので、この属性には素数値を指定することをお勧めします。 スコープは包含関係にあり、厳密に順序付けされています。アダプターには仮想ホストが含まれ、仮想ホストにはアプリ ケーションが含まれ、アプリケーションにはインスタンスが含まれ、インスタンスにはクライアントが含まれます。 Distribute タグの値は、Scope タグの値よりも低い順序のスコープである必要があります。つまり、Scope の値が adaptor の場 合、Distribute の値は vhosts、apps、insts または clients にすることができます。Scope の値が app の場合、Distribute の値は insts または clients にすることができます。デフォルトでは、サーバーは Scope タグで指定されている値の 1 つ下の値を使用 します。 1 scope 値を設定します。 2 numprocs 値を 1 より大きい値に設定します。numprocs のデフォルト値は 3 です。これは、デフォルトでは、アプリケー ションインスタンスを 3 つのコアプロセスに分配することを意味します。 3 Distribute エレメントには次のいずれかの値を入力します。 値 説明 vhost または vhosts 仮想ホスト内のアプリケーションのすべてのインスタンスが 1 つのプロセスでまとめて実行されます。 app または apps 1 つのアプリケーションのすべてのインスタンスが 1 つのプロセスでまとめて実行されます。 inst または insts 各アプリケーションインスタンスは、独自のプロセスで実行されます。これがデフォルト値です。この値を選択する場 合は、Distribute numprocs 属性を 1 より大きい値に設定する必要もあります。 client または clients 各クライアント接続は、独自のプロセスで実行されます。 この値は、ステートレスアプリケーションにのみ使用します。ステートレスアプリケーションでは、クライアントが他 のクライアントとやり取りを行う必要はなく、クライアントはライブストリームにアクセスしません。例えば、大半の VOD(ビデオオンデマンド)アプリケーションは、各クライアントが他のすべてのクライアントとは無関係にコンテ ンツを再生するので、ステートレスです。チャットアプリケーションやゲームアプリケーションは、すべてのクライア ントがアプリケーションの状態を共有するので、ステートレスではありません。例えば、共有チャットアプリケーショ ンが clients に設定されていると、メッセージは複数のプロセスに分割されてしまうので、一部のチャット参加者に届 かなくなります。 コアプロセスの数と各プロセスの実行時間の設定 ❖ コアプロセスの数(同時に存在できるコアプロセスの最大数)は MaxCores タグで、コアプロセスを実行できる時間 (秒)は RollOver タグで指定します。コアプロセスが制限値に達する場合、新しい接続はすべて新しいコアプロセスに ロールオーバーされます。 次の図は、サーバーがプロセスをロールオーバーするしくみを示しています。XML では、ロールオーバー時間は 3,600 秒(1 時間)に設定されているので、1 時間ごとに新しいプロセスが開始されます。また、コアプロセスの最大値は 3 に 設定されているので、プロセスの最大数は常に 3 つとなります。 <Process> <Scope>app</Scope> <LifeTime> <RollOver>3600</RollOver> <MaxCores>3</MaxCores> </LifeTime> ... 最終更新日 2010/9/8 25 FLASH MEDIA SERVER 4.0 設定および管理ガイド 26 サーバーの設定 A B 12:00 12:20 C D E 1:00 2:00 3:00 4:00 5:00 A. クライアント接続 B. プロセス 1 開始 C. プロセス 2 開始 D. プロセス 3 開始 E. プロセス 4 開始、コアプロセスの最大数に達したので、プロセス 1 終了 1 つのプロセスが開始すると、そのプロセスは次のプロセスが開始するまで、新しい接続を受け付けます。つまり、プロ セス 1 が開始すると、プロセス 1 はプロセス 2 が開始するまでアプリケーションに対する新しいクライアント接続を受け 付け、プロセス 2 はプロセス 3 が開始するまで新しいクライアント接続を受け付けるというようなしくみになっていま す。 プロセス 1 の継続時間は、ロールオーバー値で指定された時間に達していることも達していないこともあります。これ は、ロールオーバー値が、実際の時刻に合わせて調整されているためです。プロセス 1 の継続時間は、プロセス 1 の開始 時刻によってある程度決まります。例えばこの図では、プロセスの開始時刻は 12:20 なので、プロセス 1 の継続時間は 40 分となります。これは、次の正時までの時間が 40 分であるためです。つまり、最初のプロセスの継続時間はそのプロ セスの開始時刻によって決まり、以降のプロセスについては、指定されたロールオーバー時間と同じになります。 この機能を無効にするには、RollOver を 0 に設定します。デフォルトでは、この機能は無効になっています。 注意:複数の VHost があり、Process/Scope が adaptor に設定されている場合は、各 VHost について同じ RollOver 値を 設定する必要があります。 VOD アプリケーションなどのステートレスなアプリケーションでは、古いコアプロセスが引き続き前の接続を提供しま す。この場合は、同時に実行できるコアプロセスの最大数を制限するように MaxCores タグに値を指定できます。アプリ ケーションがステートレスでない場合、サーバーは MaxCores に割り当てられている値を無視して、これを 1 に設定しま す。これにより、アプリケーションインスタンスが複数のプロセスに分散されないようになりますが、クライアントの接 続は定期的に切断されます。この機能を無効にするには、MaxCores を 0 に設定します。デフォルトでは、この機能は無 効になっています。 注意:複数のプロセスにクライアントを分散させるようにアプリケーションを設定した場合、そのアプリケーションはス テートレスであると見なされます。この設定を行うには、Distribute numprocs 属性を 1 より大きい値に設定してから、 Distribute タグを clients に設定するか、Scope タグを inst に設定します。 プロセス障害のチェック 1 MaxFailures タグに値を入力し、コアプロセスが無効になるまでに許可されるプロセス障害の最大数を指定します。デ フォルト値は 2 です。 2 一度コアプロセスが無効になると、マスタープロセスは復旧までの最低時間が経過するまでコアプロセスを起動しませ ん。RecoveryTime タグに値を入力し、復旧までの最低時間を含むエレメントを指定します。プロセス障害のチェックを 無効にするには、このタグを 0 に設定します。 この機能を使用すると、障害のあるコアプロセスが非常に短い時間で繰り返し起動することによって CPU のすべてを占有 してしまうような状態を回避できます。 注意:Administration API を使用してロードされたアプリケーション(Administration Console を使用してロードされ たアプリケーションを含みます)では、プロセス障害がチェックされません。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 27 サーバーの設定 RAW アダプターの設定 Flash Media Server 3.5.3 Record and Watch(RAW)ファイル形式では、ライブメディアを、どのバージョンの Flash Player にもストリーミング される設定可能なブロックに記録します。RAW ファイル形式を使用して、パフォーマンスに関する問題を引き起こさずに、 長い複数のビットレートに対応する DVR ストリームを提供します。RAW ファイル形式は、H.264 ビデオ、データのみ、 オーディオのみなどを含む Flash Media Server がサポートするすべてのストリームを記録および再生します。 1 rootinstall/conf/Server.xml ファイルをテキストエディターで開きます。 2 サーバーが RAW アダプターをどのように使用するかを設定するには、次の XML パラメーターを編集します。 <Server> <Streams> <StreamLogLevel>warning</StreamLogLevel> <Raw> <EnableAggMsgs>true</EnableAggMsgs> <MaxAggMsgSize>65536</MaxAggMsgSize> </Raw> ... エレメント デフォルト値 StreamLogLevel warning 説明 すべてのストリームアダプター(FLV、MP4 および RAW)ログレベルを制 御します。デフォルト値は warning です。使用できる値は、verbose、 warning および error です。 Raw コンテナエレメント。 EnableAggMsgs true RAW アダプターを制御するコンテナエレメント。 RAW アダプターが集約メッセージを生成するか(true)生成しないか (false)を指定します。デフォルト値は true です。集約メッセージは、 サーバーのパフォーマンスを向上させます。 MaxAggMsgSize 集約メッセージのバイト単位の最大サイズ。デフォルト値は 65536 です。 65536 任意の正の整数を使用できます。 3 XML ファイルを保存し、検証します。 4 サーバーを再起動します。 RTMPE の無効化 重要:デフォルトでは、RTMPE(暗号化された Real-Time Messaging Protocol)はサーバーの Adaptor.xml ファイルで 有効になっています。セキュリティを最大にするには、RTMPE を有効にしておくことをお勧めします。詳しくは、 「Flash Media Server Hardening Guide」を参照してください。 ただし、状況によっては、RTMPE を無効にする必要がある場合もあります。RTMPE は暗号化チャネルを使用しているの で、パフォーマンスに若干の影響があり、RTMP より 15% 高い処理能力を必要とします。Flash Media Server に接続する アプリケーションを制御しておらず、RTMPE を使用する必要がない場合は、アダプターレベルで RTMPE を無効にできま す。 アプリケーションは、暗号化チャネルまたは暗号化されたトンネリングチャネルを要求するために、それぞれ rtmpe または rtmpte を NetConnection.connect() URL で指定します(例、nc.connect("rtmpe://www.example.com/myMediaApplication"))。 ポートを明示的に指定しないで、アプリケーションで RTMPE を指定すると、Flash Player は RTMP の場合と同様に 1935 (RTMPE)、443(RTMPE)、80(RTMPE)、80(RTMPTE)という順序でポートをスキャンします。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 注意:現在 RTMPE は、サーバー間またはエッジサーバーからオリジンサーバーでは使用できません。このような場合、代 わりに RTMPS を使用できます。 1 無効にするアダプターの Adaptor.xml ファイルを開きます。このファイルは、rootinstall/conf にあります。 2 次の XML を探します。 <RTMP> <!-- RTMPE is the encrypted RTMP protocol covering both RTMPE and RTMPTE --> <!-- This is enabled by default, setting enabled to "false will not --> <!-- allow these protocols on this adaptor --> <RTMPE enabled="true"></RTMPE> </RTMP 3 RTMPE enabled 属性を 「false」に設定します。 4 サーバーを再起動します。 関連項目 107 ページの「XML 設定ファイルの参照」 「Flash Media Server Hardening Guide」 セキュリティ機能の設定 セキュリティの詳細については、「Flash Media Server Hardening Guide」を参照してください。 仮想ホストへの接続を許可するドメインの制限 必要に応じて、仮想ホストへの接続を許可するドメインを制限できます。デフォルトでは、すべてのドメインに対して接続 が許可されます。 1 rootinstall/conf/fms.ini ファイルを開きます。 2 VHOST.ALLOW パラメーターに、サーバーへの接続を許可するドメインをカンマで区切って指定します。デフォルト値 は true です。 値が設定されている場合は、ここで指定したドメインのみが許可されます。例えば、VHOST.ALLOW = example.com, example2.com を指定すると、example.com ドメインと example2.com ドメインからの接続が許可されます。localhost 接続を許可するには、localhost を指定します。詳細については、219 ページの「Vhost.xml ファイル」を参照してくだ さい。 3 サーバーを再起動します。 SWF ファイルの検証 アプリケーションへの接続を許可する前にクライアントの SWF ファイルを検証するように、サーバーを設定することがで きます。SWF ファイルを検証することによって、第三者が独自の SWF ファイルを作成してリソースをストリーミングする ことを防止できます。。 注意:SWF ファイルを検証するには、Flash Player 9.0.115.0 以降または Adobe® AIR™ が必要です。この機能は、Flash Media Streaming Server、Flash Media Interactive Server および Flash Media Development Server のバージョン 3.0 以 降でサポートされています。 SWF ファイルは、サーバーの次のスコープで検証できます。 • 個別のアプリケーション。アプリケーション固有の Application.xml ファイルを設定します。 最終更新日 2010/9/8 28 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 • 仮想ホストに含まれているすべてのアプリケーション。Vhost フォルダー内の Application.xml ファイルを設定します。 • すべてのサーバーレベルにアクセス可能な管理アプリケーション。Server.xml ファイルと Application.xml ファイルを 設定します。 SWF 検証は、デフォルトでは無効になっています。SWF ファイルを検証するには、Application.xml 設定ファイルで <SWFVerification enable = "true"> を設定する必要があります。検証を有効にすると、サーバーとの接続を要求するクライア ントの SWF ファイルと、検証対象の SWF ファイルが一致していることが確認されます。検証対象の SWF ファイルは、 サーバーまたは外部コンテンツリポジトリに置かれた、クライアントの SWF ファイルのコピーです。 デフォルトでは、サーバーは検証する SWF ファイルを rootinstall/applications/application_name/SWFs フォルダー内 で検索します。Application.xml ファイル、Server.xml ファイルまたは File プラグインの SWFFolder タグを使用すると、 このデフォルト設定を無効にすることができます。Flash Media Server とともに Apache をインストールしている場合、 SWF ファイルの提供元フォルダーのパスを追加できます。例えば、Windows で <SWFFolder>C:\Program Files\Adobe\Flash Media Server 4\webroot</SWFFolder> というパスを追加すると、各 SWF ファイルについて 2 つのコピーを保守する必要がな くなります。 注意:Adobe AIR アプリケーションをデプロイする場合は、AIR パッケージにコンパイルした SWF ファイルをサーバーま たは外部コンテンツリポジトリにコピーします。 クライアント SWF ファイルがサーバーに接続すると、サーバーは、そのファイルを検証します。検証が完了する場合、 SWF ファイルはアプリケーションに接続できるようになります。クライアント SWF ファイルの検証が失敗すると、サー バーと NetConnection オブジェクトとの接続が切断され、アクセスログにイベントが記録されます。サーバーは NetStream ステータスメッセージをクライアントに送信しません。 複数の SWF ファイル、または他の SWF ファイルを動的にロードする複数の SWF ファイルで構成されたクライアントアプ リケーションの場合は、サーバーが検証を試みるのは、サーバーに接続する NetConnection オブジェクトを含む SWF ファイルです。 注意:Flash Media Administration Server に接続している SWF ファイルは検証できません。 検証する SWF ファイルの特定 サーバーは、検証する SWF ファイルを以下の場所で、記載されている順に検索します。 1 アプリケーション固有の Application.xml ファイル(存在する場合)。Application.xml ファイルの SWFFolder タグに、 検証する SWF ファイルの場所が定義されています。SWFFolder にファイルパスが含まれている場合、サーバーは検証す る SWF ファイルをそのファイルパス内で探します。SWFFolder が空である場合、サーバーはデフォルトの場所である /applications/application_name/SWFs でファイルを探します。 2 仮想ホストレベルの Application.xml ファイル。この Application.xml には、仮想ホスト上のすべてのアプリケーショ ンについて、検証する SWF ファイルの場所が定義されています。ファイルの場所は SWFFolder タグで定義されます。 SWFFolder にファイルパスが含まれている場合、サーバーは検証する SWF ファイルをそのファイルパス内で探します。 SWFFolder が空である場合、サーバーはデフォルトの場所である /applications/application_name/SWFs でファイル を探します。 3 サーバーが Server.xml ファイル内の SWFFolder タグをチェックします。このタグでは、すべてのアプリケーションに共 通の SWF ファイルである、グローバル SWF ファイルの場所が定義されます。 4 SWF ファイルの取得のための File プラグインが有効になっている場合、サーバーは File プラグインを呼び出します。 サーバーは、Application.xml または Server.xml にある任意の値をプラグインに渡します。プラグインの開発者は、こ れらの値を外部コンテンツリポジトリへのパスに変更します。 アプリケーションの SWF 検証の設定 1 Application.xml ファイルの次のセクションを探します。 最終更新日 2010/9/8 29 FLASH MEDIA SERVER 4.0 設定および管理ガイド 30 サーバーの設定 <Application> ... <SWFVerification enabled="false"> <SWFFolder></SWFFolder> <MinGoodVersion></MinGoodVersion> <DirLevelSWFScan>1</DirLevelSWFScan> <MaxInitDelay>5</MaxInitDelay> <FirstHashTimeout>5</FirstHashTimeout> <FinalHashTimeout>60</FinalHashTimeout> <UserAgentExceptions> <Exception to="" from=""/> </UserAgentExceptions> <Cache> <TTL></TTL> <UpdateInterval></UpdateInterval> </Cache> </SWFVerification> </Application> 2 次のエレメントを編集します。 要素 属性 SWFVerification enabled 説明 この機能のオンとオフを切り替えるには、enabled 属性を true または false に 設定します。デフォルト値は false です。 SWFFolder なし クライアント SWF ファイルのコピーを格納する単一のフォルダーまたはセミ コロンで区切ったフォルダーのリスト。これらの SWF ファイルは、SWF ファ イルの接続を検証するために使用されます。これらのファイルが、検証対象の SWF ファイルです。 デフォルト値は、アプリケーションのフォルダーに /SWFs を追加した文字列 です。例えば、myApplication というアプリケーションでは、このエレメン トに値が設定されていなければ、検証の対象となる SWF ファイルは applications\myApplication\SWFs フォルダーに置かれます。 File プラグインを使用して、外部コンテンツリポジトリ内の SWF ファイルを 検証する場合は、このフィールドを空白のままにします。 Flash Media Server とともに Apache をインストールしている場合、SWF ファイルの提供元フォルダーのパスを入力します。例えば、Windows の webroot ディレクトリから SWF ファイルを提供する場合、パスとして C:\Program Files\Adobe\Flash Media Server 4\webroot を入力します。 重要:指定のフォルダー内にあるすべての SWF ファイルは、サーバーの起動 時とキャッシュ TTL の期限が切れるたびに、メモリーにハッシュおよびキャッ シュされます。SWF ファイルの数が多くなると、起動時間が遅くなり、メモ リー使用率が高くなります。 MinGoodVersion なし この機能を使用するために最低限必要となるバージョンを指定します。デフォ ルト値は 0 で、現行および将来のすべてのバージョンを使用できます。これは Flash Player で使用される予約されたフィールドです。デフォルト値のままに することをお勧めします。 DirLevelSWFScan なし SWF ファイルをスキャンする親フォルダー内のサブフォルダーのレベルの数 を指定します。親フォルダーは、SWFFolder エレメントで指定します。正の値 を指定すると、その数のサブフォルダーのレベルがスキャンされます。0 を指 定すると、親フォルダーはスキャンされますが、サブフォルダーはスキャンさ れません。負の値を指定すると、すべてのサブフォルダーのレベルがスキャン されます。デフォルト値は 1 で、サブフォルダーレベルが 1 つだけスキャンさ れます。 MaxInitDelay なし SWF ファイルを処理する最大時間を秒数で示します。デフォルト値は 5 秒で す。 FirstHashTimeout なし クライアントがサーバーへの最初の検証を提供するため使用できる最大時間。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 31 サーバーの設定 要素 属性 説明 FinalHashTimeout なし クライアントがサーバーへの最後の検証を提供するため使用できる最大時間。 UserAgentExceptions なし コンテナ Exception from 検証の対象から除外するユーザーエージェント。from 属性と to 属性を使用し て、除外するバージョンの範囲を指定します。すべての数値フィールドが同じ 長さになるように編集されてから、文字列が比較されます。詳細については、 Application.xml ファイルのコメントと、このトピックの「検証例外の作成」 to を参照してください。 Cache なし コンテナ TTL なし SWF ファイルの有効時間(分)。デフォルト値は 1,440 分(24 時間)です。 SWF ファイルがサーバーから削除されても、24 時間は検証値がキャッシュに 残ります。ユーザーはキャッシュが期限切れになるまでアプリケーションに接 続できます。 UpdateInterval なし キャッシュにミスがあるときに、サーバーが SWFs フォルダーをスキャンして 更新がないかどうかをチェックするまでの最大待機時間(分)。デフォルト値 は 5 分です。つまり、SWFs フォルダーにコピーされた SWF ファイルは 5 分 以内にサーバーにより取得されます。 検証例外の作成 ❖ Exception エレメントを、Application.xml ファイルの UserAgentExceptions セクションに追加します。 Adobe Flash Media Live Encoder などのアプリケーションでは、サーバーが使用する SWF 検証の形式をサポートして いません。Flash Media Live Encoder など、指定したユーザーエージェントが SWF 検証を省略できるよう、SWF 検証 規則に対して次のように 1 つ以上の例外を追加することができます。 <SWFVerification enabled="true"> ... <UserAgentExceptions> <Exception to="FME/0.0" from="FME/2.5"/> </UserAgentExceptions> </SWFVerification> SWF 検証のグローバル設定 すべてのアプリケーション共通の、サーバー上の SWF ファイルのグループを検証することができます。 ❖ Server.xml ファイルの Root/Server/SWFVerification/SWFFolder タグで、検証する SWF ファイルを含むフォルダーを指 定します。これらの SWF ファイルでは、その他の値を設定することもできます。 注意:Server.xml ファイルの SWFFolder タグを設定してから、Vhost レベルまたはアプリケーション固有の Application.xml ファイルで検証を有効にします。このトピックの「アプリケーションの SWF 検証の設定」を参照してく ださい。 検証の対象となる SWF ファイル用のフォルダーの作成 1 SWFFolder 値がデフォルトの場合、サーバー上のアプリケーションのフォルダーに SWFs というフォルダーを作成しま す。 例えば、アプリケーション名が myMediaApp であれば、applications/myMediaApp/SWFs というフォルダーを作成 します。SWFs フォルダーにある SWF ファイルでは、myMediaApp アプリケーションのすべてのインスタンスへの接 続が検証されます。 2 アプリケーションインスタンスの SWF ファイルを検証するには、SWFs ディレクトリにインスタンスフォルダーを作成 します(例、applications/myMediaApp/SWFs/chat01、applications/myMediaApp/SWFs/chat02 など)。 SWFs ディレクトリにある SWF ファイルは、アプリケーションのすべてのインスタンスを検証できます。一方、インスタ ンスフォルダー内の SWF ファイルは、そのインスタンスのみを検証できます。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 注意:いずれのディレクトリにも、複数の SWF ファイルが存在する場合があります。SWF ファイルの名前を変更しても、 それがクライアント SWF ファイルのコピーであれば検証に使用できます。 クロスドメインファイルによるサーバーへのアクセスの制限 エッジサーバーまたは Administration Server に対するアクセスは、クロスドメイン XML ファイルによって制限すること ができます。クロスドメイン XML ファイルでドメインの一覧を指定すると、この一覧からクライアントがエッジサーバー または Administration Server にアクセスすることができます。 1 rootinstall/conf/Server.xml を開き、Server エレメント(Administration Server の場合は AdminServer エレメント) 内の CrossDomainPath エレメントを探します。 <Server> ... <CrossDomainPath></CrossDomainPath> 2 CrossDomainPathElement 内のクロスドメインファイルの場所を指定します。例えば、次のようにします。 <CrossDomainPath>C:/Security/config/files/fms/crossdomain.xml</CrossDomainPath> 3 Server.xml ファイルを検証して保存し、サーバーを再起動します。 Flash Media Administration Server へのアクセスの制限 Administration Console は Adobe Flash Media Administration Server に接続し、Adobe Flash Media Administration Server は Adobe Flash Media Server に接続します。デフォルトでは、Administration Server は、ポート 1111 にインス トールされます。ポート 1111 に対するすべての外部アクセスをブロックし、admin サーバーへのアクセスをファイア ウォール内のクライアントのみに制限することをお勧めします。 また、ドメインベースの制限を使用して、admin サーバーへのアクセスを制限することもできます。 デフォルトでは、クライアントはすべてのドメインまたは IP アドレスから Flash Media Administration Server に接続で きますが、これにはセキュリティリスクが伴います。必要に応じて、Server.xml ファイルの AdminServer セクションでこの 設定を変更できます。 1 rootinstall/conf/Server.xml を開いて、次のコードを探します。 <AdminServer> ... <Allow>all</Allow> ... </AdminServer> 2 Allow エレメントを編集し、Flash Media Administration Server に対するどの接続にサーバーが応答するかを指定しま す。このエレメントには、ホスト名、ドメイン名、IP アドレスの全体または一部を、それぞれカンマで区切って指定し ます。また、キーワード all のみを指定することもできます。例えば、<Allow>x.foo.com, foo.com, 10.60.1.133, 10.60</Allow> というように指定します。 3 XML を検証し、Server.xml ファイルを保存して、サーバーを再起動します。 失敗したログイン試行に対する制限の設定 rootinstall/conf/Server.xml ファイルで LogInLimits 設定を使用して、admin サーバーにログインしようとするときに、 クライアントが失敗できる試行回数を設定できます。これらの設定を使用して、クライアントが再度ログインを試みるのを 待機しなければならなくなる前に、試行の失敗が許可される回数を定義します。待機する必要がある時間の長さも定義しま す。また、特定の試行回数に達した後に、サーバーからユーザーを完全にロックアウトすることができます。 最終更新日 2010/9/8 32 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 待機する前に、クライアントが行うことができるログイン試行回数を設定するには、MaxFailures サブエレメントを使用しま す。失敗回数を超えると、クライアントは RecoveryTime サブエレメントによって定義された秒数を待つ必要があります。ク ライアントのログインの試行に失敗した回数が LockOutLimit と等しい場合、サーバーが再起動されるまでサーバーからロッ クアウトされます。 次の例では、ユーザーはログインを 10 回試行できます。10 回目の試行でログインに失敗した場合、再度ログインを試行す るまで 5 分(300 秒)間待つ必要があります。合計 20 回失敗した場合、サーバーが再起動されるまでログインを禁止されま す。 <Security> <LoginLimits> <!-- Default value is 3 --> <MaxFailures>10</MaxFailures> <!-- Default value is 30 --> <RecoveryTime>300</RecoveryTime> <!-- Default value is 100--> <LockoutLimit>20</LockoutLimit> </LoginLimits> </Security> 詳細については、190 ページの「LogInLimits」を参照してください。 SSL の設定 SSL (Secure Sockets Layer) は、TCP/IP 上での通信を保護するプロトコルです。Flash Media Server では、外部からと外 部への両方の SSL 接続をネイティブでサポートしています。外部からの接続とは Flash Player とサーバー間の接続であり、 外部への接続とは 2 つのサーバー間の接続です。 RTMPS は、セキュアなネットワーク接続を実現する SSL 標準に準拠しています。RTMPS を使用することで、セキュアな ポート上の TCP ソケットを介した接続が可能になります。暗号化されたデータがセキュアな接続を介して渡されるので、 第三者による不正なデータ傍受が回避されます。セキュアな接続はより高い処理能力を必要とし、サーバーのパフォーマン スを低下させる可能性があるため、高レベルのセキュリティを必要とするアプリケーションや重要または機密データを扱う 場合に限って、RTMPS を使用するようにします。 デフォルトでは、Flash Player は、Flash Media Server への接続時に、1935、443、80、80(RTMP トンネリング)とい う順序でポートをスキャンします。SSL を設定するには、ポートがセキュアであることを指定します。ポートがセキュアで あることを指定するには、マイナス( 「-」)符号をポート番号の前に付加します。RTMPS のデフォルトのセキュアポートは 443 です。デフォルトのセキュアポートを設定するには、次に示すように、 rootinstall /conf/fms.ini ファイル内の ADAPTOR.HOSTPORT パラメーターに "-443" を入力します。 ADAPTOR.HOSTPORT = :1935,-443 Flash Player は「rtmps://fmsdomain/application」文字列を発見すると、ポート 443 を使用して Flash Media Server と 通信します。Flash Media Server はポート 443 を使用してクライアントにデータを返します。「rtmp://」文字列のトラ フィックは、ポート 1935 を使用します。 SSL 接続を使用して Flash Media Server に接続するには、クライアントは次の手順に従う必要があります。 1 接続前に、NetConnection.proxyType プロパティを 「best」に設定します。 2 NetConnection.connect() メソッドの呼び出しに、RTMPS プロトコルを指定します。 SSL が設定された場合、次のクライアントコードがセキュアに接続されます。 var nc:NetConnection = new NetConnection(); nc.proxyType = "best"; nc.connect("rtmps://fmsexamples.adobe.com/vod/instance1"); -1935 のような 443 以外のポートをセキュアポートとして設定した場合、クライアントは「rtmps://host:1935/app」のよ うな URI にポートを指定する必要があります。 最終更新日 2010/9/8 33 FLASH MEDIA SERVER 4.0 設定および管理ガイド 34 サーバーの設定 注意:すべてのサーバーエディションが、RTMPE と呼ばれる RTMP のバージョンをサポートしています。RTMPE は 128 ビットの暗号化されたプロトコルで、SSL に比べると軽量です。また、デフォルトで有効になっています。詳細につい ては、 『ActionScript 3.0 リファレンスガイド』または『ActionScript 2.0 リファレンスガイド』の NetConnection.connect() の項目 を参照してください。 証明書 SSL 証明書は認証機関から取得できます。また、自分自身で作成することもできます。証明書が中間認証機関(CA)に よって署名されている場合、その証明書には、サーバーがクライアントに返す証明書の一部として、中間証明書が含まれて いる必要があります。中間 CA によって署名されている場合、証明書ファイルは次のようになります。 -----BEGIN CERTIFICATE----... -----END CERTIFICATE---------BEGIN CERTIFICATE----... -----END CERTIFICATE----- 最初の BEGIN CERTIFICATE/END CERTIFICATE ペアが、取得した証明書です。次の BEGIN CERTIFICATE/END CERTIFICATE ペアは、この証明書に署名した中間 CA です。必要に応じて、セクションを追加することができます。 外部からのセキュアな接続 SSL 証明書とその証明書の秘密鍵の場所を指定し、セキュアなポートでリッスンするようアダプターを設定します。 1 設定するアダプターの Adaptor.xml ファイルを開き、次のコードを探します。 <Adaptor> ... <SSL> <SSLServerCtx> <SSLCertificateFile></SSLCertificateFile> <SSLCertificateKeyFile type="PEM"></SSLCertificateKeyFile> <SSLPassPhrase></SSLPassPhrase> <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> <SSLSessionTimeout>5</SSLSessionTimeout> </SSLServerCtx> </SSL> ... </Adaptor> 2 次のエレメントを編集します。 要素 説明 SSLCertificateFile クライアントに送信する証明書ファイルの場所です。絶対パスまたはアダプターフォ ルダーに対する相対パスを指定します。 SSLCertificateKeyFile type = PEM" 証明書の非公開キーファイルの場所です。絶対パスまたはアダプターフォルダーに対 する相対パスを指定します。type 属性は、証明書キーファイルに使用する暗号化タイ プを指定します。これには、PEM または ASN1 のいずれかを指定できます。デフォル ト値は「PEM」です。 秘密鍵と証明書は 1 つのファイルに結合できます。 キーファイルが暗号化されている場合は、パスフレーズは SSLPassPhrase タグで指定 する必要があります。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 35 サーバーの設定 要素 説明 SSLPassPhrase 非公開キーファイルの解読に使用するパスフレーズです。非公開キーファイルが暗号 化されていない場合、このタグは空にしておきます。 SSL 暗号:コロンで区切られたコンポーネントのリスト。項目には、キー交換アルゴリ SSLCipherSuite ズム、認証方式、暗号化方式、ダイジェストタイプ、または共通グルーピングのエイ リアスの選択番号の 1 つを指定できます。SSL 暗号について詳しくない場合は、デフォ ルト設定を変更しないでください。可能な値は、122 ページの「SSLCipherSuite」に 一覧表示されています。 セッションの有効時間(分)。1 より小さい値は 1 と見なされます。デフォルト値は 5 SessionTimeout です。SessionTimeout に到達する前にクライアントがセッションに再接続した場合、 SSL ハンドシェイク中に暗号スイートリストが送信されません。 3 アダプターのセキュアポートを設定するには、rootinstall/conf/fms.ini ファイル内の ADAPTOR.HOSTPORT パラメー ターで、次のようにポート番号の前にマイナス符号を入れます。 ADAPTOR.HOSTPORT = :1935,-443 この設定により、サーバーに対してポート 1935 と 443 でリッスンするよう指示し、ポート 443 については、RTMPS 接 続のみを受け付けるセキュアポートであると通知します。ポート 1935 への RTMPS 接続は失敗します。これは、サー バーが完了することのできない SSL ハンドシェイクを、クライアントが実行しようとするためです。ポート 443 への RTMPS 接続は成功します。これは、サーバーで完了する SSL ハンドシェイクを、クライアントが実行するからです。ま た、ポート 443 への RTMP 接続も失敗します。これは、クライアントが完了することのできない SSL ハンドシェイクを、 サーバーが実行しようとするためです。 4 サーバーを再起動します。 5 rootinstall/logs/edge.00.log ファイルをチェックして、エラーが報告されていないことを確認します。 複数の仮想ホストが 1 つのアダプターに割り当てられている場合の外部からの接続の設定 クライアントの接続先ポートに基づいて証明書を返すようサーバーを設定することができます。これにより、複数の仮想ホ ストを 1 つのアダプターに割り当て、仮想ホストごとに異なる証明書を返すことができるようになります。 注意:一般的に、複数のユーザーをホスティングする場合、各仮想ホストが独自のドメイン名を持つようにします。ドメイ ン名ごとに独自の証明書が必要です。 1 Adaptor.xml ファイルで次の行を見つけます。 <Adaptor> ... <Ho4stPortList> <HostPort name="edge1" ctl_channel=":19350">${ADAPTOR.HOSTPORT}</HostPort> </HostPortList> ... </Adaptor> 2 HostPort エレメントを新しく作成し、一意の name および ctl_channel 属性を指定します。また、RTMP と SSL に対して 一意のポート番号を指定します。 例えば、デフォルトの HostPort タグのほかに、次の HostPort タグを追加します。 <HostPort name="edge2" ctl_channel=":19351">:1936,-444</HostPort> 3 HostPort エレメントごとに、SSL エレメントの下に Edge エレメントを入力し、同じ name 属性を指定します。Edge エレ メントを指定しない場合、エッジサーバーではデフォルトの SSL 設定が使用されます。 この例は、クライアントがポート 443 上で edge1 に接続するとき、edge1 が cert2.pem を返すように設定する方法を示し ています。edge2 には Edge タグがないため、edge2 は、SSL コンテナタグのすぐ下にある SSLServerCtx セクションで指定 されるデフォルト設定を使用します。クライアントがポート 444 上で接続するときには、edge2 サーバーは cert.pem を返 します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 <SSL> <SSLServerCtx> <SSLCertificateFile>cert.pem</SSLCertificateFile> <SSLCertificateKeyFile>private.pem</SSLCertificateKeyFile> <SSLPassPhrase></SSLPassPhrase> <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> <SSLSessionTimeout>5</SSLSessionTimeout> </SSLServerCtx> <Edge name="edge1"> <SSLServerCtx> <SSLCertificateFile>cert2.pem</SSLCertificateFile> <SSLCertificateKeyFile>private2.pem</SSLCertificateKeyFile> <SSLPassPhrase></SSLPassPhrase> <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> <SSLSessionTimeout>5</SSLSessionTimeout> </SSLServerCtx> </Edge> </SSL> 4 XML を検証し、ファイルを保存します。 5 サーバーを再起動します。 外部へのセキュアな接続 1 Server.xml ファイルを開いて、次のコードを探します。 <Root> <Server> <SSL> <SSLEngine></SSLEngine> <SSLRandomSeed></SSLRandomSeed> <SSLClientCtx> <SSLVerifyCertificate>true</SSLVerifyCertificate> <SSLCACertificatePath></SSLCACertificatePath> <SSLCACertificateFile></SSLCACertificateFile> <SSLVerifyDepth>9</SSLVerifyDepth> <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> </SSLClientCtx> </SSL> </Server> </Root> 2 次のエレメントを編集します。 要素 SSLRandomSeed 説明 PRNG(擬似乱数ジェネレーター)をシードするために使用するエントロピーのバイト数。8 バイト 未満の値は指定できません。デフォルト値は 16 です。エントロピーは乱数の尺度です。エントロ ピーが大きくなるほど、PRNG で生成される乱数も多くなります。 大きい数値を指定すると、サーバーの起動に時間がかかることがあります。 SSLSessionCacheGC サーバーサイドのセッションキャッシュから期限切れのセッションをフラッシュする間隔(分)。 SSLVerifyCertificate 接続中のサーバーによって返された証明書を検証するかどうかを指定するブール値。検証する場合は true、検証しない場合は false です。デフォルト値は true です。証明書の確認を無効にすると、セ キュリティリスクの生じるおそれがあります。検証を無効にする場合は、その悪影響をきちんと理解 した上で行うようにしてください。 最終更新日 2010/9/8 36 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 要素 説明 SSLCACertificatePath 証明書が格納されるフォルダー。フォルダー内の各ファイルに含まれる証明書は 1 つだけです。ま た、ファイル名にはハッシュおよび拡張子「.0」を使用する必要があります(例、e98140a6.0)。 32 ビットの Windows オペレーティングシステムでは、タグが空の場合、サーバーは rootinstall\certs ディレクトリで証明書を探します。コマンドラインで FMSMaster -console initialize を実行すると、Windows 証明書ストアを certs ディレクトリにインポートできます。 Linux では、証明書の場所を指定する必要があります。 SSLCACertificateFile 1 つ以上の 証明書を含むファイルの名前を PEM 暗号化形式で指定します。 SSLVerifyDepth 使用できる証明書の最大深度を指定します。自己署名されたルート証明書がこの深さで見つからない 場合は、証明書の確認に失敗します。デフォルト値は 9 です。 SSLCipherSuite SSL 暗号:コロンで区切られたコンポーネントのリスト。項目には、キー交換アルゴリズム、認証方 式、暗号化方式、ダイジェストタイプ、または共通グルーピングのエイリアスの選択番号の 1 つを指 定できます。SSL 暗号について詳しくない場合は、デフォルト設定を変更しないでください。可能な 値は、208 ページの「SSLCipherSuite」に一覧表示されています。 外部への SSL 接続を個別に管理するためのアダプターの設定 Server.xml ファイルの SSL セクションでは、すべてのアダプターが同じ設定を使用するように指定されます。しかし、仮想 ホストごとに異なる証明書を使用する必要がある場合もあります。このような場合は、アダプターごとに 1 つの仮想ホスト を割り当ててアダプターを個別に設定し、Server.xml ファイルの設定を無効にします。 ❖ Server.xml ファイルの SSL セクションを Adaptor.xml ファイルにコピーし、新しい値を入力します。SSLRandomSeed タグをコピーする必要はありません。このタグは、Adaptor.xml では更新できないサーバーレベルの設定であるためで す。 外部への SSL 接続を個別に管理するための仮想ホストの設定 例えば、1 番目の仮想ホストで証明書の確認を無効にし、2 番目の仮想ホストで別のフォルダーにある証明書を使用し、3 番 目の仮想ホストで異なる暗号セットを実装することができます。 1 適切な Vhost.xml ファイルで、Proxy タグの下の SSL セクションを非コメント化します。 <VirtualHost> ... <Proxy> <SSL> <SSLClientCtx> <SSLVerifyCertificate></SSLVerifyCertificate> <SSLCACertificatePath></SSLCACertificatePath> <SSLCACertifcateFile></SSLCACertificateFile> <SSLVerifyDepth></SSLVerifyDepth> <SSLCipherSuite></SSLCipherSuite> </SSLClientCtx> </SSL> </Proxy> </VirtualHost> SSL タグがある場合、SSL セクション全体が仮想ホストの設定のために使用されます。このセクションから SSL タグが省 略されている場合、サーバーはデフォルト設定を使用します。 2 サーバーを再起動します。 ハードウェア SSL プロキシで機能するための Flash Media Server の設定 ハードウェア SSL プロキシの使用時に、Flash Media Server を SSL 用に設定する必要はありません。ハードウェアは、 Flash Media Server とインターネットとの間に存在します。Flash Media Server とハードウェア間で送信されたデータは、 暗号化されません。データはハードウェアによって暗号化され、インターネットに転送されます。 最終更新日 2010/9/8 37 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 外部からポート 443 をリッスンし、クライアントからインターネット経由で送信される暗号されたデータを受信するように ハードウェアを設定します。Flash Media Server にポート 1935 でデータを転送するようにハードウェアを設定します。 Flash Media Server は、ポート 1935 でリッスンするようにデフォルト設定されています。デフォルトポートを変更した場 合は、ハードウェアがそのポートでデータを転送するように設定してください。 RPC の設定 Flash Media Server は、呼び出し可能な RPC (リモートプロシージャコール)メソッドを指定する設定を Application.xml ファイルに含んでいます。デフォルトでは、すべての RPC 呼び出しをブロックします。 <RPC> エレメントの enable 属性を true に設定することで RPC を有効にできます。例えば、以下のように設定します。 <RPC enable="true"> RPC を有効にしたら、許可された個々のメソッドをリストする必要があります。クラスの各タイプ(Client、 NetConnection、Stream および SharedObject)には呼び出し可能なメソッドの独自のホワイトリストがあります。メ ソッドまたはオブジェクトがホワイトリストに明示的にリストされていない場合、ブロックされたとみなされます。 RPC の設定は、Application.xml ファイルの <Security><RPC> エレメントに含まれます。このエレメントには、次のサブ エレメントが含まれています。 • <Client> — すべてのメソッドがデフォルトでブロックされます。 • <NetConnection> — RPC が有効な場合、デフォルトでは onStatus() メソッドのみが許可されます。 • <SharedObject> — すべてのメソッドがデフォルトでブロックされます。 • <Stream> — RPC が有効な場合、デフォルトでは onStatus() メソッドのみが許可されます。 これらの各サブエレメントが <Method> サブエレメントを使用します。各 <Method> サブエレメントは、<Allow> サブエレ メントを使用します。<Allow> サブエレメントは、許可されるメソッドをカンマで区切ったリストです。 クラスのホワイトリストにメソッドを追加するには、次の手順に従います。 1 <RPC> エレメントの enabled 属性を true に設定して RPC を有効にします。例えば、次のように設定します。 <RPC enable="true"> 2 クラスの <Allow> エレメントに許可するメソッドを追加します。次の例は、getLocal() メソッドおよび setFps() メソッド を SharedObject クラス上で呼び出せるようにします。 <SharedObject> <Method> <Allow>getLocal,setFps</Allow> </Method> </SharedObject> 3 他のクラスのデフォルトがセキュリティ標準に一致するようにします。すべてのクラスの RPC を有効にしたら、デフォ ルトで許可されているメソッドを確認してください。 メソッド名は大文字と小文字が区別され、次のいずれかの形式にする必要があります。[objectPath.] メソッド [objectPath.] オブジェクト オブジェクトは許可するけれどもそのメソッドをリストしない場合、そのオブジェクトのすべてのメソッドが許可されます。 例えば、<Allow>a.b</Allow> はメソッド a.b.c() および a.b.d() に一致します。 サーバーサイドの File オブジェクト向け仮想ディレクトリマッピングの有効化 Application.xml 設定ファイル内で、サーバーサイドの File オブジェクトの仮想ディレクトリマッピングを指定できます。 ただし、Server.xml 設定ファイル内において、機能がサーバーレベルで有効でなければなりません。 最終更新日 2010/9/8 38 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 サーバーサイドの File オブジェクトに仮想ディレクトリを有効にするには、Server.xml ファイル内で <VirtualDirectoryForFile> エレメントの enable 属性を true に設定します。Application.xml ファイル内で、 <VirtualDirectory> サブエレメントを <ScriptingEngine><FileObject> エレメントに追加します。 サーバーサイドスクリプティング用に仮想ディレクトリを提供する必要がある場合、VirtualDirectoryForFile のみを有効にし ます。これは、ストリーム用の仮想ディレクトリの追加には要求されません。File オブジェクトの仮想ディレクトリが有効 な場合は、サーバーサイドスクリプトにアクセスできるユーザーはサーバーディスクの任意の場所にファイルを書き込むこ とができます。結果的に、それはデフォルトで無効になります。それを有効にするには、Server.xml ファイルの管理者によ る設定が必要になります。 Application.xml ファイル内の File オブジェクトをマップする際に、Server.xml ファイル内で機能を有効にしていない場 合、次のメッセージがログに表示されます。 "Virtual directories for file objects is not supported due to the Server level security setting." 次の例は、Server.xml ファイル内で、サーバーサイドの File オブジェクトの仮想ディレクトリマッピングを有効にします。 <Root> <Server> <Security> <VirtualDirectoryForFile enable="true"></VirtualDirectoryForFile> ... ... ... ... Application.xml ファイルの次の例は、サーバーサイドの File オブジェクトに新しい仮想ディレクトリマッピングを作成し ます。 <Application> <ScriptEnging> <FileObject override="no"> <VirtualDirectory> /flashapps;C:\dev\Code\Flash\tincan\flashapps\ </VirtualDirectory> </FileObject> ... ... ... 一般的な設定作業 IP アドレスおよびポートの設定 fms.ini ファイルを使用して IP アドレスおよび Flash Media Server が要求をリッスンするポートを設定します。 1 rootInstall/conf/fms.ini をテキストエディターで開きます。 2 ADAPTOR.HOSTPORT パラメーターを編集します。デフォルトポートは次のとおりです。 ADAPTOR.HOSTPORT = :1935,80 3 ファイルを保存し、サーバーを再起動します。 Adaptor.xml 設定ファイルは、Adaptor/HostPortList/HostPort エレメント内の ADAPTOR.HOSTPORT パラメー ターを使用します。 <HostPort name="edge1" ctl_channel="localhost:19350" rtmfp="${ADAPTOR.HOSTPORT}">${ADAPTOR.HOSTPORT}</HostPort> 複数のアダプターの設定については、10 ページの「アダプターの追加」を参照してください。 最終更新日 2010/9/8 39 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 ポートの要件の詳細については、1 ページの「ポートの要件」を参照してください。 ピアアシストネットワークの IP アドレスおよびポートの設定 デフォルトでは、クライアントは、ポート 1935 およびポート 19350 ∼ 65535 を使用して RTMFP プロトコル経由で Flash Media Server と通信します。RTMFP は UDP を使用して通信します。クライアントは、当初、サーバー上の fmsedge プ ロセスにポート 1935 を使用して接続します。fmsedge プロセスは、19350 ∼ 65535 間のポート上の fmscore プロセスにク ライアントをリダイレクトします。 使用中のポートの数は、使用中の fmscore プロセスの数に依存します。使用中の fmscore プロセスの数は、アプリケー ションインスタンスがどのように分散されているかに依存します(24 ページの「アプリケーションをサーバープロセスに割 り当てる方法の設定」を参照してください)。新しい fmscore プロセスがそれぞれオンラインになるたびに、このプロセス は範囲内の、次に利用可能なポートにバインドします。これは、fmscore プロセス内で実行中のアプリケーションに接続し ているクライアントを fmsedge プロセスがリダイレクトする UDP ポートです。 サーバーへの最初の接続は、HostPort エレメントの rtmfp 属性で指定されたポート上で行われます。デフォルトでは、これ は RTMP クライアントが接続するのと同じポートで、fms.ini ファイル内の ADAPTOR.HOSTPORT パラメーターで定義さ れています。 <Adaptor> <HostPortList> <HostPort name="edge1" ctl_channel="localhost:19350" rtmfp="${ADAPTOR.HOSTPORT}">${ADAPTOR.HOSTPORT}</HostPort> </HostPortList> ... </Adaptor> デフォルトの初期接続ポートを変更するには、39 ページの「IP アドレスおよびポートの設定」を参照してください。 デフォルトの RTMFP 移行ポートを変更するには、Adaptor.xml 設定ファイル内の Adaptor/RTMFP/Core/HostPortList/HostPort エレメントを編集します。 各 Adaptor/HostPortList/HostPort エレメントは、fmsedge プロセスに対応します。クライアントが初期接続を行うと、 fmsedge プロセスが 個々の fmscore プロセス上の UDP ポートに接続をリダイレクトします。RTMFP 接続を受け付けるに は、各コアプロセスが少なくとも 1 つの UDP ポートでリッスンする必要があります。コアプロセスが使用できる UDP ポー トを Adaptor.xml 設定ファイルの次の場所に定義します。 <Adaptor> ... <RTMFP> ... <Core> <HostPortList> <HostPort>:19350-65535</HostPort> </HostPortList> </Core> </RTMFP> </Adaptor> Adaptor/RTMFP/Core/HostPortList/HostPort エレメントで指定したポートは、パブリックにアクセス可能でなければ なりませんが、クライアントの NetConnection 呼び出しから直接それらを参照しないでください。各 HostPort は、一連の UDP ポートを指定します。アプリケーションが開始すると、サーバーが各 HostPort セットから各 fmscore プロセスに UDP ポートを 1 つ割り当てます。指定がない場合、コアプロセスは 19350 ∼ 65535 の範囲にあるポートでリッスンします。 HostPort エレメントの値は次の形式になります。 <value-of-HostPort> := [<host-port-range> [; <host-port-range> [; ... ] ] ] <host-port-range> := [<host>][:<port-range>[, <port-range> ] ] <port-range> := <start-port>[ - <end-port> ] 最終更新日 2010/9/8 40 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 この HostPortList の例では、各コアが次の 2 つのポートをリッスンします。host1:2000-2010 または host2:3000-3010 のいずれ かのポートと、host2:5000 または host2:3010-4000 のいずれかのポート。 <HostPortList> <HostPort>host1:2000-2010; host2:3000-3010</HostPort> <HostPort>host2:5000; host2:3010-4000</HostPort> </HostPortList> 各 HostPort エレメントは、指定されたポートに対応するパブリックアドレスを指定できます。これは、指定された HostPort に関してクライアントに通知されるアドレスです。アドレスを通知するには、HostPort エレメントの public 属性に値を指定 します。public 属性は、HostPort エレメントと同じ形式になります。public 属性によって指定されるポートの数は、HostPort エレメントによって指定されるポートの数と等しくなければなりません。コアが HostPort 値の n 番目のポートでリッスンす る場合、public 属性の n 番目のポートがその値として通知されます。 public 属性を持つこの HostPortList の例では、コアが host1:1005 でリッスンする場合、パブリックに通知されるアドレスは host2:4005 になります。 <HostPortList> <HostPort public="host2:4000-5000">host1:1000-2000</HostPort> </HostPortList> 1 rootinstall/conf/_defaultRoot_/Adaptor.xml をテキストエディターで開きます。 2 HostPort エレメントの値を編集します。デフォルトポートは次のとおりです。 <Adaptor> ... <RTMFP> ... <Core> <HostPortList> <HostPort>:19350-65535</HostPort> </HostPortList> </Core> </RTMFP> </Adaptor> 3 ファイルを保存し、サーバーを再起動します。 複数のアダプターの設定については、10 ページの「アダプターの追加」を参照してください。 ポートの要件の詳細については、1 ページの「ポートの要件」を参照してください。 チェックポイントのロギングイベントの有効化 多くの企業では、顧客への課金のためにアクセスログの統計を使用しています。ライブイベントや 24 時間年中無休のプロ グラムが含まれている場合、課金を計算するために使用するイベントが、課金の対象となる期間内に発生しない場合があり ます。この問題を解決するため、チェックポイントイベントを有効にできます。チェックポイントイベントにより、イベン ト中のバイト数が定期的に記録されます。チェックポイントイベントとして使用できるのは、connect-continue、play- continue および publish-continue です。 チェックポイントイベントは、Server.xml ファイルでサーバーレベルで有効にする必要があります。Vhost.xml および Application.xml ファイルで、仮想ホストまたはアプリケーションレベルでチェックポイントを無効にすることができます。 ログアウトの間隔を、仮想ホストおよびアプリケーションレベルで変更することもできます。詳細については、 rootinstall/conf フォルダーにある XML ファイル内のコメントを参照してください。 1 rootinstall/conf/Server.xml ファイルをテキストエディターで開きます。 2 Root/Server/Logging/Checkpoints エレメントを見つけます。 最終更新日 2010/9/8 41 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 <Checkpoints enable="false"> <CheckInterval>60</CheckInterval> <LogInterval>3600</LogInterval> </Checkpoints> 3 Checkpoints enable 属性を true に設定し、<Checkpoints enable="true"> のように変更します。 4 オプションとして、CheckInterval および LogInterval エレメントの値を設定し、サーバーがログイベントをチェックする 間隔を指定することもできます。 5 ファイルを保存してパブリッシュします。 6 サーバーを再起動します。 HTTP を介した Administration API メソッドの呼び出しの許可 HTTP 経由で呼び出される可能性がある各 Administration API メソッドを指定する必要があります。 1 rootinstall/conf/fms.ini ファイルを開きます。 2 USERS.HTTPCOMMAND_ALLOW パラメーターで API をカンマで区切って指定し、サーバーを再起動します。デフォ ルト値は true です。詳細については、215 ページの「Allow(HTTPCommands)」を参照してください。 アプリケーションのデバッグ接続の許可 ストリームを再生し、共有オブジェクトからデータを取得するには、Administration Console からサーバーへの特別なデ バッグ接続が必要になります。デフォルトでは、サーバーはこの接続を許可していません。 1 Application.xml ファイルを開きます。 注意:これらの値を、仮想ホストレベルまたはアプリケーションレベルで Application.xml ファイルに設定できます。 アプリケーションレベルで値を設定する場合は、Application.xml ファイルをアプリケーションのフォルダーにコピーし ます。 2 次の XML を探します。 <Debug> <MaxPendingDebugConnections>50</MaxPendingDebugConnections> <AllowDebugDefault>false</AllowDebugDefault> </Debug> 3 AllowDebugDefault エレメントを true に設定します。 注意:デバッグ接続はライセンス数を上限としてカウントされます。 4 ファイルを保存してパブリッシュします。 5 サーバーを再起動します。 IPv6 の設定 IPv6(Internet Protocol version 6)は、128 ビットのアドレスをサポートする新しいバージョンのインターネットプロト コルです。現行バージョンのインターネットプロトコルは IPv4 で、32 ビットアドレスをサポートしています。IPv6 によっ てインターネットにおけるアドレス不足の問題は緩和しますが、IPv6 のみを実行するシステムは、IPv4 のみを実行するシ ステムとは通信できません。 デフォルトでは、Flash Media Server は、オペレーティングシステムが IPv6 用に設定されていても、IPv4 モードで実行さ れます。Flash Media Server が IPv6 モードで実行されると、Adaptor.xml で指定されたホスト名が、IPv4 と IPv6 のアド レスに対して名前解決されます。 最終更新日 2010/9/8 42 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 重要:Red Hat® Linux システムでは、IPv6 のインストールまたはアンインストール時に /etc/sysconfig/network で NETWORKING_IPV6 値を更新する必要があります。 ネットワークインターフェイスカードで IPv6 を有効にします。 IPv6 は、サーバーがサポートするすべてのオペレーティングシステムに埋め込まれています。インターフェイス上で IPv6 を有効にする必要がある場合があります。詳しくは、関連する製品のアプリケーションヘルプを参照してください。 IPv6 ソケットでサーバーがリッスンできるようにします。 1 rootinstall/conf/Server.xml ファイルをテキストエディターで開きます。 2 NetworkingIPv6 タグを指定し、enable を 「true」に設定します。 <NetworkingIPv6 enable="true" /> 3 ファイルを保存し、サーバーを再起動します。 URL の IPv6 数値アドレスを角カッコで囲みます。 IPv6 数値アドレスがクライアントサイドスクリプト、サーバーサイドスクリプトまたはサーバー設定ファイルで使用されて いる場合は、必ず次のように角カッコで囲んでください。 rtmp://[fd5e:624b:4c18:ffff:0:5efe:10.133.128.108]:1935/streamtest リンクローカルアドレスのインターフェイスゾーンインデックスを次のように指定する必要があります。 rtmp://[fe80::204:23ff:fe14:da1c%4]:1935/streamtest ネットワークサービスのデータベースに RTMP、RTMPS および RTMPE プロトコルを登録し、サーバー設定ファイル でサービス名(必要に応じて、10 進数のポート番号)を使用することをお勧めします。 ログの確認 サーバーが開始すると、使用可能なスタック設定、ホスト名およびそのホストで使用できるすべての IP アドレスが、 rootinstall/logs/ ディレクトリにある master.xx.log ファイル、edge.xx.log ファイルおよび admin.xx.log ファイルに記録 されます。サンプルのエッジログファイルの次の x-comment フィールドは、IPv6 スタックおよび IPv4 スタックが使用で きることと、サーバーホストにデュアルアドレスがあり、両方のインターフェイスでリッスンしていることを示しています。 FMS detected IPv6 protocol stack! FMS config <NetworkingIPv6 enable=true> FMS running in IPv6 protocol stack mode! Host: fmsqewin2k3-02 IPv4: 10.133.192.42 IPv6: fe80::204:23ff:fe14:da1c%4 Listener started ( _defaultRoot__? ) : 19350/v6 Listener started ( _defaultRoot__? ) : 19350/v4 Listener started ( _defaultRoot__? ) : 1935/v6 Listener started ( _defaultRoot__? ) : 1935/v4 Red Hat Linux では、ソケットリスナーは IPv4 および IPv6 経由の両方の接続を受け付けますが、エッジのログにはソケッ トリスナーが使用する最も高い IP バージョンのみが表示されます。前述の例では、v6 エントリのみが表示されます。 IPv6 対応の Linux で、RTMPT 接続または RTMPTE 接続に対して IPv4 に解決されるホスト名を使用している場合は、 すばやく接続を解決できるよう Adaptor.xml を適切に設定する必要があります。114 ページの「HTTPIdent2」を参照して ください。 アプリケーションオブジェクトのプロパティの定義 サーバーサイドのアプリケーションオブジェクトのプロパティは、サーバーの Application.xml 設定ファイルで定義できま す。デフォルトの Application.xml ファイルでプロパティを定義すると、そのプロパティは、仮想ホスト上のすべてのアプ リケーションで使用できます。一方、アプリケーションフォルダーの Application.xml ファイルで定義したプロパティは、 そのアプリケーションでしか使用できません。 最終更新日 2010/9/8 43 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 プロパティを定義するには、Application.xml ファイル内の ScriptEngine セクションで XML タグを作成します。プロパ ティ名はタグ名に対応し、プロパティの値はタグの内容に対応します。 例えば、次の XML は、プロパティ user_name と dept_name を、値 jdoe と engineering でそれぞれ定義しています。 <Application> <ScriptEngine> <config> <user_name>jdoe</user_name> <dept_name>engineering</dept_name> </config> </ScriptEngine> </Application> サーバーサイドコードのプロパティにアクセスするには、次の例のいずれかのシンタックスを使用します。 application.config.prop_name application.config["prop_name"] 注意:定義対象のプロパティには、application.property ではなく application.config.property からアクセスできます。 例えば、先ほどの XML では、次の trace() ステートメントが有効です。 trace("I am " + application.config.user_name + " and I work in the " + application.config.dept_name + " department."); trace("I am " + application.config["user_name"] + " and I work in the " + application.config["dept_name"] + " department."); いずれのステートメントからの出力も次のようになります。 I am jdoe and I work in the engineering department. 環境変数や、substitution.xml ファイルで定義したシンボルを使用することもできます。例えば、環境変数 COMPUTERNAME が jsmith01 に等しく、substitution.xml ファイルで DEPT というシンボルを次のように定義してあると します。 <Root> <Symbols> <DEPT>Engineering</DEPT> </Symbols> </Root> さらに、Application.xml ファイルには次の XML が記述されています。 <Application> <ScriptEngine> <config> <compName>${%COMPUTERNAME%}</compName> <dept>${DEPT}</dept> </config> </ScriptEngine> </Application> サーバーサイドスクリプトでは、次の trace() ステートメントが有効になっています。 trace("My computer's name is: " + application.config.compName); trace("My department is: " + application.config.dept); 出力は次のようになります。 My computer's name is: jsmith01 My department is: Engineering 注意:サーバーサイド ActionScript の trace() ステートメントが Administration Console の Live Log パネルに表示されま す。 最終更新日 2010/9/8 44 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 関連項目 14 ページの「設定ファイルでのシンボルの使用」 ネイティブな帯域幅検出の設定または無効化 サーバーは、コアサーバーコードまたはサーバーサイドスクリプトでクライアントの帯域幅を検出できます。前者はネイ ティブな帯域幅検出、後者はスクリプトベースの帯域幅検出と呼ばれます。コアサーバーコードは C および C++ で記述さ れているので、ネイティブな帯域幅検出はスクリプトベースの検出よりも高速です。また、ネイティブな帯域幅検出では、 クライアントがエッジサーバーを介して接続している場合に、最も外側にあるエッジサーバーが帯域幅を検出するので、よ り正確なデータを得ることができます。このネイティブな帯域幅検出は、デフォルトで有効になっており、設定されていま す。 サーバーは、一連のデータブロックをクライアントに送信することで帯域幅を検出します。送信するデータブロックは、1 回ごとに大きくなります。データブロックのサイズとその送信レートおよびサーバーがクライアントにデータを送信する時 間は、必要に応じて設定できます。アプリケーションにおける帯域幅の検出の詳細については、『Adobe Flash Media Server 開発者ガイド』を参照してください。 1 Application.xml ファイルを開きます。 注意:これらの値を、仮想ホストレベルまたはアプリケーションレベルで Application.xml ファイルに設定できます。 アプリケーションレベルで値を設定する場合は、Application.xml ファイルをアプリケーションのフォルダーにコピーし ます。 2 次のコードを指定します。 ... ... <BandwidthDetection enabled="true"> <MaxRate>-1</MaxRate> <DataSize>16384</DataSize> <MaxWait>2</MaxWait> </BandwidthDetection> ... ... 注意:ネイティブな帯域幅検出を無効にするには、enabled 属性を false に設定し、サーバーを再起動します。 3 次のエレメントを編集します。 要素 説明 BandwidthDetection この機能のオンとオフを切り替えるには、enabled 属性を true または false に設定します。 MaxRate サーバーがクライアントにデータを送信する最大レート(Kbps)。デフォルト値は -1 です。この 場合、帯域幅を測定するために必要な任意のレートでデータが送信されます。 DataSize サーバーがクライアントに送信するデータ量(バイト)。クライアントの帯域幅を検出するため に、サーバーは一連のデータブロックをランダムにクライアントに送信しようとします。送信す るデータ量は、送信のたびに増えていきす。例えば、最初に x バイトを送信する場合、次は 2x バ イト、次は 3x バイトというようにデータ量が増えていきます。これは、MaxWait で指定した時間 が経過するまで続きます。 MaxWait サーバーがクライアントにデータを送信する時間(秒)。この値を大きくすると、より正確な帯域 幅の数値を得ることができますが、クライアントの待機時間が長くなります。 4 Application.xml ファイルを保存し、検証します。 5 サーバーを再起動します。 最終更新日 2010/9/8 45 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 コンテンツの格納場所の設定 アプリケーションファイルの場所の設定 アプリケーションフォルダーにアプリケーションが存在する場合は、それがサーバーに通知されます。デフォルトでは、ア プリケーションフォルダーは rootinstall/applications にあります。 アプリケーションフォルダー内に、アプリケーションのサブフォルダーを作成します。個々のアプリケーションフォルダー 内にサブフォルダーを作成し、そこに次のようにアプリケーションのインスタンスを作成します。例えば、次のパスは 「my_application」と呼ばれるアプリケーションのインスタンスへのパスです。 rootinstall/applications/my_application/first_instance アプリケーションフォルダー、ライブアプリケーションおよび VOD アプリケーションの場所を変更するには、fms.ini ファイルの次のパラメーターで場所を編集します。 • 登録アプリケーションフォルダー:VHOST.APPSDIR • ライブアプリケーション:LIVE_DIR • VOD アプリケーション:VOD_DIR ネットワークドライブへのディレクトリのマッピング デフォルトでは、サーバーはシステムアカウントとして実行され、ネットワークドライブにアクセスしません。UNC パス を使用すると、サービスユーザーを、ネットワークアクセス権限を持つユーザーに変更できます。 ユーザーがログアウトしているときは、Windows でネットワークにマッピングされたドライブは無効になっています。 サーバーがサービスとして実行されており、ユーザーがログアウトしている場合は、マッピングされたドライブも削除され ます。マッピングされたドライブで実行するには、ログアウトするのではなく、サーバーをロックします。サーバーがサー ビスとして実行されているときは、UNC パスを使用することをお勧めします。 1 Flash Media Server と Flash Media Administration Server を停止します。 2 設定を変更します。 3 サーバーのユーザーに、ネットワークドライブにマッピングするための適切なアクセス権限があることを確認します(通 常、システムアカウント権限では不十分です)。 4 Flash Media Server と Flash Media Administration Server を再起動します。 記録されたストリームと共有オブジェクトの場所の設定 デフォルトでは、アプリケーションの記録されたすべてのストリームは、アプリケーションディレクトリのストリームフォ ルダーに格納されます。また、共有オブジェクトは、アプリケーションディレクトリの共有オブジェクトフォルダーに格納 されます。 注意:ストリームを格納するフォルダーには、他のアプリケーションファイルは格納せず、ストリームだけを格納すること を強くお勧めします。 Application.xml ファイルの StorageDir エレメントを使用して、別の場所をストリームまたは共有オブジェクトの格納場所 として指定します。この操作は、VOD アプリケーションに対しても実行できます。例えば、既にビデオファイルのコレク ションがアプリケーションディレクトリ以外のディレクトリにあるとします。この場合は、そのビデオファイルが保存され ているディレクトリを格納ディレクトリとして設定することができます。そうすれば、コンテンツをアプリケーションディ レクトリにコピーする必要がなくなります。 最終更新日 2010/9/8 46 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 アプリケーション固有の XML で <storageDir> エレメントの値を指定している場合、その値はアプリケーション固有の値に なります。それ以外の場合、例えば、値を仮想ホストレベルの Application.xml で指定している場合は、仮想ホストのすべ てのアプリケーションに適用範囲が広がります。 格納ディレクトリとして指定するディレクトリ内に、別のアプリケーションインスタンス用の物理サブディレクトリを作成 する必要があります。Flash Media Server は、コンテンツをアプリケーションのインスタンスごとにサンドボックスしま す。 例えば、chatApp アプリケーションの格納ディレクトリを C:\Content に設定するとします。 <storageDir>C:\Content</storageDir> ユーザーが chatApp アプリケーションの firstRoom インスタンスに接続し、ストリームを再生しようとすると、サーバーは サブフォルダー C:\Content\firstRoom でそのストリームを探します。各インスタンスのコンテンツは、同じアプリケーショ ンの他のインスタンスからサンドボックスされるので、secondRoom インスタンスに接続するユーザーは C:\Content\firstRoom のコンテンツにアクセスすることができません。 リソースがアプリケーションやアプリケーションインスタンスによってサンドボックスされないようにするには、仮想ディ レクトリを使用します。 仮想ディレクトリと物理ディレクトリ間のマッピング Flash Media Server では、記録されたストリーム、ビデオファイルおよびオーディオファイルは、アプリケーションディレ クトリのデフォルトの場所に格納されます。状況によっては、アプリケーションやアプリケーションインスタンスによるア クセスを制限せずに、これらのリソースの場所を指定する必要があります。仮想ディレクトリを物理ディレクトリにマッピ ングすると、リソースを Flash Media Server のアプリケーションディレクトリにコピーする必要がなくなります。また、既 存のリソースの分類を保持できます。 アプリケーションの仮想ディレクトリをマッピングするには、Vhost.xml ファイルまたは Application.xml ファイルで <VirtualDirectory> エレメントを使用します。このエレメントには、様々なオプションが用意されています。 • 仮想ディレクトリ名を指定できます。指定しないことも可能です。名前が指定されている場合、サーバーはその名前を指 定したディレクトリにマッピングし、最初にそのディレクトリでストリームを探します。 • 単一の仮想ディレクトリには複数の物理ディレクトリを指定することができます。複数の <Streams> タグを使用します。 • アプリケーション固有の Application.xml ファイルで指定されているときは、<VirtualDirectory> が、そのアプリケー ションに対してのみリソースの格納場所を制御します。<storageDir> とは異なり、アプリケーションのすべてのインスタ ンスがその場所にあるビデオファイルにアクセスできますが、他のアプリケーションはアクセスできません。 • 仮想ホストの Application.xml ファイルまたは Vhost.xml ファイルで指定されているときは、<VirtualDirectory> が、 その仮想ホストのすべてのアプリケーションの格納場所を制御します。仮想ホストのすべてのアプリケーションが、指定 した場所のビデオファイルにアクセスできますが、仮想ホストレベルで制御する必要があるときは、仮想ホストの Application.xml ファイルではなく Vhost.xml ファイルの <VirtualDirectory> タグを設定することをお勧めします。 (ストリームとは対照的に)File オブジェクトに新しい仮想ディレクトリを作成している場合、Server.xml ファイル内で VirtualDirectoryForFile オプションも有効にする必要があります。詳細については、38 ページの「サーバーサイドの File オ ブジェクト向け仮想ディレクトリマッピングの有効化」を参照してください。 サーバーは、次の順序でストリームに使用する正しいディレクトリを決定します。 1 仮想ディレクトリ(<VirtualDirectory> で指定) 2 格納ディレクトリ(<storageDir> で指定) 3 デフォルトの場所(アプリケーションディレクトリのストリームフォルダー) 注意:ストリームを格納するフォルダーには、他のアプリケーションファイルは格納せず、ストリームだけを格納すること を強くお勧めします。 最終更新日 2010/9/8 47 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 仮想ディレクトリの例 :VOD[ かそうでぃれくとりのれい :VOD] このエレメントの使用例として、ここでは、ある VOD アプリケーションに対して使用するディレクトリを指定し、ビデオ ファイルをそのディレクトリに置いて、すぐにストリーミングします。また、アプリケーション固有の Application.xml ファイルで、<VirtualDirectory> エレメントを使用します。この方法でディレクトリをマッピングするには、次の例のよう に、アプリケーション固有の Application.xml ファイルを編集して、仮想ディレクトリを追加します。 <Application> <StreamManager> <VirtualDirectory> <!-- Specifies application specific virtual directory mapping for recorded streams. --> <Streams>/;C:\my_videos</Streams> </VirtualDirectory> </StreamManager> </Application> このコードは、このアプリケーションに対してのみ、Vhost.xml ファイルの '/' のマッピング(存在する場合)を変更しま す。仮想ディレクトリで C:\my_videos\sample.flv のようなファイルを再生するには、クライアントを VOD アプリケー ションに接続して NetStream.play() を呼び出します。 ns.play("sample"); アプリケーション固有の Application.xml ファイルにある <VirtualDirectory> エレメントは、そのアプリケーションにのみ 影響し、ストリームが、同じ仮想ホストにある別のアプリケーションによってアクセスされるのを防ぎます。このファイル の設定は、Vhost.xml ファイルの設定よりも優先されます。 サブフォルダーに入れ子にされたストリームの再生 ストリームを再生するには、ストリームへのパスを指定する前にコーデックを指定します。FLV ストリームではコーデック の接頭辞は必要ありませんが、F4V や MP4 ファイル、MP3 ファイルおよび RAW ファイルでは必要です。 仮想ディレクトリのマッピングが <Streams>foo;C:\my_videos</Streams> であることを想定します。次の例は、クライアント サイドの NetStream.play() メソッドを示しています。 ns.play("mp4:foo/sample.f4v",0,-1) // F4V/MP4 files ns.play("raw:foo/sample",0,-1) // RAW files ns.play("mp3:foo/sample",0,-1) //MP3 files ns.play("foo/sample",0,-1). // FLV files 次の例は、サーバーサイド ActionScript Stream.play() メソッドを示しています。 myStream.play("mp4:foo/sample.f4v",0,-1) // F4V/MP4 files myStream.play("mp4:foo/sample",0,-1) // RAW files myStream.play("mp3:foo/sample",0,-1) // MP3 files myStream.play("foo/sample",0,-1) // FLV files 仮想ディレクトリの例 : 高帯域幅のビデオと低帯域幅のビデオの分離 ディレクトリマッピングは、異なる種類のリソースを分けて格納する際にも使用できます。例えば、使用しているアプリ ケーションでユーザーが高帯域幅のビデオと低帯域幅のビデオの両方を表示できるとします。このような状況で、高帯域幅 のビデオと低帯域幅のビデオを別のフォルダーに格納する必要がある場合もあるでしょう。low で始まるすべてのストリー ムが C:\low_bandwidth および C:\low_bandwidth2 という特定のディレクトリに格納され、high で始まるすべてのスト リームがそれとは別のディレクトリに格納されるマッピングを作成できます。 <VirtualDirectory> <Streams>low;c:\low_bandwidth</Streams> <Streams>low;c:\low_bandwidth2</Streams> <Streams>high;c:\high_bandwidth</Streams> </VirtualDirectory> 低帯域幅のビデオにアクセスするクライアントは、ns.play("low/sample") を呼び出します。この呼び出しは、 C:\low_bandwidth および C:\low_bandwidth2 フォルダーで sample.flv ファイルを探すようサーバーに指示します。 最終更新日 2010/9/8 48 FLASH MEDIA SERVER 4.0 設定および管理ガイド 49 サーバーの設定 ns.play(”low/sample”); C:\low_bandwidth\sample.flv クライアントは、サーバー上の低帯域幅の格納場所にある sample.flv ファイルに接続します。これは、Application.xml でマッピングされています。 同様に、ns.play("high/sample") に対する呼び出しは、c:\high_bandwidth フォルダーで sample.flv ファイルを探すようサー バーに指示します。 重要:F4V や MP4、MP3、または RAW ファイルを再生するには、例えば ns.play("mp4:high/sample") のように、パスを指 定する前にコーデックを指定します。mp3 の接頭辞は mp3: です。RAW の接頭辞は raw: です。 クライアントが ns.play("sample") を呼び出した場合は、ストリーム名は、指定されているどの仮想ディレクトリとも一致し ません。この場合、サーバーは、格納ディレクトリエレメント(<storageDir>)で指定されているディレクトリで sample.flv を探します。<storageDir> で格納ディレクトリが指定されていない場合、サーバーは、デフォルトの場所(スト リームフォルダー)でファイルを探します。つまり、サーバーは次の順序でファイルを探します。 1 仮想ディレクトリ(<VirtualDirectory> で指定) 2 格納ディレクトリ(<storageDir> で指定) 3 デフォルトの場所(アプリケーションディレクトリのストリームフォルダー) 仮想ディレクトリの例 : ローカルおよびネットワークのファイルパス 次の表では、ネットワークドライブへのマッピングや、記録されたストリームのパブリッシュ先ディレクトリが設定によっ てどのように決まるかなどの、仮想ディレクトリの 3 つの設定例を示しています。最初の例では、指定されている URI ("myStream")が、指定されている仮想ディレクトリ名("low")と一致しないので、サーバーはデフォルトのストリーム ディレクトリにストリームをパブリッシュします。 Vhost.xml でのマッピング NetStream 呼び出し の URI パブリッシュされたストリームの場所 low;e:\fmsstreams "myStream" c:\...\rootinstall\applications\yourApp\streams\_definst_\myStream .flv low;e:\fmsstreams "low/myStream" e:\fmsstreams\myStream.flv low;\\mynetworkDrive\share\fmsstream s "low/myStream" \\mynetworkDrive\share\fmsstreams\myStream.flv <VirtualDirectory><Streams> タグ 重要:F4V や MP4、MP3、または RAW ファイルを再生するには、例えば ns.play("mp4:low/myStream") のように、パスを 指定する前にコーデックを指定します。mp3 の接頭辞は mp3: です。RAW の接頭辞は raw: です。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 Apache HTTP Server の設定 Apache HTTP Server について Flash Media Server には、Apache HTTP Server が含まれています。Web サーバーをインストールして有効にすると、 Flash Media Server からクライアント SWF ファイル、コンテナ HTML ページおよびメディアアセットを配信できます。 コンテンツは、RTMP だけでなく HTTP 経由でも配信できます。さらに、RTMP または RTMPT を切断する Web プロキ シのフォールバックソリューションとして、HTTP プログレッシブダウンロードによってビデオを配信できます。 Flash Media Server での Apache のインストールは、標準のインストールと似ています。Apache のドキュメントは、ほと んどの設定タスクで使用することができます。Apache ルートのインストール用フォルダーは、rootinstall/Apache2.2 で す。Web ルートは rootinstall/webroot です。 注意:Flash Media Server のドキュメントでは、Flash Media Server のルートインストールフォルダーを「rootinstall」で 示しています(Windows ではデフォルトで C:\Program Files\Adobe\Flash Media Server 4)。Apache のドキュメントと 設定ファイルでは、Apache ルートインストールフォルダーを「ServerRoot」で示しています。 インストール場所 Flash Media Server と合わせてインストールされる Apache サーバーは、次の点で標準の Apache インストールとは異なり ます。 • apachectl ファイルは rootinstall/Apache2.2/manual/programs フォルダーにあります。 • httpd.conf ファイルと標準の二次設定ファイルは、rootinstall/Apache2.2/conf フォルダーにあります。 • ログファイルは rootinstall/Apache2.2/logs フォルダーにあります。詳細については、79 ページの「ログファイルの監 視と管理」を参照してください。 代替設定 次のいずれかを実行するには、rootinstall/Apache2.2/conf/httpd.conf ファイルを編集します。 • 複数のアダプターまたは仮想ホストを処理する • ASC など機密性のあるファイル形式をブロックする • プログレッシブダウンロードで必要な非標準の MIME 形式を処理する • デフォルトのサーバーステータスページとサーバー情報ページを配信する • ソースディレクトリを変更する HTTP ヘッダー行の最大の長さの指定 サーバーで処理できる HTTP ヘッダーのサイズは、Flash Media Server の Adaptor.xml ファイルにある MaxHeaderLineLength エレメントで決まります。MaxHeaderLineLength のデフォルト値は 1024 バイトです。ブラウザーに よっては、1024 バイトを超えるヘッダーが送信されることがあります。この場合、Apache からは空の応答が返されます。 この問題を修正するには、MaxHeaderLineLength を 8192 に設定します。 注意:デフォルトでは、Apache の HTTP ヘッダーのサイズの制限は 8 KB(8190 バイト+復帰)です。 1 rootinstall/conf/Adaptor.xml をテキストエディターで開きます。 2 次の行を編集します。 <MaxHeaderLineLength>8192</MaxHeaderLineLength> 3 ファイルを保存します。 4 サーバーを再起動します。 最終更新日 2010/9/8 50 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 Apache および HTTP プロキシの有効および無効の切り替え Flash Media Server をインストールして Apache のインストールを選択すると、Apache がデフォルトで有効になります。 Flash Media Server は、ポート 80 でリッスンし、ポート 8134 を使用して HTTP 要求を Apache にプロキシします。 パラメーターに値を設定しないと、HTTP プロキシが無効になります。 HTTPPROXY.HOST = リモートサーバーにプロキシするには、使用するリモートサーバーにパラメーターを設定します。 HTTPPROXY.HOST = webfarm.example.com:80 Apache および HTTP プロキシの有効化 1 fms.ini ファイルをテキストエディターで開きます。 2 ADAPTOR.HOSTPORT タグにポート 80 を追加します。 ADAPTOR.HOSTPORT = :1935, 80 3 Flash Media Server を起動および停止したときに Apache を起動および停止するには、SERVER.HTTPD_ENABLED パ ラメーターを true に設定します。 SERVER.HTTPD_ENABLED = true 4 次のいずれかの操作を行います。 • rootinstall/conf/fms.ini を開き、HTTPPROXY.HOST 変数の値を 8134 に設定します。 HTTPPROXY.HOST = :8134 • Adaptor.xml 設定ファイルをテキストエディターで開きます。 複数のアダプターがある場合は、設定するアダプターのファイルを開きます。デフォルトの Adaptor.xml ファイル は、rootinstall\conf\_defaultRoot_ フォルダーに格納されています。 次のように、HttpProxy タグの enable 属性を true に設定します。 <HttpProxy enable="true" maxbuf="16384"> <Host port="80">${HTTPPROXY.HOST}</Host> </HttpProxy> Adaptor.xml ファイルを保存して検証します。 5 サーバーを再起動します。 Apache および HTTP プロキシの無効化 1 fms.ini ファイルをテキストエディターで開きます。 2 ADAPTOR.HOSTPORT タグからポート 80 を削除します。 ADAPTOR.HOSTPORT = :1935 3 次のいずれかの操作を行います。 • rootinstall/conf/fms.ini を開き、HTTPPROXY.HOST 変数に値を設定しません。 HTTPPROXY.HOST = • Adaptor.xml 設定ファイルをテキストエディターで開きます。 複数のアダプターがある場合は、設定するアダプターのファイルを開きます。デフォルトの Adaptor.xml ファイル は、rootinstall\conf\_defaultRoot_ フォルダーに格納されています。 次のように、HttpProxy タグの enable 属性を false に設定します。 最終更新日 2010/9/8 51 FLASH MEDIA SERVER 4.0 設定および管理ガイド 52 サーバーの設定 <HttpProxy enable="false" maxbuf="16384"> <Host port="80">${HTTPPROXY.HOST}</Host> </HttpProxy> Adaptor.xml ファイルを保存して検証します。 4 サーバーを再起動します。 HTTP 経由での SWF ファイルと HTML ファイルの配信 Apache は、SWF ファイル、HTML ファイル、JPG ファイルおよび他の多くの標準ファイルタイプを HTTP 経由で配信 できます。HTTP 経由で配信するファイルを適切なフォルダーに配置します。デフォルトでは、Apache は次のパスを使用 すように設定されています。 パス 場所 URL の例 / rootinstall/Apache2.2/webroot http://myFMSServer.com/app.swf /cgi-bin rootinstall/Apache2.2/cgi-bin http://myFMSServer.com/cgi-bin/someScript.pl これらのフォルダーはグローバルであり、アプリケーション固有ではありません。HTTP 経由で提供するすべての SWF ファイルと HTML ファイルは、これらのフォルダーかアプリケーション固有のフォルダーに存在している必要があります。 アプリケーション固有のフォルダーのエイリアスを作成するには、httpd.conf ファイルを編集します。 アプリケーションの Web ディレクトリの作成 Apache によりコンテンツが HTTP 経由で提供されるようにするには、定義済み Web ディレクトリのいずれかを使用する か、そのアプリケーションの Web ディレクトリを作成します。アプリケーションの Web ディレクトリを作成するには、 rootinstall/Apache2.2/conf/httpd.conf ファイルにエイリアスを追加します。例えば、次の行により、アプリケーション の streams ディレクトリをポイントする、「hd」というエイリアスが作成されます。 Alias /hd/ "applications/hd/streams/_definst_/" <Directory "applications/hd/streams/_definst_/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> HTTP 経由で提供するメディアファイルを rootinstall/applications/hd/streams/_definst_/ フォルダーにコピーします。 例えば、クライアントが http://fms.example.com/hd/someVideo.flv を要求した場合、Apache により rootinstall/applications/hd/streams/_definst_/ フォルダーから someVideo.flv ファイルが提供されます。 設定ファイルの編集の詳細については、www.apache.org にある Apache のドキュメントを参照してください。 HTTP Dynamic Streaming に対する Apache 設定 Flash Media Server 4 は、デフォルトでライブ HTTP Dynamic Streaming に対して設定されています。 rootinstall\Apache2.2\conf\httpd.conf ファイルには次のディレクティブが含まれています。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 LoadModule f4fhttp_module modules/mod_f4fhttp.so <Location /vod> HttpStreamingEnabled true HttpStreamingContentPath "../webroot/vod" Options -Indexes FollowSymLinks </Location> <Location /live> HttpStreamingEnabled true HttpStreamingLiveEventPath "../applications" HttpStreamingContentPath "../applications" Options -Indexes FollowSymLinks </Location> 次の表では、httpd.conf ファイル内のディレクティブを示しています。 ディレクティブ 説明 <Location> HttpStreamingContentPath ディレクティブおよび HttpStreamingLiveEventPath ディレクティブの中にある物理的な場所に マッピングされる要求 URL のセクションです。<Location> パスには http 接頭辞(「http://servername」など)を含めません。 HttpStreamingEnabled HTTP ストリーミングが有効(true)と無効(false)のどちらであるかを 示します。 HttpStreamingContentPath ストリームファイルの物理的な場所。 HttpStreamingLiveEventPath ライブイベントの物理的な場所と .f4m ファイル。 開発者は OSMF Sample Player for HTTP Dynamic Streaming または OSMF ベースのメディアプレーヤーである Strobe Media Playback を使用できます。Apache HTTP Server は、これらのメディアプレーヤーからの次の URL を予測するよ うに設定されています。 リクエストタイプ シンタックス ライブ http://<server>/live/events/<application>/events/_definst_/<eventname>.f4m オンデマンド http://<server>/vod/<vodasset>.f4m ライブブートスト ラップファイル http://<server>/live/streams/<application>/streams/_definst_/<streamname>/<stream name>.bootstrap ライブフラグメン ト http://<server>/live/streams/<application>/streams/_definst_/<streamname>/<stream name>SegN-FragM HTTP Dynamic Streaming 用のポートの設定 デフォルトでは、Flash Media Server はポート 80 でリッスンするように設定されます。Flash Media Server は、ポート 8134 を使用して HTTP トラフィックを Apache HTTP Server にプロキシします。ただし、HTTP Dynamic Streaming 接 続は、サーバーを通じてプロキシする際にハングアップする可能性があります。 HTTP Dynamic Streaming のトラフィックを Flash Media Server 経由で Apache HTTP Server にプロキシしないでくだ さい。クライアント自身のポート(デフォルトはポート 8134)を使用して直接クライアントを Apache HTTP Server に接 続するか、Apache がポート 80 を使用し、Flash Media Server がポート 80 を使用しないように設定します。 Apache および HTTP プロキシを無効にするには、51 ページの「Apache および HTTP プロキシの無効化」を参照してく ださい。 Apache がポート 80 でリッスンするように設定するには、rootinstall/Apache2.2/conf をテキストエディターで開きます。 Listen 8134 という行を Listen 80 に変更します。 最終更新日 2010/9/8 53 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 HTTP Dynamic Streaming 用のロギング すべての HTTP アクセス要求は、\logs ディレクトリ内の Apache access_log ファイルに記録されます。HTTP Origin Module はロギングのディレクティブを追加しません。すべてのアクセス要求は、標準の Apache HTTP Server ログモ ジュールを経由して記録されます。 すべてのエラーは \logs ディレクトリ内の Apache error_log ファイルに記録されます。次の表に、HTTP Origin Module が返す応答コードを示します。 応答コード エラーメッセージ 説明 200 なし エラーは発生しておらず、応答は正常に返されました。 304 なし HTTP Origin Module は要求ヘッダーの「If-ModifiedSince」をサポートし、ファイルが変更されていなかった場合 は 304 を返します。「If-Modified-Since」はライブイベント のマニフェストファイルの要求ではサポートされていません。 400 mod_f4fhttp [400]: Syntax error in %s URI 要求を解析している間にエラーが発生しています。変数 %s は URI 文字列です。例えば、要求 URI である http://servername/media/sample- は断片番号が不足して います。 403 mod_f4fhttp [403]: No access to %s ファイルにアクセスしているときにエラーが発生しています。 変数 %s はファイルパスです。たとえば、要求 URI は mod_f4fhttp [403]: Internal error http://servername/media/sample.fmf で、モジュールは %1 (%2) when processing %3 ファイル sample.f4m を読み取る権限がありません。ライブ ラリがファイルにアクセスすることに失敗した場合に、エラー が発生しています。変数 %1 はライブラリからのエラーコード であり、%2 はエラーの説明であり、%3 は URL 文字列です。 最終更新日 2010/9/8 54 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 応答コード エラーメッセージ 説明 404 mod_f4fhttp [404]: %s does not exist 要求ファイルが見つからないときに、エラーが発生していま す。変数 %s はファイルパスです。例えば、要求 URI は mod_f4fhttp [404]: Internal error %1 (%2) when processing %3 http://servername/media/sample.fmf ですが、ファイル sample.f4m が存在しません。 ライブラリがファイルを見つけることに失敗した場合に、エ ラーが発生しています。変数 %1 はライブラリからのエラー コードであり、%2 はエラーの説明であり、%3 は URL 文字列 です。 500 503 mod_f4fhttp [500]: Unknown exception when processing %1 要求の処理中に不明なエラーが発生しています。%1 は URL mod_f4fhttp [500]: Internal error %1 (%2) when processing %3 例:http://servername/media/sampleSeg1-Frag1、 なし HTTP Origin Module が 503 コードを返すため、クライアン 文字列です。 sampleSeg1.f4f は破損したファイルではありません。 トとプロキシサーバーが応答をキャッシュできません。 ライブイベントでは、ファイルのサイズが増える可能性があ り、1 つのオリジンサーバーで断片が失われることがあります が、別のオリジンサーバーでは失われていません。HTTP 応答 ヘッダーには詳細を示すために「X-mod_f4fhttp」フィール ドが含まれています。次に、サンプルの応答ヘッダーを示しま す。 Date Thu, 04 Mar 2010 06:20:20 GMT Server Apache/2.2.9 (Win32) Content-Length 432 Last-Modified Wed, 27 Jan 2010 11:43:25 GMT Keep-Alive timeout=5, max=100 Connection Keep-Alive Content-Type video/f4f Xmod_f4fhttp 1, error 71 X-mod_f4fhttp フィールド内の 2 つのパラメーターがカンマ で区切られています。最初のパラメーターはステータスコード であり、2 番目のパラメーターはライブラリからのエラーコー ドです。 2 つのステータスコードがあります。1 - 要求された断片番号 がファイル内の最後の断片より大きな数字です(対応するエ ラーは 71 です)。2 - 要求された断片番号は失われた断片です (対応するエラーは 34 です)。 WebDAV ホストとしての Apache の使用 Web サーバーは、WebDAV ホストとして機能するように設定できます。詳細については、「www.apache.org」にある Apache HTTP Server バージョン 2.2.15 のドキュメントを参照してください。 open、close、send、idle、fcs、fms、crossdomain.xml、fpad は予約語です。予約語は、webroot ディレクトリ下の ディレクトリ名や他の ディレクトリ名に使用することができません。これらの名前のアプリケーションがある場合は、カス タムエイリアスを使用して、HTTP 仮想ディレクトリに RTMP アプリケーションとはわずかに異なる名前(「open_」な ど)を付けます。 サービスとしての Windows 版 Apache の実行 Windows で Apache をインストールしてサービスとして実行するには: 1 コマンドプロンプトを開きます。 2 ディレクトリを rootinstall/Apache2.2/bin フォルダーに変更します。例えば、コマンドプロンプトで次のように入力 します。 cd ../../Program Files/Adobe/Flash Media Server 4/Apache2.2/bin 最終更新日 2010/9/8 55 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 3 Apache をインストールしてサービスとして実行するには、次のように入力します。 httpd.exe -f conf/httpd.conf -n FMSHttpd -k install 注意:Apache をアンインストールするには、httpd.exe -n FMSHttpd -k uninstall と入力します。 4 Apache が実行されていることを確認するには、Windows の「サービス」パネルを開いて FMSHttpd サービスを指定 します。 Windows XP で Windows サービスを開始および停止するには: 1 「マイ コンピュータ」を右クリックして「管理」を選択します。「コンピュータの管理」ダイアログボックスが表示され ます。 2 「サービスとアプリケーション」を選択します。 3 「サービス」をダブルクリックします。使用可能なサービスのリストが表示されます。 4 サービスを開始するには、リストから該当するサービスを選択して「サービスの開始」ボタンをクリックします。サービ スを停止するには、リストから該当するサービスを選択して「サービスの停止」ボタンをクリックします。 Apache HTTP サーバーのアップグレード Flash Media Server のインストール後に、含まれている Apache Web サーバーを更新するように要求されることがありま す。通常、これは Apache HTTP サーバーのセキュリティパッチや機能のアップグレードによるものです。 Flash Media Server 4.0 に付属している Apache HTTP サーバーのバージョンは 2.2.15 です。Apache Web サーバーの最 新の情報については、httpd.apache.org を参照してください。 Apache Web サーバーをアップグレードするときは、Apache サーバーを既存のサーバーとは別のディレクトリにインス トールまたは構築することをお勧めします。その後、新しくインストールしたディレクトリの内容を既存のサーバーにコ ピーします。 通常、Apache の既存の設定ファイルを新しいバージョンの設定ファイルに置き換えることはありません。これは、Flash Media Server 用の Apache Web サーバーのインストールは、特定のモジュールと設定であらかじめ設定されているからで す。設定ファイルに変更がある場合は、既存のファイルを更新して変更を反映した方が通常は簡単です。 アップグレード前に、次の作業を行います。 1 apache.org で、現在のバージョンと新しいバージョンの違いに関するインストールの注意事項を確認します。例えば、 名前が変更されたために設定ファイルをマージしなければならないディレクティブやモジュールがないかどうかを確認し ます。 2 現在インストールされているバージョンの Apache が正しく動作していることを確認します。 1 マスターログファイルでエラーがないかどうかを確認します。master.00.log ファイル内の httpd プロセスを起動し た行で 0 が返されていることを確認します。次に例を示します。 - C:\Program Files\Adobe\Flash Media Server 4\Apache2.2\bin\httpd -f ./conf/httpd.conf -d "C:\Program Files\Adobe\Flash Media Server 4\Apache2.2" -n FMSHttpd -k start returned 0: 2 "http" プロトコルを使用してビデオを再生してみます。 3 Apache の現在のバージョンを確認して書き留めておきます。コマンドプロンプトで、 FMS_Install_Dir/Apache2.2/bin に移動し、次のコマンドを実行します。 httpd -v 4 次のディレクトリをバックアップします。 最終更新日 2010/9/8 56 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 FMS_Install_Dir/Apache2.2/bin FMS_Install_Dir/Apache2.2/lib FMS_Install_Dir/Apache2.2/include FMS_Install_Dir/Apache2.2/modules FMS_Install_Dir/Apache2.2/manual FMS_Install_Dir/Apache2.2/icons アップグレードするには、次の作業を行います。 1 Flash Media Server を停止します。 2 apache.org の指示に従って、Apache インストーラーをダウンロードして実行します。Linux を使用している場合は、 システム上に Apache サーバーを構築するように要求される場合があります。 3 Flash Media Server と共にインストールされた現在のバージョンに、新しくインストールしたバージョンの次のディレ クトリをコピーします。 Apache_Install_Dir/bin Apache_Install_Dir/lib Apache_Install_Dir/include Apache_Install_Dir/modules Apache_Install_Dir/manual Apache_Install_Dir/icons このリストに Apache の設定ファイルが格納された /conf ディレクトリが含まれていないことに注意してください。既存 の設定ファイルを新しい設定ファイルに置き換えないようにしてください。 4 必要に応じて、設定ファイルをマージします。ほとんどの場合はファイルをマージする必要はありませんが、新しいバー ジョンの Apache に新規または名前が変更されたモジュールやディレクティブが含まれている場合は、新しい要件を満た すように設定ファイルを編集しなければならないことがあります。 5 Flash Media Server を起動します。 アップグレード後に、次の作業を行います。 1 新しいバージョンの Apache を使用できるようにします。コマンドプロンプトで、FMS_Install_Dir/Apache2.2/bin に移動し、次のコマンドを実行します。 httpd -v 2 必要に応じて、サードパーティのモジュールを再コンパイルします。 3 新しく更新したバージョンの Apache が正しく動作していることを確認します。 1 マスターログファイルでエラーや警告がないかどうかを確認します。master.00.log ファイル内の httpd プロセスを 起動した行で 0 が返されていることを確認します。次に例を示します。 - C:\Program Files\Adobe\Flash Media Server 4\Apache2.2\bin\httpd -f ./conf/httpd.conf -d "C:\Program Files\Adobe\Flash Media Server 4\Apache2.2" -n FMSHttpd -k start returned 0: 2 "http" プロトコルを使用してビデオを再生してみます。 Apache HTTP サーバーのトラブルシューティング 場合によっては、Apache サーバーで Flash Media Server を適切に実行できないことがあります。これは、Apache の設定 ファイルの構文エラーが原因である場合があります。 rootinstall/logs ディレクトリにある master.log ファイルを確認します。何らかの理由で Apache を起動できない場合、通 常はエラーコード "1" が返され、master.log ファイルに次のような行が書き込まれます。 2010-06-22 15:45:09 4276 (w)2581414 C:\Program Files\Adobe\Flash Media Server 4\Apache2.2\bin\httpd -f ./conf/httpd.conf -d "C:\Program Files\Adobe\Flash Media Server 4\Apache2.2" -n FMSHttpd -k start returned 1: 最終更新日 2010/9/8 57 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 ステータスが (w) または (e) の場合、警告またはエラーがあることを示しています。master.log ファイルのステータスコー ドの詳細については、88 ページの「診断ログ」を参照してください。 Flash Media Server をサービスとして実行している場合、Windows Event Viewer でエラーメッセージを確認できます。 Linux の場合は、syslog のログファイルでエラーメッセージを確認します。 エラーメッセージは Apache のログファイルでも確認できます。Apache ログファイルは、デフォルトで rootinstall/Apache2.2/logs にあります。ログは、デフォルトの Apache エラーおよび結合アクセスログ形式です。これら のログファイルの形式については、「Log Files」を参照してください。 ログファイルの場所を変更するには、rootinstall/Apache2.2/conf/httpd.conf ファイルを編集します。 サードパーティの Web サーバーの使用 同梱バージョンの Apache 以外の Web サーバーを使用して Flash Media Server ファイルを提供できます。ただし、その HTTP Dynamic Streaming 用の HTTP モジュールは、現在 Apache Web サーバー上でのみサポートされていることに注 意してください。サードパーティの Web サーバーを使用するには、次のガイドラインに従ってください。 • Flash Media Server および Web サーバーがポートを共有しないように設定します。(ポート 80 および 443 を使用でき るサーバーを決定するか、マルチホームサーバーを設定する必要があります(個別の IP アドレス / 物理 NIC を使用))。 • Flash Media Server および Web サーバーにポートを共有させる場合は、Flash Media Server をプロキシに設定し、 Web サーバーを未使用のポートに設定し、fms.ini の HTTPPROXY_HOST 設定がそのポートをポイントするように変更 します。 • Web サーバーに Flash Media Server の標準ファイルを提供させるには、それらのファイルを Web サーバーのドキュメ ントルートに置くか、Flash Media Server ドキュメントルート(rootinstall/webroot)を Web サーバーの仮想ディレ クトリとして追加します。 • Web サーバーに PD (Progressive Download)ファイルを Flash Media Server と同じ場所で提供させるには、 rootinstall/webroot/vod をポイントするエイリアスまたはセカンダリドキュメントルートを追加します。Web サー バーのドキュメントルートをポイントする VOD アプリケーションに仮想ディレクトリを追加することもできます。 • Web サーバーに Flash Media Server にプレインストールされた Web サーバーとまったく同じ設定を使用する場合(ま たは、その設定で開始して、その後それをカスタマイズする場合)、Flash Media Server に含まれているデフォルトの Apache httpd.conf ファイルを使用して起動します。 • 正しい MIME タイプを処理するように Web サーバーを設定します。例えば、*.flv ファイルに video/x-flv MIME タイプ を追加します。その他の MIME タイプの場合は、mod_mime_magic Apache モジュールの設定ファイルおよび installroot/Apache2.2/conf/mime.types ファイルを参照します。 Differentiated Services(DiffServ)の設定 Flash Media Server 3.5.2 DiffServ の概要 Differentiated Services を使用すると、各種のトラフィックをネットワーク内で別々に処理できます。例えば、RTMP トラ フィックに FTP トラフィックよりも高い優先度を設定したり、RTMP に HTTP よりも高い帯域幅や待ち時間を割り当てた りすることができます。パブリッシュ元がユーザーのストリームを優先するように設定したり、CDN などのホスティング 会社がパブリッシュ元のストリームを優先するように設定したりしている場合もあります。これまで、IP には Type of 最終更新日 2010/9/8 58 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 Service(TOS)と呼ばれる機能が格納され(RFC 1349 を参照)、各パケットのヘッダーに 3 ビットの優先度の値と 3 つの 1 ビットのフラグが格納されていました。これらのビットを使用することで、オペレーティングシステムのカーネルやルー ターでパケットの優先付けを行っていました。IPv6 では、TOS 優先度と同じヘッダーの位置で送信される、3 ビットの優 先度の機能が実験的に導入されました(現在は使用されていません)。この機能は、IPv4 の IP_TOS と同様に機能する TCLASS(その後 TRAFFIC_CLASS に名前が変更されています)バイトに取って代わり、Differentiated Services(RFC 2474 を参照)では、TOS に代わって DSCP(Differentiated Services Code Point)と呼ばれる単一の 6 ビットの値が使用 されるようになりました。IPv6 では、TCLASS オクテットの名前が DS オクテットに変更され、そのほかに 2 ビットが予約 されています。IPv4 では、TOS バイトに名前が含まれなくなり、別の 2 バイトが ECN(Explicit Congestion Notification)に使用されています。エッジルーターおよびエンドポイントでは、フローごとに判断を行うことができます。 これらでは、フロー内のパケットをマークすることで、内部ルーターからヘッダーを参照できるようにしています(TOS と 同様です)。DiffServ は、エッジルーターがサービスレベル契約(SLA)に基づいて 2 つのネットワーク間で完全に機能し ながら、内部トラフィックに必要なサービスの種類に基づいて内部ソースでもパケットをマークできるように定義されてい ます。 DiffServ のシステム要件 Differentiated Services は Linux でのみサポートされます。Flash Media Server でサポートされるすべてのバージョンの オペレーティングシステムで動作するように Windows プラットフォームでビットを設定する標準的な方法はありません。 Windows での Differentiated Services ビットの設定の詳細については、http://support.microsoft.com/kb/248611 を参 照してください。Windows でビットを設定しようとすると、Authorization ログに "Setting Diff Serv bits is not supported for Windows Platforms" というメッセージが出力されます。 DiffServ のインターネットプロトコルのバージョン Flash Media Server の Differentiated Services 機能では、IPv4 プロトコルだけがサポートされます。IPv4 プロトコルの ビットを設定する場合、IP パケットヘッダーの Differentiated Services フィールド(以前は Type of Service フィールドと 呼ばれていました)を設定することになります。IPv4 のパケットヘッダーを次に示します。 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Version| IHL |Type of Service| Total Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Identification |Flags| Fragment Offset | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Time to Live | Protocol | Header Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options | Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ IPv6 については、Linux に Differentiated Services フィールド(TCLASS フィールドという名前に変更されています)を 設定する標準の方法はありません。Flash Media Server で IPv6 を有効にし、クライアントから IPv6 アドレスを使用して接 続する場合、IPv6 クライアントでビットを設定してもエラーにはなりませんが、ビットは設定されません。 注意:ビットは設定されませんが、サーバーのログにはビットが正常に設定されたとレポートされます。 最終更新日 2010/9/8 59 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 サポートされていない操作 次の操作はサポートされていません。 • エッジサーバーとオリジンサーバーの間のビットの設定 エッジサーバーとオリジンサーバーの間の接続は、「通常」の接続ではありません。これらの接続は、「グループ」または 「仮想」と見なされます。接続の種類を確認するには、Administration API の getNetStreamStats() コマンドを呼び出し、 client_type プロパティを確認します。これらの接続で DiffServ ビットを設定しようとすると、コアログファイルに "Setting Diff Serv bits is not supported for group, service or virtual connections" というエラーメッセージが出力され ます。 • Differentiated Services フィールドの ECN ビットの設定 例えば、マスクを 255 にして DiffServ ビットを 50 に設定しようとすると、AuthMessage ログファイルに "ECN part of diffserv will not get set for diffserv bits 50 and mask 255" という警告が出力され、ビットが 48 に設定されます。 Server.xml ファイルでの DiffServ の設定 Server.xml 設定ファイルの DiffServ エレメントと DiffServMask エレメントを使用して、RTMP リスナーに接続するすべて のソケットの DiffServ ビットを設定できます。トンネリングと HTTP プロキシのソケットを含め、すべてのソケットに ビットが設定されます。ハンドシェイク時に交換されたサーバーからのパケットなど、ソケットのすべての送信パケットが 設定されます。 次の例では、DiffServ を 128 に設定し、上位の 3 ビットを 4 に設定します。DiffServMask は 224 に設定し、上位の 3 ビット をオンにします。 1 rootinstall/conf/Server.xml ファイルをテキストエディターで開きます。 2 Root/Server/ResourceLimits/Protocol/RTMP/DiffServ エレメントを編集します。 <DiffServ>128</DiffServ> 3 Root/Server/ResourceLimits/Protocol/RTMP/DiffServMask エレメントを編集します。 <DiffServMask>224</DiffServMask> 4 ファイルを保存してパブリッシュします。 5 サーバーを再起動します。 注意:ビットが正常に設定されたかどうかについては、サーバーのログに記録されません。ビットが設定されたことを確認 するには、getNetStreamStats() Administration API を使用します。 Authorization プラグインでの DiffServ の設定 Authorization プラグインの F_CLIENT_DIFFSERV_BITS フィールドと F_CLIENT_DIFFSERV_MASK フィールド を使用して、Differentiated Services フィールドを設定できます。Flash Media Server に付属しているサンプルの Authorization プラグインは、ヘッダーファイルが更新されています。Authorization プラグインでビットを設定する例を 次に示します。 最終更新日 2010/9/8 60 FLASH MEDIA SERVER 4.0 設定および管理ガイド 61 サーバーの設定 U8 dscpVal; if(getU8Field(m_pAev, IFmsAuthEvent::F_CLIENT_DIFFSERV_BITS, dscpVal)) { dscpVal = 0xFC; bool res = setU8Field(m_pAev, IFmsAuthEvent::F_CLIENT_DIFFSERV_BITS, dscpVal); } U8 dscpMask; dscpMask = 0xF0; bool res = setU8Field(m_pAev, IFmsAuthEvent::F_CLIENT_DIFFSERV_MASK, dscpMask); 次の表に、マスクとビットのフィールドの組み合わせによって、ソケットのビットを設定する方法を示します。 な し. ソケットの現在 の値 DiffServ DiffServ マスク 正常に設 定された 新しい値 コメント 1 0 50 252 48 ECN ビットがマスクされました。 2 0 100 252 100 3 0 255 255 252 ビット ECN ビットがマスクされていませんが、それ らの設定が許可されていません。 4 100 200 128 228 マスクで MSB の変更だけが許可されました。 5 100 200 252 200 マスクで DSCP ビットの変更が許可されまし た。 設定操作 ビットの設定は、Authorization イベントの E_CONNECT と E_PLAY で行います。ビットは、Authorization プラグイ ンの authorize() メソッドで設定できます。Authorization プラグインの notify() メソッドでビットを設定することはできま せん。 取得操作 ビットの取得は、E_CONNECT、E_PLAY および E_STOP イベントで行います。F_CLIENT_DIFFSERV_MASK フィールドの取得結果は、常に値 0xFC を返します。 ロギング 次の表に、通常の接続に対するエラーメッセージを示します。 状況 メッセージ ログファイル Authorization プラグインから DSCP ビットを While setting diff serv bits for uri %s: Unable to set DiffServ field. Core ソケットから DSCP ビットのクエリを実行でき While setting diff serv bits for uri %s: Core 設定できない。 ない。 Unable to get DiffServ field. 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 62 サーバーの設定 状況 メッセージ ログファイル グループ、サービスまたは仮想の接続の DSCP Setting Diff Serv bits is not supported for group, service or virtual connections. Core Setting Diff Serv bits is not supported for Windows Platforms. Auth ビットを設定する。 Windows で DSCP 値の設定を試行する。 種類が不明な接続の DSCP ビットを設定する。 Setting Diff Serv bits (B: %d, M: %d) for this Core connection (from ip: %S) is not supported. 次の表に、トンネリング接続に対するエラーメッセージを示します。 状況 メッセージ ログファイル Authorization プラグインから DSCP ビットを While setting diff serv bits for uri %s: Unable to set DiffServ field. Edge ソケットから DSCP ビットのクエリを実行でき While setting diff serv bits for uri %s: Edge 設定できない。 ない。 Unable to get DiffServ field. 複数のセッションで使用しているソケットの Destination address %ls is being shared among multiple net connections. Changing the DSCP settings from the one for uri %ls to the uri %ls. Edge Setting Diff Serv bits is not supported for group, service or virtual connections. Core Setting Diff Serv bits is not supported for Windows Platforms. Auth DSCP ビットをセッションで設定しようとした ときに、既に別のセッションで設定されてい た。 グループ、サービスまたは仮想の接続の DSCP ビットを設定する。 Windows で DSCP 値の設定を試行する。 種類が不明な接続の DSCP ビットを設定する。 Setting Diff Serv bits (B: %d, M: %d) for this Core connection (from ip: %S) is not supported. 次の表に、警告メッセージを示します。 状況 メッセージ ログファイル Authorization プラグインから通知されたビッ ECN part of diffserv will not get set for トに対するマスクの ECN 部分が ON になって diffserv bits %d and mask %d. AuthMessage いる。 次の表に、情報メッセージを示します。 状況 メッセージ DSCP ビットが Authorization プラグインで正常に設定され While setting diff serv bits for uri %s: Successfully set the diff serv bits (bits: %d, mask: %d) for addr:port %S:%d and nc uri %s. Current diff serv value is %d. た。 Authorization プラグインから通知された DSCP ビットが既 Requested diff serv bits (bits: %d, mask: %d) for addr:port %S:%d and nc uri %s already set. Current diff serv value is %d. に RTMP に対して設定されている。 ビットの確認 ソケットでビットが設定されていることを確認するには、ブラウザーで getNetStreamStats() Administration API を呼び出 します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの設定 http://<server>:<admin_port>/admin/getNetStreamStats?auser=<admin_user>&apswd=<admin_password>&appInst=<a pp_instance>&streamIds=-1 このコマンドを実行すると、次のような出力が表示されます。 <result> <level>status</level> <code>NetConnection.Call.Success</code> <timestamp>Mon 25 Jan 2010 08:00:00 PM PST</timestamp> <data> <_0> <name>sample</name> <time>Sun 24 Jan 2010 06:00:00 PM PST</time> <type>playing recorded</type> <client>BCAgYLpK</client> <stream_id>BBAgYLpK</stream_id> <client_type>normal</client_type> <diffserv_bits>0xfc</diffserv_bits> </_0> </data> </result> diffserv_bits エレメントは、ビットが正常に設定された場合にのみ更新されます。 RTMP ストリームのビットの確認 クライアントからサーバーに接続し、ストリームを再生する場合について考えてみましょう。Authorization プラグインで ビットを 2 回設定するとします。1 回目は E_CONNECT イベントを受け取ったときで、2 回目は E_PLAY イベントを受け 取ったときです。ストリームの再生中は、Wireshark のようなツールを使用してパケットをキャプチャします。ストリーミ ングが停止したら、キャプチャを停止し、ソースポートが 1935 または RTMP で使用されるいずれかのポートになるように パケットをフィルター処理します。パケットを少なくとも 1 つキャプチャしたら、右クリックして「Follow TCP stream」 を選択し、そのストリームのパケットをすべてフィルター処理します。パケットを時間に基づいて並べ替えます。ストリー ムの先頭からパケットを見ていくと、NetConnection 応答がサーバーから送信されるまでは DiffServ フィールドは 0 です。 NetConnection 応答パケットが送信されてから NetStream.Play.Reset または NetStream.Play.Start のどちらかのパケッ トが送信されるまでは、ビットは E_CONNECT イベントで設定された値に設定されます。それらのどちらかのパケットが 送信された時点で、ビットは E_PLAY イベントで設定された値に設定されます。 注意:Server.xml ファイルを使用してビットを設定する場合は、ハンドシェイクの一部としてサーバーから送信されたパ ケットでもビットが設定されます。 RTMPT ストリームのビットの確認 RTMPT 接続の動作は、RTMP 接続の場合とは少し異なります。RTMPT 接続を作成するときは、クライアントサイドか ら複数のソケットを開くことができます。同じクライアントから複数の NetConnection を開く場合、それらのソケットを NetConnection 全体で共有するものと考えられます。その場合のソケットの DSCP 設定は、DSCP ビットを最後に設定し たセッションの DSCP 値になります。次に例を示します。時間 t1:NetConnection nc1 に接続し、再生が開始されます。 DSCP ビットは 0x64 に設定されます。この NetConnection ではソケット s1、s2 および s3 を使用します。すべてのソケッ トの DSCP ビットが 0x64 に設定されます。t2:NetConnection nc2 に接続します。Authorization プラグインでは DSCP ビットは設定されません。この NetConnection ではソケット s2 と s4 を使用します。ソケット s2 の DSCP 値は 0x64 です。 ソケット s4 はデフォルト値になります(Server.xml ファイルで指定されている場合)。t3:NetConnection nc2 で再生が 開始されます。Authorization プラグインで DSCP ビットが 0x88 に設定されます。これ以降は、nc1 と nc2 のどちらのパ ケットを伝送しているかに関係なく、ソケット s2 と s4 の DSCP 値は 0x88 になります。t4:NetConnection nc2 で再生が 停止されます。何も変わりません。 最終更新日 2010/9/8 63 64 第 3 章:Administration Console の使用 Adobe Flash Media Server の Administration Console を使用すると、サーバーの保守、アプリケーションの監視および ユーザーの管理を行うことができます。また、アプリケーション開発者が Administration Console を使用して、アプリ ケーションをデバッグすることもできます。 Administration Console への接続 Administration Console について Administration Console は Adobe Flash Player アプリケーション(fms_adminConsole.swf)です。このアプリケー ションを使用すると、サーバーを管理したり、サーバー上で実行されているアプリケーションに関する情報を表示したりす ることができます。 Administration Console は Adobe Flash Media Administration Server に接続し、Adobe Flash Media Administration Server は Adobe Flash Media Server に接続します。Administration Console にログインするには、Administration Server が実行されている必要があります。 デフォルトでは、Flash Media Administration Server は、ポート 1111 にインストールされます。Administration Server のポート番号は、インストール後に fms.ini ファイルを編集することで変更できます。admin サーバーには安全にアクセス することができません(RTMPS)。そのため、ポート 1111 に対する外部要求をブロックし、admin サーバーへのアクセス をファイアウォール内のクライアントのみに制限することをお勧めします。 注意:Administration Console は、Administration API を呼び出して、サーバーの検査および管理を行います。独自の 管理アプリケーションを構築するには、『Flash Media Server Administration API Reference』を使用してください。 Administration Console への接続 サーバー管理者と仮想ホスト(vhost)管理者の 2 種類があります。仮想ホスト管理者として Administration Console に ログインすると、セッションは仮想ホストに固有になります。この場合、管理できるのは、その仮想ホストで実行されてい るアプリケーションに限られます。サーバー管理者は、そのサーバーで実行されているすべてのアプリケーションにアクセ スできます。 1 Administration Console を開くには、次のいずれかの操作を行います。 • Windows では、スタート/すべてのプログラム/ Adobe / Flash Media Server 4 / Adobe Flash Media Administration Console を選択します。 • Linux では、Flash Player がインストールされているブラウザーで、fms_adminConsole.htm ファイルと fms_adminConsole.swf ファイルを開きます。 • Macintosh® OS では、fms_adminConsole.htm ファイルと fms_adminConsole.swf ファイルを Macintosh にコ ピーします。次に、Flash Player がインストールされている Web ブラウザーで、fms_adminConsole.htm ファイル を開きます。 Apache を Flash Media Server にインストールした場合、fms_adminConsole.swf および fms_adminConsole.htm ファイルは RootInstall/webroot フォルダーにあります。その他の場合、fms_adminConsole.swf および fms_adminConsole.htm ファイルは、ルートインストールフォルダーにあります。 2 (オプション)サーバー名を指定します。この名前は、サーバーに迅速に接続するためのエイリアスです。このサーバー 名のサーバーアドレスは、次に Administration Console を開いたときも記憶されています。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 3 「Server Address」ボックスで、次のいずれかの操作を行います。 • サーバーと Administration Console が同じコンピューターで実行されている場合は、localhost と入力します。 Administration Server が 1111(デフォルト)以外のポートにインストールされている場合は、ポート番号も入力す る必要があります。例えば、localhost:1234 と入力します。localhost と入力すると、このコンピューターのデフォ ルトの仮想ホストに接続されます。 • デフォルトの仮想ホスト以外の仮想ホストに接続するには、完全修飾ホスト名、例えば www.example.com と入力 します。ホスト名は、有効なネットワーク IP アドレスにマッピングする必要があります。Windows でこの動作をテ ストするには、windows\system32\drivers\etc\hosts にあるローカルの hosts ファイルを編集します。 • Administration Console を別のコンピューターで実行して、リモートで接続する場合は、サーバー名 (FlashMediaServer.myCompany.com)または接続先 Administration Server の IP アドレスとポート番号 (12.34.56.78:1112)を入力します。この場合、使用中のコンピューターが別のコンピューター上の指定されたポー トに接続できることを確認します。また、Administration Server が、使用中の特定のドメインまたは IP アドレスか らの接続を禁止するよう設定されていないことを確認します。 4 ユーザー名とパスワードを入力します。 そのサーバーをインストールしたサーバー管理者である場合は、インストール時に入力した管理者ユーザー名とパスワー ドを入力します。このユーザー名とパスワードは、RootInstall/conf/fms.ini ファイルに格納されています。 セキュリティ上の理由から、Administration Console ではセッション間でパスワードを保存しません。 それ以外の場合は、サーバー管理者から受け取ったユーザー名とパスワードを入力します。 デフォルト以外のアダプター上の仮想ホストにログインする場合は、アダプター名を指定する必要があります。例えば、 _secondAdaptor_ アダプター上の仮想ホストに vhost 管理者 JLee がログインする場合は、「Username」ボックスに _secondAdaptor_/JLee と入力します。 5 (オプション)「Remember My Password」オプションを選択します。 6 (オプション)「Automatically Connect Me」オプションを選択します。 7 (オプション)「Revert」ボタンを押すと、Administration Console はデフォルト設定に戻ります。 この元に戻す操作を行うと、保存されたすべてのサーバー、ユーザー名およびパスワードが Administration Console から削除されます。また、Administration Console で行ったすべてのカスタム設定は無効になり、当初の状態が復元さ れます。(ただし、「Revert」ボタンはサーバーには影響を与えません。) 8 「Login」をクリックします。 「Logoff」をクリックすれば、いつでも接続を切断できます。 注意:右上(疑問符のアイコンの隣)にある垂直バーの色は、Administration Console がサーバーに接続されているかど うかを示します。接続されている場合は緑、接続されていない場合は赤になります。 Administration Console の各画面の上部には、2 つのアイコンが表示されています。フォルダーのアイコンをクリックす ると、Flash Media Server の Web サイトと関連リソースへのリンクが表示されます。疑問符のアイコンをクリックすると、 Flash Media Server ヘルプへのリンクが表示されます。 サーバーがインストールされているコンピューターとは別のコンピューターで Administration Console を実行するには、 fms_adminConsole.htm と fms_adminConsole.swf をその実行する別のコンピューターにコピーします。または、この ファイルが webroot ディレクトリにあることを確認します。このディレクトリのファイルにはリモートでアクセスできま す。どちらの場合も、Users.xml ファイルの Allow タグと Deny タグが、別のコンピューターの IP アドレスからの接続を許 可しているかどうかを確認します。 最終更新日 2010/9/8 65 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 更新間隔の変更または更新の一時停止 Administration Console パネルの情報は、デフォルトでは 5 秒ごとに更新されます。この更新間隔は、1 ∼ 60 秒の任意の 間隔にいつでも変更できます。また、更新はいつでも一時停止することができます。 Administration Console の更新間隔の変更 ❖ 右上にある「Refresh Rate」の隣のポップアップメニューをクリックし、新しい間隔を選択します。例えば、10 秒を選 択します。 Administration Console の更新の一時停止 1 右上にある「Refresh Rate」の隣のポップアップメニューをクリックし、スクロールダウンして、「Pause」を選択しま す。 2 「Pause Refresh」をクリックして、続行します。 Administration Console のパネルの回りに赤い境界線が表示されます。これは更新の機能が一時停止していることを示 します。 3 情報の更新を再開するには、先ほどのポップアップメニューをクリックし、更新間隔を選択します。 アプリケーションの検査 View applications サーバーまたは仮想ホストに接続されると、Administration Console は、現在実行中のアプリケーションインスタンスを 一覧表示するパネルを表示します。ここから、アプリケーションの状態を監視できます。 View Applications パネルを使用して、アプリケーションインスタンスの表示、ロードまたはアンロードを行います。 注意:Administration Service の実行中に追加した新しいアプリケーションが Administration Console に表示されない場 合は、他のパネルに移動してから戻ると、コンソールが更新されます。 最終更新日 2010/9/8 66 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 Administration Console でのアプリケーションインスタンスの手動ロード 1 64 ページの「Administration Console への接続」の手順に従います。 2 接続先のサーバーまたは仮想ホストの名前とアドレスを入力します。 3 管理者のユーザー名とパスワードを入力します。 4 「View Applications」をクリックします。 5 「New Instance」をクリックします。 6 ポップアップメニューからアプリケーションを選択します(このアプリケーションは、サーバー上に既に設定されている 必要があります)。 7 Administration Console によってデフォルトのインスタンスの接尾辞 _definst_ が追加されますが、これは編集可能で す。この名前を確定し、アプリケーションインスタンスを開始するには、Enter キーを押します。取り消すには、Shift + Esc キーを押します。 Administration Console でのアプリケーションインスタンスの再ロード インスタンスのサーバーサイドスクリプトを再ロードする場合、またはそのインスタンスとすべてのユーザーの間の接続を 切断して即座に新規の接続を許可する場合に、アプリケーションインスタンスを再ロードします。 1 64 ページの「Administration Console への接続」の手順に従います。 2 「View Applications」をクリックします。 3 リストからアプリケーションを選択します。 4 「Reload」(「Performance」タブの右側にある円形の矢印アイコン)をクリックします。 アプリケーションに関する情報の表示 1 64 ページの「Administration Console への接続」の手順に従います。 2 「View Applications」をクリックします。 3 リストからアプリケーションを選択します。各タブに、アプリケーションに関する次の情報が表示されます。 • サーバー上のそのアプリケーションインスタンスによって生成されるログメッセージ • そのアプリケーションインスタンスに接続されているクライアントの一覧 • そのアプリケーションインスタンスのアクティブな共有オブジェクトの一覧 • そのアプリケーションインスタンスのアクティブなストリームの一覧 • インスタンスの合計実行時間やユーザー数など、選択したアプリケーションの全体的な状態に関する情報 アプリケーションリストの並べ替え 1 64 ページの「Administration Console への接続」の手順に従います。 2 「View Applications」をクリックします。 3 アプリケーションリストで、次のいずれかの操作を行います。 • アプリケーションを名前順に並べ替えるには、「Name」という列ヘッダーをクリックします。 • クライアント順に並べ替えるには、「Clients」という列ヘッダーをクリックします。 アプリケーションインスタンスの終了 アプリケーションインスタンスが終了すると、すべてのユーザーの接続が切断され、すべてのインスタンスリソースが解放 されます。 1 64 ページの「Administration Console への接続」の手順に従います。 最終更新日 2010/9/8 67 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 2 「View Applications」をクリックします。 3 リストからアプリケーションを選択します。 4 「Unload」(「Performance」タブの右側にある停止アイコン)をクリックします。 アプリケーションのログメッセージの表示 Administration Console の Live Log パネルには、選択したアプリケーションインスタンスのサーバーサイドスクリプトか らのログメッセージおよび trace() ステートメントが表示されます。このパネルの情報は、対象のアプリケーションインスタ ンスがログメッセージを生成するたびに更新されます。(コンソールを更新する機能を一時停止している場合でも、ログメッ セージは届きます。) Live Log パネル 1 64 ページの「Administration Console への接続」の手順に従います。 2 「View Applications」をクリックします。 3 「Live Log」をクリックします。 4 リストからアプリケーションを選択します。 5 「Find」テキストボックスにテキストを入力し、「Find Next」をクリックします。必要に応じて、「Find Previous」ボ タンと「Clear Log」ボタンを使用します。 アクティブなストリームの表示 Administration Console の Streams パネルを使用すると、ストリームに関する情報を表示したり、ストリームを再生した りすることができます。 最終更新日 2010/9/8 68 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 Streams パネル 1 64 ページの「Administration Console への接続」の手順に従います。 2 「View Applications」をクリックします。 3 「Streams」をクリックします。 4 リストからアプリケーションを選択します。Streams パネルには、次の情報が表示されます。 • Name:NetStream ストリームでは、名前は NetStream ID(サーバーが生成する番号)となります。パブリッシュ されるライブストリームについては、ライブストリーム名が表示されます。記録されたストリームについては、エン トリに FLV ファイルまたは MP3 ファイルの名前が表示されます。例えば、flv:stream2.flv や mp3:sound.mp3 とい うように表示されます。クライアントが stream2.flv を要求する場合、flv:stream2.flv(Stored)用のエントリと、 クライアントに送られる実際のネットワークストリームエントリの 2 つのエントリがあります。 • Type:ストリームのタイプを示す文字列で、stored、live、NetStream のいずれかです。 5 任意のストリームを選択すると、そのストリームのプロパティが表示されます。プロパティの値は次のとおりです。 • Name:実際のストリーム名。streamID ではありません。 • Status:ストリームの状態。publishing、playing live、playing recorded のいずれかです。 • クライアント:ストリームを再生するクライアント ID。 • Time:クライアントがストリームの再生を開始した時刻。 注意:選択したストリームタイプがデバッグで使用できる場合、Administration Console は隣のパネルにそのプロパ ティを表示します。そのストリームタイプがデバッグで使用できない場合は、エラーメッセージが表示されます。 6 「Play Stream」をクリックすると、選択したストリームが、そのストリームのサイズの別ウィンドウで再生されます (「Play Stream」ボタンは、デバッグ接続が使用可能な場合にのみ表示されます。再生できるのは、名前付きのストリー ムだけです)。 最終更新日 2010/9/8 69 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 アクティブなクライアントの表示 Administration Console の Clients パネルには、アプリケーションに接続されているすべてのクライアントに関する詳細 情報が表示されます。 Clients パネル 1 64 ページの「Administration Console への接続」の手順に従います。 2 「View Applications」をクリックします。 3 「Clients」をクリックします。 4 リストからアプリケーションを選択します。次の情報が表示されます。 • Client ID:クライアントの内部 Client ID。この ID は、サーバーが生成した数値で、Flash Media Server が各クラ イアントを識別するために使用します。 • Protocol:RTMP などの、クライアントが使用している接続プロトコル。 • Bytes In および Bytes Out:サーバーとの間で 1 秒間に送受信されたバイト数の平均。Administration Console は、 直前の 15 秒間に受け取った合計バイト数を 15 で割ることで、この値を算出します。パネルが最初に表示されたとき には、開始点からのデータが 1 つあるだけなので、ここには pending と表示され、パネルを開いた 15 秒後に数値が 表示されます。 • Connection Time:クライアントが接続した日時。 • Messages In および Messages Out:クライアントとの間で送受信されたメッセージの数。Messages In にはクライア ントからサーバーに送られた更新要求が反映され、Messages Out にはサーバーから接続しているクライアントに送 られた更新成功の通知が反映されます。 • Drops:クライアントが接続した以降に欠落したメッセージの数。ライブのストリーム、オーディオおよびビデオの 場合はメッセージが欠落する可能性があり、記録されたストリームの場合はビデオメッセージだけが欠落します。コ マンドメッセージが欠落することはありません。 最終更新日 2010/9/8 70 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 アクティブな共有オブジェクトの表示 Administration Console の Shared Objects パネルには、アプリケーションのアクティブな共有オブジェクトが一覧表示さ れます。これは、アプリケーションをデバッグするときに役に立ちます。この情報は、5 秒ごとに自動的に更新されます。 即時更新するには「Refresh」をクリックします。Administration Console には、各共有オブジェクトの名前、タイプ(永 続的または一時的)および接続(サブスクライブするユーザーの数)が表示されます。 Shared Objects パネル 注意:Administration Console は ActionScript 2.0 を使用して構築されており、AMF3 のデータを認識できません。した がって、ActionScript 3.0 で構築されたアプリケーションのリモート共有オブジェクトのデータを Administration Console で表示するには、アプリケーションで NetConnection.objectEncoding プロパティを AMF0 に設定する必要がありま す。 1 64 ページの「Administration Console への接続」の手順に従います。 2 「View Applications」をクリックします。 3 「Shared Objects」をクリックします。 4 リストからアプリケーションを選択します。 5 共有オブジェクトに関する情報を表示するには、そのオブジェクトをクリックします。接続中のユーザーと共有オブジェ クトを使用しているユーザーの数が、共有オブジェクトに割り当てられているデータプロパティと共に表示されます。 パフォーマンス情報の表示 Administration Console の Performance パネルには、選択したアプリケーションインスタンス全体の状態に関する情報が 表示されます。この情報は、5 秒ごとに自動的に更新されます。即時更新するには「Refresh」をクリックします。 最終更新日 2010/9/8 71 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 Performance パネル 1 64 ページの「Administration Console への接続」の手順に従います。 2 「View Applications」をクリックします。 3 「Performance」をクリックします。 4 リストからアプリケーションを選択します。次の情報が表示されます。 • Clients:このアプリケーションインスタンスに接続しているクライアントに関する情報として、開始時以降にこのア プリケーションインスタンスに接続したクライアントの合計数、アクティブなクライアント、このアプリケーション インスタンスに接続しようとして拒否されたユーザー数などが表示されます。(接続が失敗した理由を限定するには、 View Applications の Live Log パネルを調べます)。 • Lifespan:アプリケーションインスタンスのこれまでの実行時間と実行が開始された日時。 • Messages Per Second:1 秒間に送信されたメッセージ(ビデオフレーム、オーディオパケットおよびコマンドメッ セージ)数の平均。 • Bytes Per Second:このアプリケーションインスタンスについて 1 秒間に送信されたバイト数の平均。 Administration Console は、直前の 15 秒間に受け取った合計バイト数を 15 で割ることで、この値を算出します。 パネルが最初に表示されたときには、開始点からのデータが 1 つあるだけなので、ここには pending と表示され、パ ネルを開いた 15 秒後に数値が表示されます。 • Active Connections:アプリケーションインスタンスに接続しているユーザーの数。 • Bandwidth:アプリケーションインスタンスが処理したデータ量。送信したデータ、受信したデータおよびデータト ラフィックの合計などが表示されます。 • CPU and Memory Usage:Flash Media Server で使用されている CPU とメモリの比率。 5 チェックボックスの選択および選択解除によって、グラフに表示される情報をカスタマイズできます。例えば、 Bandwidth グラフでは、「Total」を選択して「In」と「Out」の選択を解除すると、使用された帯域幅の合計だけが表 示されます。 最終更新日 2010/9/8 72 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 管理者の管理 管理者の役割について 管理者とは、Administration Console へのログインが許可されているユーザーであり、サーバー管理者と仮想ホスト管理 者の 2 種類があります。 サーバー管理者は、すべての仮想ホストを制御し、サーバーの再起動やシャットダウンなどのサーバーレベルのタスクを実 行できます。サーバー管理者は、すべてのタブのすべての操作にアクセスし、その操作を実行することができます。 仮想ホスト管理者は、対象となる仮想ホストのアプリケーションを管理できます。例えば、アプリケーションの再ロードや 接続解除などを行うことができます。仮想ホスト管理者は、「View Applications」タブの操作にアクセスし、その操作を実 行することができます。サーバーまたは管理ユーザーを管理することはできません。 管理者の追加 Administration Console を使用したサーバー管理者の追加 注意:「Manage Users」タブにアクセスきるのは、サーバー管理者のみです。仮想ホスト管理者はアクセスできません。 1 サーバー管理者として、Administration Console にログインします。 2 「Manage Users」タブを選択します。 3 「New User」をクリックします。 4 ユーザー名とパスワードを入力し、「Save」をクリックします。 Administration Console により、新しいユーザー名とパスワードが Users.xml ファイルに追加されます。サーバーを 再起動する必要はありません。 Users.xml ファイルの編集によるサーバー管理者の追加 1 RootInstall/conf/Users.xml ファイルを開きます。 2 UserList セクションを探します。 3 追加するサーバー管理者ごとに、新しい <User></User> セクションを追加します。 User name 属性は、ユーザー名を指定します。Password エレメントは、パスワードを指定します。Allow エレメント、 Deny エレメントおよび Order エレメントは、管理者が Administration Console に接続するためのホストを指定します。 次のサンプル XML では、すべてのドメインから接続できるユーザーを追加しています。 <UserList> <User name="${SERVER.ADMIN_USERNAME}"> <Password encrypt="false">${SERVER.ADMIN_PASSWORD}</Password> <Allow></Allow> <Deny></Deny> <Order>Allow,Deny</Order> </User> <User name="janedoe"> <Password encrypt="false">S4mpl3P4ss</Password> <Allow></Allow> <Deny></Deny> <Order>Allow,Deny</Order> </User> </UserList> 詳細については、Users.xml ファイル内のコメントを参照してください。 4 XML を検証し、Users.xml ファイルを保存します。 最終更新日 2010/9/8 73 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 仮想ホスト管理者の追加 1 仮想ホストのルートフォルダーで Users.xml ファイル(例えば、 RootInstall/conf/_defaultRoot_/www.sampleVhost.com/Users.xml)を開きます。ファイルがない場合は、 RootInstall/conf フォルダーから Users.xml ファイルをコピーします。 2 UserList セクションを探します。 3 追加する仮想ホスト管理者ごとに、新しい <User></User> セクションを追加します。 User name 属性は、ユーザー名を指定します。Password エレメントは、パスワードを指定します。Allow エレメント、 Deny エレメントおよび Order エレメントは、管理者が Administration Console に接続するためのホストを指定します。 次のサンプル XML では、すべてのドメインから接続できるユーザーを追加しています。 <UserList> <User name="${SERVER.ADMIN_USERNAME}"> <Password encrypt="false">${SERVER.ADMIN_PASSWORD}</Password> <Allow></Allow> <Deny></Deny> <Order>Allow,Deny</Order> </User> <User name="vHostAdmin"> <Password encrypt="false">Ex4mpl3P4ss</Password> <Allow></Allow> <Deny></Deny> <Order>Allow,Deny</Order> </User> </UserList> 詳細については、Users.xml ファイル内のコメントを参照してください。 4 XML を検証し、Users.xml ファイルを保存します。 管理者アカウントの削除とパスワードのリセット 「Manage Users」タブの操作を実行できるのは、サーバー管理者のみです。仮想ホスト管理者は実行できません。 ユーザーアカウントの削除 1 サーバー管理者として Administration Console にログインします。 2 「Manage Users」をクリックします。 3 ユーザーを選択します。 4 「Delete This User Account On The Server」をクリックします。 5 操作を確定します。 ユーザーのパスワードの変更 1 サーバー管理者として Administration Console にログインします。 2 「Manage Users」をクリックします。 3 ユーザーを選択します。 4 「Reset The Password For This User」をクリックします。 5 新しいパスワードを入力します。 最終更新日 2010/9/8 74 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 サーバーの管理 サーバーのパフォーマンスの監視 Administration Console を使用すると、各サーバーまたはサーバーグループのパフォーマンスを確認できます。サーバー はツリー構造になっています。 Manage Servers パネルの上部に一連のタブが表示されます。ここから、次の作業を実行できます。 • アプリケーションが実行されているコンピューターのパフォーマンス統計を確認します。 • サーバーへの接続に関する情報を確認します。 • サーバーまたは仮想ホストに存在するアプリケーションに関する情報を確認します。 • サーバーのライセンスを確認し、必要に応じてシリアルキーを追加します。 • アクセスログとサーバーログを確認します。 Servers パネルは、Administration Console のこのセクションの画面左側にあります。このパネルには、アクセスして管理 することができるサーバーと仮想ホストが一覧表示されます。 Manage Servers パネル パネルの上部および下部にある小さなボタンを使用すると、次の作業を実行できます。 • リストに新しいサーバーを追加します。 • サーバーのログイン情報(ユーザー名とパスワード)を編集し、オプションを選択します。パスワードを記憶させる、 サーバーへのログイン時に自動接続するなどのオプションがあります。 • リストからサーバーを削除します。 • 選択したサーバーに接続します。 • サーバーに対して ping を実行し、そのサーバーが実行されていることを確認します。 • サーバーまたは仮想ホストを再起動します。 最終更新日 2010/9/8 75 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 • ガベージコレクションを実行して、メモリからストリームやアプリケーションインスタンスなどの未使用のサーバーリ ソースを消去します。(自動ガベージコレクションの間隔は、Server.xml 設定ファイルおよび Vhost.xml 設定ファイル で設定できます。) • サーバーまたは仮想ホストを停止します。 サーバーの詳細情報の表示 Administration Console の Details パネルには、サーバーのライブ情報が表示されます。 1 64 ページの「Administration Console への接続」の手順に従います。 2 「Manage Servers」をクリックします。 3 「Details」をクリックします。 4 リストからサーバーを選択します。次の情報が表示されます。 • 現在のクライアントの合計数 • サーバーのライフスパン • アクティブな接続、使用されている帯域幅リソース、使用されている CPU とメモリリソースのグラフィック表示 接続に関する詳細情報の表示 Administration Console の Connections パネルには、選択したサーバーへのすべてのクライアント接続が一覧表示されま す。 1 64 ページの「Administration Console への接続」の手順に従います。 2 「Manage Servers」をクリックします。 3 「Connections」をクリックします。 4 リストからサーバーを選択します。サーバーまたは仮想ホストにアクセスする各クライアントについて次の情報が表示さ れます。 • サーバー名 • 接続が確立されているかどうか • 接続数 • 接続解除数 • 送受信されたバイト数 • 欠落したメッセージ数 アプリケーションの詳細情報の表示 Administration Console の Applications パネルには、選択したサーバーまたは仮想ホスト上で実行されているすべてのア プリケーションに関する詳細情報が表示されます。 1 64 ページの「Administration Console への接続」の手順に従います。 2 「Manage Servers」をクリックします。 3 「Applications」をクリックします。 4 リストからサーバーを選択します。各アプリケーションの名前が、次の情報と共に表示されます。 • サーバー名 最終更新日 2010/9/8 76 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 • 名前 • サーバーにロードされた、またはサーバーからアンロードされたアプリケーションインスタンスの数 • 接続されているユーザーの数 • 接続した、および接続を解除したユーザーの数 • 現在アクティブなインスタンスの数 • サーバーからアンロードされたインスタンスの数 • 各アプリケーションについて受諾または拒否された接続の総数 ライセンスファイルの表示 Administration Console の License パネルは、シリアルキーを追加する場所です。また、このパネルには、選択したサー バー上での Flash Media Server の実行をユーザーに許可するすべてのシリアルキーに関する詳細情報も表示されます。下の フレームには、カスタムライセンスに関する情報が表示されます。 1 64 ページの「Administration Console への接続」の手順に従います。 2 「Manage Servers」をクリックします。 3 「License」をクリックします。 4 リストからサーバーを選択します。ライセンスごとに、次の情報が表示されます。 • 個々のシリアルキー番号 • クライアント接続が許可された最大数 • 帯域幅の上限 • ライセンスが有効か(true)無効か(false) 注意:複数のライセンスを保有している場合もあるので、Administration Console の下部に表示されている総合的な上 限を確認するようにしてください。 シリアルキーの追加 シリアルキーは、Administration Console の License パネルで追加します。 1 64 ページの「Administration Console への接続」の手順に従います。 2 「Manage Servers」をクリックします。 3 「License」をクリックします。 4 Administration Console の下部にあるテキストボックスに、シリアルキー番号を入力します。 5 「Add Serial Key」をクリックします。 6 サーバーを再起動します。 注意:手動で(つまり、設定ファイルを直接編集することで)、fms.ini または Server.xml の <LicenseInfo> タグに追加した シリアル番号は、Administration Console では削除できません。Administration Console で削除できるのは、 Administration Console を使用して追加したシリアル番号だけです。 アクセスログファイルの表示 Administration Console の Server Log パネルには、アクセスログに書き込まれたメッセージが表示されます。 1 64 ページの「Administration Console への接続」の手順に従います。 最終更新日 2010/9/8 77 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration Console の使用 2 「Manage Servers」をクリックします。 3 「Server Log」をクリックします。 4 リストからサーバーを選択します。 5 特定の文字列を探すには、「Find」テキストボックスにその文字列を入力し、「Find Next」をクリックします。必要に 応じて、「Find Previous」ボタンと「Clear Log」ボタンを使用します。 最終更新日 2010/9/8 78 79 第 4 章:ログファイルの監視と管理 Adobe Flash Media Server にはサーバーの管理やトラブルシューティングに役立つ様々なログファイルが用意されていま す。ログファイルを使用して、サーバーにアクセスするユーザー、ユーザーによるアプリケーションの使用状況および一般 的な診断など、サーバーの動作を追跡します。ログは W3C 形式です。管理者は、ログファイルの解析に標準的な解析ツー ルを使用できます。 ログファイルの使用 ログファイルについて サーバーでは、様々な種類のログが管理されます。サーバーはクライアント接続とストリーム操作に関する統計をアクセス ログに出力します。また、診断ログおよびアプリケーション動作に関するアプリケーションログも管理されます。 access.XX.log サーバーにアクセスするユーザーに関する情報を追跡します。 application.XX.log アプリケーションインスタンスの動作に関する情報を追跡します。 診断ログ サーバー操作に関する情報を追跡します。 注意:Adobe Flash Player 9 Update 3 では、Flash Player は pause イベントについてサーバーに通知しなくなりました。 ロギングの設定ファイル ロギングを設定するには、Server.xml および Logger.xml 設定ファイルを使用します。Server.xml ファイルには、サー バー全体のロギング動作を制御する Logging セクションが含まれています。Logging セクションには、サーバーがイベント を記録するかどうかを決定する Enable タグがあります。また、Logging セクションには、仮想ホストごとに個別のログファ イルを記述するか、またはサーバー全体で 1 つのファイルを記述するかを決定する Scope タグもあります。各ログファイル の場所は、Logger.xml ファイルの Directory タグと FileName タグによって決定されます。 Scope タグが server に設定されている場合、RootInstall/conf フォルダーにある Logger.xml ファイルがサーバー全体のロ ギング設定を決定します。 Scope タグが vhost に設定されている場合、仮想ホストのルートフォルダーに Logger.xml ファイルを配置して、各仮想ホス トの動作を制御することができます。Scope タグが vhost に設定されていて、仮想ホストの Logger.xml ファイルが存在しな い場合、ルートにある Logger.xml ファイルによってロギング動作が制御されます。Scope タグが server に設定されている場 合、仮想ホストの Logger.xml ファイルは無視されます。 詳細については、RootInstall/conf ディレクトリにある Server.xml および Logger.xml ファイルのコメントを参照してく ださい。 Web サーバーのログファイルの使用 Flash Media Server は、Apache HTTP Server と共にインストールされます。 Apache ログファイルは、デフォルトで RootInstall/Apache2.2/logs にあります。ログは、デフォルトの Apache エラー および結合アクセスログ形式です。ログファイルの場所を変更するには、RootInstall/Apache2.2/conf/httpd.conf ファイ ルを編集します。 Apache ログの名前は access_log および error_log です。Flash Media Server は、Apache ログのログローテーションを処 理します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド ログファイルの監視と管理 Apache ログファイルの詳細については、www.apache.org にある Apache のドキュメントを参照してください。 ログファイルのローテーションとバックアップ ログファイルは時間と共にサイズが大きくなりますが、ログファイルのサイズを管理するいくつかの方法が用意されていま す。 1 つのオプションとして、最も古いファイルを移動または削除する、ログファイルのローテーションがあります。ログファ イルのローテーションスケジュールを指定するには、Logger.xml ファイルの rotation エレメントを使用します。2 種類の ローテーションスケジュールを確立できます。1 つ目のオプションでは、毎日特定時刻に実行されるローテーションを設定 します。例えば、毎日のローテーションを 00:00 に設定すると、24 時間ごとに午前 12 時にファイルがローテーションされ ます。もう 1 つのオプションでは、ログが指定した長さを超過した時点で実行されるローテーションを設定します。rotation エレメントを使用して、名前、最大ファイルサイズ(キロバイト単位)、保持する最大ログファイル数もカスタマイズできま す。例として、/conf ディレクトリにインストールされている Logger.xml ファイルを参照してください。 注意:ログファイルローテーションを無効にすることはできません。ただし、Logger.xml 設定ファイルの値を設定すると、 実質的にローテーションをオフにすることができます。MaxSize タグに大きな値を選択します。Schedule のタイプを 「duration」に設定し、最長継続時間を選択します。Logger.xml 設定ファイルの詳細については、79 ページの「ロギングの 設定ファイル」を参照してください。 定期的にログを削除またはバックアップするオペレーティングシステムスクリプトを記述できます。重要なログファイルに ついては、ログディレクトリをバックアップの場所に移動します。現在アクティブなファイルを移動することができます。 サーバーは次のログイベントの発生時に新しいファイルを作成します。 アクセスログ アクセスログの読み方 アクセスログには、Flash Player および Flash Media Server アプリケーションインスタンスからの要求に関する情報が記録 されます。これらのログを確認することで、ユーザーがサーバーに接続した日時、セッションで使用された総帯域幅、接続 によりアクセスされたストリームなど、各種イベントやリソースに関する情報を得ることができます。イベントのエラーを トラブルシューティングするために、特定のイベントに関連付けられたステータスコードを使用できます。そして、入手し た情報により、どのアプリケーションが最もよく使用されたかを確定することもできます。 デフォルトのアクセスログファイルは access.xx.log で、RootInstall/logs ディレクトリに格納されます。デフォルトの設 定では、サーバーごとにアクセスログが 1 つ作成されます。仮想ホストごとに個別のファイルを作成するようにサーバーを 設定することもできます。仮想ホストごとにログファイルを作成するように設定した場合は、特定の仮想ホストのすべての ログは、ログディレクトリ内のサブディレクトリに格納されます。このサブディレクトリの名前は、仮想ホスト名と同じに なります。置換文字列は、角カッコ([])で囲まれています。YYYY、MM、DD、NN は、それぞれ順に、西暦年、月、 日付、バージョンを示します。この置換文字列によって、アクセスログのファイル名をカスタマイズします。(例えば、 access.[YYYYMMDDNN].log を access.2007052401.log という名前にできます。)仮想ホストごとに個別のログファイル (これはログ を作成するようにサーバーを設定するには、Server.xml ファイルの Scope タグの値を「vhost」に設定します。 用のみの個別の scope タグです。) Flash Media Server は、イベントカテゴリを定義します。さらに、各カテゴリで記録されるイベントを定義します。 Logger.xml ファイルの <Events> および <Fields> エレメントを編集すると、すべてのイベントを記録したり、特定のイベン トのみを記録したりするようにログをカスタマイズできます。 最終更新日 2010/9/8 80 FLASH MEDIA SERVER 4.0 設定および管理ガイド 81 ログファイルの監視と管理 ライブおよび 24 時間年中無休のアプリケーションで定期的にイベントをロギング する 多くの企業では、顧客への課金のためにアクセスログの統計を使用しています。プログラムにライブイベントや 24 時間年 中無休のプログラムが含まれている場合、課金を計算するために必要なイベントが、課金の単位となる期間内に発生しない 場合があります。この問題を解決するため、チェックポイントイベントを有効にできます。チェックポイントイベントは、 イベントの開始から終了までの間、定期的に数バイトをログ出力します。サーバーがチェックポイントイベントをログ出力 する頻度を設定できます。チェックポイントイベントとして使用できるのは、connect-continue、play-continue および publish-continue です。チェックポイントイベントの設定について詳しくは、41 ページの「チェックポイントのロギングイ ベントの有効化」を参照してください。 アクセスログで定義されるアクセスイベント イベント カテゴリ 説明 connect-pending session クライアントがサーバーに接続し、クライアントの認証を待っています。 connect session クライアントがサーバーに接続します。 disconnect session クライアントが接続を解除します。 connect-continue session 対応する connect イベントの更新状態を定期的に提供するチェックポイントイベント。 c-client-id フィールドを使用すると、対応する connect イベントを見つけることができ ます。 publish stream クライアントがライブストリームをパブリッシュします。 unpublish stream クライアントがライブストリームのパブリッシュを解除します。 publish-continue stream 対応する publish イベントの更新状態を定期的に提供するチェックポイントイベント。xsid フィールド(ストリーム ID)と c-client-id フィールドを使用すると、対応する publish イベントを見つけることができます。 play stream クライアントがストリームを再生します。 play-continue stream 対応する play イベントの更新状態を定期的に提供するチェックポイントイベント。x-sid フィールド(ストリーム ID)と c-client-id フィールドを使用すると、対応する play イベ ントを見つけることができます。 pause stream クライアントがストリームの再生を一時停止します。 unpause stream クライアントがストリームの再生を再開します。 client-pause stream クライアントはストリームを一時停止しますが、サーバーはクライアントにデータを送信 し続け、クライアントが一時停止を解除したときに、Player が再生するためのデータが十 分にあるようにします。このような一時停止は「スマートポーズ」と呼ばれます。スマー トポーズが機能するには、Flash Player 9,0,115,0 および Flash Media Server 3 以降が必 要です。ストリームポジションは、「c-spos」フィールドに記録されます。 client-unpause stream seek stream クライアントがストリームのスマートポーズを解除します。ストリームポジションは、 「c-spos」フィールドに記録されます。 クライアントがストリーム内をシークし、NetStream.inBufferSeek=false と設定されてい ます。また、NetStream.inBufferSeek=true のときに、クライアントがバッファーの外部 をシークする場合にも発生します。 client-seek stream NetStream.inBufferSeek=true のときに、クライアントがバッファー内をシークする場合 のシーク位置(「スマートシーク」と呼ばれます)。クライアントは、バッファーの外部を シークする場合には「seek」イベントを送信します。ストリームポジションは、「c- spos」フィールドに記録されます。 stop stream クライアントがストリームの再生またはパブリッシュを停止します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 82 ログファイルの監視と管理 イベント カテゴリ 説明 record stream クライアントがストリームの記録を開始します。 recordstop stream クライアントがストリームの記録を停止します。 server-start server サーバーが開始しました。 server-stop server サーバーが停止しました。 vhost-start server 仮想ホストが起動しました。 vhost-stop server 仮想ホストが停止しました。 registry.start registry レジストリが開始しました。 registry.stop registry レジストリが停止しました。 service.start registry サービスが開始しました。 service.stop registry サービスが停止しました。 app-start application アプリケーションインスタンスが起動しました。 app-stop application アプリケーションインスタンスが停止しました。 service.request registry サービス要求が行われました。 debug-pending session デバッグの要求が保留中です。 debug-approved session デバッグの要求が承認されました。 filenametransform authorization 仮想ストリームパスが、物理的な場所にマッピングされています。このイベントは、イベ ントを処理する Authorization プラグインがある場合に発生します。 loadsegment stream ストリーミングセグメントがロードされました。 アクション application アクションが発生しました。 コーデック stream コーデックが変更されました。 Authconnect authorization クライアントがサーバーに接続します。このイベントは、イベントを処理する Authorization プラグインがある場合に発生します。 Authplay authorization クライアントがストリームを再生します。このイベントは、イベントを処理する Authorization プラグインがある場合に発生します。 Authpublish authorization クライアントがライブストリームをパブリッシュします。このイベントは、イベントを処 理する Authorization プラグインがある場合に発生します。 Authseek authorization クライアントが記録されたストリーム内の新しい場所にジャンプします。このイベント は、イベントを処理する Authorization プラグインがある場合に発生します。 AuthRecord authorization クライアントがストリームの記録を開始します。このイベントは、イベントを処理する Authorization プラグインがある場合に発生します。 start-transmit stream サーバーが「startTransmit」コマンドを受信しました。このコマンドは、バッファー内 の容量が不足しているため、より多くのデータを送信するようサーバーに要求します。 stop-transmit stream サーバーが「stopTransmit」コマンドを受信しました。このコマンドは、バッファー内 に十分なデータがあることを理由に、クライアントが「startTransmit」イベントを送信 するまではデータの送信を中断するようサーバーに要求します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド ログファイルの監視と管理 アクセスログのフィールド 注意:このフィールドのデータにスペースや区切り文字が含まれる場合、データは二重引用符で囲まれます。データの前後 の二重引用符は、データの一部ではなく、データの構文をわかりやすくするために表示されます。この二重引用符は、tz、 x-ctx、x-adaptor、x-vhost、s-uri、c-referrer、c-user-agent、cs-bytes、sc-bytes および x-sname の各フィールドで使用されま す。 次の表のフィールドには以下の形式が適用されます。 日付:YYYY-MM-DD 時間:hh:mm:ss タイムゾーン:「UTC」、「Pacific Daylight Time」または「Pacific Standard Time」のような文字列 フィールド 説明 x-event イベントのタイプ x-category イベントのカテゴリ date 表示日付。 time イベントの発生時刻 tz タイムゾーンの情報 x-ctx イベント依存コンテキストの情報 s-ip サーバーの IP アドレスまたはアドレス(複数可) x-pid サーバープロセスの ID x-cpu-load CPU 負荷 x-mem-load メモリ使用状況(getServerStats() メソッドによるレポート結果) x-adaptor アダプター名 x-vhost 仮想ホスト名 x-app アプリケーション名 x-appinst アプリケーションインスタンス名。 x-duration ストリームまたはセッションイベントの継続時間。ストリームの場合、この値は、ストリームが再生されてい る秒数になります。セッションの場合、この値は、クライアントが接続されている秒数になります。 x-status x-status コードとその説明については、85 ページの「アクセスログのイベントステータスコード」を参照して ください。 c-ip クライアントの IP アドレス c-proto 接続プロトコル c-proto-ver 接続プロトコルのバージョン。 s-uri Flash Media Server アプリケーションの URI cs-uri-stem s-uri フィールドの stem 部分 cs-uri-query s-uri フィールドのクエリー部分。 c-referrer 参照元の URI c-user-agent ユーザーエージェント c-client-id クライアントの ID 最終更新日 2010/9/8 83 FLASH MEDIA SERVER 4.0 設定および管理ガイド ログファイルの監視と管理 フィールド 説明 cs-bytes このフィールドは、クライアントからサーバーに送信されたバイト数を示します。 この情報は、セッションあたりの料金をユーザーから請求するために使用できます。セッションあたりの使用 帯域幅を算出するには、 「disconnect」イベントの cs-bytes から「connect」イベントの cs-bytes を引き算し ます。 sc-bytes このフィールドは、サーバーからクライアントに送信されたバイト数を示します。 この情報は、セッションあたりの料金をユーザーから請求するために使用できます。セッションあたりの使用 帯域幅を算出するには、 「disconnect」イベントの sc-bytes から「connect」イベントの sc-bytes を引き算し ます。 c-connect-type サーバーが受信した接続の種類: Normal:Flash Player などのクライアントからの接続 Group:エッジサーバーとオリジンサーバーとの間の接続 Virtual:サーバー間の送信にグループ接続を使用した、エッジサーバーを経由したクライアント接続 x-sname ストリーム名 x-sname-query 再生またはパブリッシュの呼び出しで指定されたストリーム URI のクエリー部分。 x-suri-query x-sname-query と同じ x-suri-stem 複合フィールド:cs-uri-stem + x-sname + x-file-ext x-suri 複合フィールド:cs-uri-stem + x-sname + x-file-ext + x-sname-query x-file-name x-sname stream を示すファイルのフルパス x-file-ext ストリームタイプ(FLV、MP3 または MP4)。 x-file-size バイト単位のストリームサイズ x-file-length 秒単位のストリーム長 x-spos ストリームポジション(ミリ秒単位)。 cs-stream-bytes このフィールドは、サーバーからクライアントに送信されたストリームあたりのバイト数を示します。 ストリームあたりの使用帯域幅を算出するには、「unpublish」イベントの cs-stream-bytes から「publish」 イベントの cs-stream-bytes を引き算します。 sc-stream-bytes このフィールドは、クライアントからサーバーに送信されたストリームあたりのバイト数を示します。この値 は、サーバーからクライアントに送信された合計バイト数である sc-bytes よりも小さくできます。可能な場合 は、課金には sc-bytes を使用してください。 ストリームあたりの使用帯域幅を算出するには、「stop」イベントの sc-stream-bytes から「play」イベント の sc-stream-bytes を引き算します。 FLV 形式でエンコードされない MP3 のようなファイルをストリーミングした後は、sc-stream-bytes の値が xfile-size より大きくなる可能性があります。 注意:sc-stream-bytes の値は、QoS ByteCount プロパティの値と同じとは限りません。 x-service-name 接続を提供するサービス名(特定の接続の種類にのみ適用可能) x-sc-qos-bytes サービス品質のためにクライアントに送信されたバイト数 x-comment コメント x-eid Authorization プラグインが受信したイベント ID。このイベントは、auth.log ファイルでのみ表示されます。 このフィールドは、access.log ファイルでは空になっています。 x-sid ストリームの ID。この ID は、そのクライアントセッションでは一意ですが、セッション間では一意ではありま せん。。 x-trans-sname サーバーがトランジションしたストリームの名前(元のストリーム)。 最終更新日 2010/9/8 84 FLASH MEDIA SERVER 4.0 設定および管理ガイド 85 ログファイルの監視と管理 フィールド 説明 x-trans-sname-query サーバーがトランジションしたストリームのストリーム名のクエリー部分。 x-trans-file-ext サーバーがトランジションしたストリームのストリーム名のファイル拡張子部分。 x-plugin プラグイン名。このフィールドは許可(auth-)イベントでのみ使用することができます。 x-page-url クライアントの SWF ファイルが埋め込まれている Web ページの URL。 x-smax-rec-size 記録されるストリームの最大ファイルサイズ。 x-smax-rec-duration 記録されるストリームの最大期間。 x-trans-mode NetStream.play2() 呼び出しでクライアントが設定したトランジションモード。 x-soffset ストリームが再接続されたときに、ストリーミングを再開する場所がオフセット値によって示されます。 c-spos 「client-pause」イベントまたは「client-seek」イベントが記録されたときのクライアントのストリームポジ ション。 x-codec-type Authorization プラグインの E_CODEC イベントで取得されたフレームのコーデックタイプ。このイベントは、 auth.log ファイルでのみ表示されます。このフィールドは、access.log ファイルでは空になっています。 x-codec Authorization プラグインの E_CODEC_CHANGE イベントで取得された「x-codec-type」のコーデック値。 このイベントは、auth.log ファイルでのみ表示されます。このフィールドは、access.log ファイルでは空に なっています。 アクセスログのイベントステータスコード イベントステータスコードは HTTP 応答コードに基づいています。 フィールド 記号 ステータスコード 説明 connect pending status_continue 100 アプリケーションの認証を待っています。 disconnect status_admin_command 102 admin コマンドにより接続を解除されたクライア ント。 103 サーバーのシャットダウン(またはアプリケー ションのアンロード)により接続を解除されたク ライアント。 connect、publish、unpublish、 status_OK play、record、record stop、 stop 200 成功しました。 play、stop status_transition 210 ストリーム間のトランジションが発生しました。 connect status_unavailable 302 アプリケーションは現在使用できません。 connect、publish、play status_bad_request 400 不正な要求。無効なパラメーターか、クライアン トが未知のプロトコルを使用してサーバーに接続 しました。 connect、play、publish status_unauthorized 401 接続がアプリケーションスクリプトによって拒否 されました。またはアクセスがアプリケーション によって拒否されました。 connect status_forbidden 403 disconnect status_shutdown 接続が Authorization プラグインによって拒否さ れました。または URI が無効であるために拒否さ れました。 connect、play object_not_found 404 最終更新日 2010/9/8 アプリケーションまたはストリームが見つかりま せん。 FLASH MEDIA SERVER 4.0 設定および管理ガイド 86 ログファイルの監視と管理 フィールド 記号 ステータスコード 説明 play client_disconnect 408 クライアントが接続を解除したため、ストリーム は停止しました。 connect、publish status_conflict 409 リソースの制限を超過しました。または、スト リームが既にパブリッシュされています。 Authorization プラグインによって変更が行われ たことを示している場合もあります。 connect status_lic_limit_exceeded 413 ライセンス制限を超過しました。 play、publish unsupported_type 415 サポートされないメディアタイプです。 disconnect data_exceeded 416 メッセージキューが大きすぎます。クライアント の接続を解除します。 connect chunkstream_error 417 未知のデータ型を処理できません。 disconnect cannot_broadcast 418 クライアントにはブロードキャストする権利があ りません。 disconnect cannot_screenshare 419 画面共有ビデオを受信するためのライセンスが失 敗しました。 disconnect remote_link_closed 420 ダウンストリーム接続を閉じます。 connect process_msg_failed 422 クライアント接続が保留または閉じた状態にある ときは、受信メッセージを処理できません。 disconnect process_msg_exception 423 メッセージの処理中にエラーが発生しました。 disconnect process_remote_msg_failed 424 コマンドが発行された際に予期された応答があり ませんでした。 disconnect process_admin_msg_failed 425 admin コマンドが発行された際に予期された応答 がありませんでした。 disconnect process_rtmp_S2S_msg_failed 426 コマンドが発行された際に予期された応答があり ませんでした。 disconnect write_error 427 クライアントが接続されていないか、クライアン トが終了しました。データを書き込めません。 disconnect invalid_session 428 クライアント接続が無効です。非アクティブ状態 またはアイドル状態であるために閉じられました。 disconnect gc_client 429 ping 応答を取得できないか、クライアントが接続 されていない状態です。 disconnect remote_onstop 430 アップストリーム接続が閉じられました。 disconnect remote_on_client_disconnect 431 最後のクライアントの接続が解除されたので、 アップストリーム接続が閉じられました。 disconnect gc_idle_client 432 Flash Media Server の autoclose 機能により自 動的に接続が閉じられました。 disconnect swf_hash_fail 433 SWF 検証に失敗しました。 disconnect swf_hash_timeout 434 SWF 検証がタイムアウトしました。 disconnect encoding_mismatch_error 435 オブジェクトエンコードとの互換性がないので、 クライアントの接続は解除されました。 play object_not_found 438 クライアントが、動的ストリーミング中に存在し ないファイルを再生しようとしました。 disconnect、play server_internal_error 500 サーバー内部のエラーが発生しました。 connect bad_gateway 502 不正なゲートウェイ 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 87 ログファイルの監視と管理 フィールド 記号 ステータスコード 説明 connect service_unavailable 503 サービスは使用できません。例えば、アクセスモ ジュールによる認証を待つ接続が多すぎます。 disconnect js_disconnect 600 アプリケーションの接続が解除されました。 disconnect js_close_previous_client 601 ネットワーク接続が閉じられたか、再使用されま した。 disconnect js_exception 602 JS エンジンから未知の例外がスローされました。 disconnect js_chunkstream_error 603 無効なアプリケーションデータです。 disconnect js_debug_forbidden 604 アプリケーションがデバッグ接続を許可しません。 play js_gc_object 605 ~fcstreamjshook() クリーンナップ アプリケーションログ アプリケーションログファイル アプリケーションログには、アプリケーションインスタンスの動作に関する情報が記録されます。このログは、主にデバッ グ(アプリケーションインスタンスで発生した異常なイベントのロギング)のために使用されます。 デフォルトのアプリケーションログファイルは、application.xx.log です。これは、Flash Media Server のログディレクト リのサブディレクトリに格納されます。Flash Media Server のデフォルト設定では、アプリケーションインスタンスごとに 1 つのアプリケーションログが作成されます。アプリケーションフォルダーは、対応する仮想ホストのディレクトリに格納 されます。ファイル名の「xx」は、アプリケーションログのバージョンを示す 2 桁の数字です。最新のログは、 application.00.log に記録されています。 アプリケーションログのフィールド フィールド イベント 説明 date すべて 表示日付。 time すべて イベントの時刻 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド ログファイルの監視と管理 フィールド イベント 説明 x-pid すべて サーバープロセスの ID。 x-status すべて ステータスコード:コードは 10 文字の文字列で、重大度、カテゴリ、メッセージ ID を示しま す。 最初の 3 文字は次のように重大度を示します。 (w) = warning (警告) (e) = error (エラー) (i) = information (情報) (d) = debug (デバッグ) (s) = trace from server-side script (サーバーサイドスクリプトからのトレース) (_) = 不明 次の 3 文字がカテゴリを示します。すべてのカテゴリは 89 ページの「診断ログのステータスカ テゴリ」に記載されています。 最後の 4 文字はメッセージ ID を示します。すべてのメッセージ ID は 88 ページの「診断ログ」 に記載されています。 x-ctx すべて イベント依存コンテキストの情報 診断ログ 診断ログファイル 診断ログには、Flash Media Server の操作に関する情報(オペレーティングシステムによって記録される情報への追加情 報)が記録されます。このログは、主にデバッグ(Flash Media Server プロセスで発生した異常なイベントのロギング)の ために使用されます。 各プロセスの診断ログは、デフォルトではそれぞれ、master.xx.log、edge.xx.log、core.xx.log、admin.xx.log および httpcache.xx.log です。すべての診断ログは、Flash Media Server のログディレクトリに格納されます。Flash Media Server のデフォルト設定では、プロセスタイプごとに 1 つの診断ログが作成されます。ファイル名の「xx」は、ログのバー ジョンを示す 2 桁の数字です。 診断ログファイルに表示されるメッセージの一覧については、88 ページの「診断ログ」を参照してください。 診断ログのフィールド フィールド イベント 説明 date すべて イベントが発生した日付 time すべて イベントが発生した時刻 最終更新日 2010/9/8 88 FLASH MEDIA SERVER 4.0 設定および管理ガイド ログファイルの監視と管理 フィールド イベント 説明 x-pid すべて サーバープロセスの ID。 x-status すべて ステータスコード:コードは 10 文字の文字列で、重大度、カテゴリ、メッセージ ID を示しま す。 最初の 3 文字は次のように重大度を示します。 (w) = warning (警告) (e) = error (エラー) (i) = information (情報) (d) = debug (デバッグ) (s) = trace from server-side script (サーバーサイドスクリプトからのトレース) (_) = 不明 次の 3 文字がカテゴリを示します。すべてのカテゴリは 89 ページの「診断ログのステータスカ テゴリ」に記載されています。 最後の 4 文字はメッセージ ID を示します。 x-stx すべて イベント依存コンテキストの情報 診断ログのステータスカテゴリ カテゴリ 説明 257 TCService 258 TCServer 259 出席状況 260 Storage 261 ストリーミング 262 SMTP 263 アダプター 264 JavaScript 265 TCApplication 266 TCConnector 267 admin 268 SharedObject 269 設定 270 VirtualHost 271 SSL 最終更新日 2010/9/8 89 90 第 5 章:サーバーの管理 サーバーの円滑な実行を維持するために、定期的に管理タスクを実行します。 サーバーの起動と停止 Windows でのサーバーの起動と停止 サーバーのシャットダウンまたは再起動を行うには、次のいずれかの方法を使用します。 [ スタート ] メニューから Edge Server を起動する ❖ 次のいずれかの操作を行います。 • スタート/すべてのプログラム/ Adobe / Adobe Flash Media Server 4 / Start Adobe Flash Media Server 4 を選 択します。 • スタート/すべてのプログラム/ Adobe / Adobe Flash Media Server 4 / Start Adobe Flash Media Administration Server 4 を選択します。 [ スタート ] メニューから Edge Server を停止する ❖ 次のいずれかの操作を行います。 • スタート/すべてのプログラム/ Adobe / Adobe Flash Media Server 4 / Stop Adobe Flash Media Administration Server 4 を選択します。 • スタート/すべてのプログラム/ Adobe / Adobe Flash Media Server 4 / Stop Adobe Flash Media Server 4 を選択 します。 サービスウィンドウからのサーバーの起動、停止または再起動 1 スタート/コントロールパネル/管理ツール/サービスを選択します。 2 次のいずれかの操作を行います。 • サービスの一覧から「Flash Media Server(FMS)」を選択し、「停止」、「開始」または「再起動」をクリックしま す。 • サービスの一覧から「Flash Media Administration Server」を選択し、「停止」、「開始」または「再起動」をクリッ クします。 Linux でのサーバーの起動と停止 fmsmgr を使用した Flash Media Server の起動、停止または再起動 1 root ユーザーとしてログインします。 2 サーバーがインストールされているディレクトリに移ります。 3 シェルウィンドウを開いて、次のうちのいずれかを入力します。 • ./fmsmgr server start 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの管理 • ./fmsmgr server stop • ./fmsmgr server restart fmsmgr を使用した Administration Server の起動、停止または再起動 1 root ユーザーとしてログインします。 2 サーバーがインストールされているディレクトリに移ります。 3 シェルウィンドウを開いて、次のうちのいずれかを入力します。 • ./fmsmgr adminserver start • ./fmsmgr adminserver stop • ./fmsmgr adminserver restart コマンドラインを使用した Flash Media Server の起動、停止または再起動 1 * cd /<Flash Media Server のインストール先ディレクトリ > と入力します。 2 ./server [start | stop | restart] と入力します。 コマンドラインを使用した Administration Server の起動、停止または再起動 1 * cd /<Flash Media Server のインストール先ディレクトリ > と入力します。 2 ./adminserver [start | stop | restart] と入力します。 fmsmgr の使用の詳細については、99 ページの「Linux でのサーバーの管理」を参照してください。 サーバーステータスの確認 Windows イベントビューアでのサーバーイベントの表示 Windows イベントビューアを使用して、Flash Media Server の動作の追跡とサーバーアプリケーションのデバッグを行う ことができます。イベントビューアには、サーバーで生成されたイベントの一覧が表示されます。(サーバー上で直接操作す る場合は、次の手順が正しい手順となります。別の Windows コンピューターからイベントを表示するには、イベント ビューアを使用して、目的のサーバーへのリモート接続を開きます。) 1 Windows のスタートメニューで、設定/コントロールパネル/管理ツール/イベントビューアを選択します。 2 アプリケーションパネルを選択します。 3 Flash Media Server で生成されたイベントをダブルクリックして、詳細を表示します。 サーバーの状態の確認 FMSCheck は、サーバーステータスの診断と確定を行うために使用できるコマンドラインユーティリティプログラムです。 このツールは Windows と Linux の両方で利用できますが、使用する実行可能ファイルは異なっています。コマンドライン ツールとして、FMSCheck は、Cscript、bash、csh または Python などのお好みの言語を使用して、完全にスクリプト化 することができます。FMSCheck は、サーバーが実行されているかどうか、応答時間はどのくらいか、どの fmscore プロ セスが応答していないかなどの情報を提供します。テスト用のサイズの小さいビデオファイルが含まれています。このツー ルからの接続を受け付けるよう Users.xml ファイルを設定する必要があります(--allapps およびその依存コマンドを使用す るには、この設定が必要です)。 最終更新日 2010/9/8 91 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの管理 Flash Media Server に接続すると、ツールは以下の操作を行えるようになります。 • アプリケーションのすべてのインスタンスへの接続を確認します。 • それらのアプリケーションに接続することで、サーバーのすべてのアクティブなインスタンスを確認します。 • ストリームのパブリッシュおよび再生を行うことができます。 • アプリケーションで利用可能なサーバーサイドのストリームを再生できます。 注意:現在 FMSCheck は RTMP 接続のみをサポートしています。共有オブジェクトの確認は行いません。 FMSCheck のコマンドとオプション オプション 説明 --host <hostname> 必須。サーバーの接続先をプログラムに示します。例:--host localhost --port <number> ポート番号はオプションです。デフォルト値は 1935 です。例:--port 1935 --app <app> プログラムがアプリケーションに接続できるようにします。管理者はアプリケーションを指定す る必要があります。例:--app app1/inst1 --allapps Administration Server のアクティブなインスタンスに対してクエリーを実行し、アクティブな 各インスタンスへの接続を作成します。この場合、管理者は Administration Server にログイン するために、--auser、--apswd および -- ahostport オプションを使用する必要があります。管理者 は、このプログラムからの接続を受け付けるよう Users.xml を設定する必要があります。このコ マンドは完了までに時間がかかる可能性があります。タイムアウト値が適切であることを確認し てください。 --help FMSCheck の使用についてのヘルプを表示します。 --logfile <file> プログラムがファイルに応答を出力できるようにします。このオプションが指定されていない場 合、結果を取得することはできません。例:--logfile output.log --play <name> [start [duration]] プログラムにビデオファイルを再生するよう指示します。オプションは start および duration で す。 start および duration の値は正の数値または 0 にする必要があり、秒数を表します。start のデ フォルト値は any で、ファイルを頭から再生します。duration のデフォルト値は 1 秒です。ファ イル全体を再生する場合は all を指定できます。play コマンドと publish コマンドを同時に指定す ることはできません。 例:--play foo 10 5 --publish <name> <duration> [record|append] ファイルをサーバーにパブリッシュします。このコマンドは --pubfile と共に使用する必要があり ます。 duration パラメーターは必須です。正の数値、0 または all のみを使用できます。 record と append はいずれもオプションです。何も指定しなかった場合、デフォルトの動作は record になります。ファイルが既に存在し、record が使用されている場合、既存のファイルは 上書きされます。パブリッシュされたファイルは自動的に再生され、パブリッシュ操作が成功し たことを確認できます。例:--publish foo -1 --pubfile <file> ファイル名を指定します。このコマンドは --publish と共に使用する必要があります。クライアン トサイドにある入力ビデオファイルの名前、サーバーサイドに作成される出力ファイルの名前お よび継続時間を指定します。 例:--pubfile input.flv --publish output 10 最終更新日 2010/9/8 92 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの管理 オプション 説明 --parallel [<max>] プログラムが同時に複数のアプリケーションを再生できるようにします。このコマンドは -allapps と共に使用されます。複数のアプリケーションが存在する場合、テストは各アプリケー ションに対して順次実行されます(最初のアプリケーションに接続してテストを実行し、2 番目 のアプリケーションに接続してテストを実行するというようにテストが行われます)。max を指定 しない並列実行では、各アプリケーションのテストは並行して行われます。ただし、アプリケー ション数が多い場合、すべてのアプリケーションを並行して実行することはお勧めできません。 max の値を設定して、並行して実行できるアプリケーションの最大数を指定します。例えば、10 のテストを並行して実行するには、次のコマンドを使用します。 --parallel 10 テスト間に一時停止を挿入します。このコマンドは --parallel と共に使用されます。<sec> の値は --stagger <sec> 秒数で、デフォルト値は 1 秒です。stagger にとても長い時間(テストの時間より長い時間)を 指定した場合、実質的に順次モードで実行することになります。例:--stagger 2 認証などの特別な目的のために、独自の文字列を入力できるようにします。例: --query <" "> rtmp://host/app/inst?foo=abcd --timeout <sec> タイムアウト値を秒単位で指定します。プログラムがこの間隔内でサーバーから応答を受信しな い場合、エラーが返されます。 fmscheck -v バージョン文字列を出力します。 --auser <username> Administration Server ユーザーのユーザー名を指定します。例:--auser admin --apswd <password> Administration Server のパスワードを指定します。例:--apswd admin Administration Server のポート番号を指定します。コマンドラインでポート番号が指定されな --ahostport <port> い場合、デフォルトのポートは 1111 です。例:--ahostport 1111 Windows での使用例: • * fmscheck.exe --host localhost --app app1 --logfile output.txt • * fmscheck.exe --host localhost --app app1 --play foo 0 10 --logfile output.txt • * fmscheck.exe --host localhost --app app1 --pubfile foo.flv --publish bar 10 --logfile output.txt • * fmscheck.exe --host localhost --allapps --auser admin --apswd admin --parallel 10 --stagger 2 --timeout 100 logfile output.txt * fmscheck.exe の代わりに * ./fmscheck を使用すると Windows の例をすべて Linux に適用できます。 FMSCheck の戻りコード FMSCheck ツールの戻りコードは、ツール実行後の状態を示します。 コード ステータス 0 成功。 -1 コマンドライン引数が無効です。 -2 ファイルがみつかりません。 -3 接続が失敗しました。 -4 操作がタイムアウトしました。 -5 再生が失敗しました。 -6 パブリッシュが失敗しました。 -7 少なくとも 1 つのアプリケーションが失敗しました。 最終更新日 2010/9/8 93 FLASH MEDIA SERVER 4.0 設定および管理ガイド サーバーの管理 ビデオファイルの確認 サードパーティのツールで作成または変更された FLV ファイルの確認 サードパーティのツールを使用して、FLV ファイルの作成と変更を行うことができますが、ツールによっては、FLV 標準 に準拠しないファイルが作成されます。一般的な問題として、FLV ファイルの無効なタイムスタンプ、無効な onMetaData メッセージ、無効なメッセージヘッダーおよびオーディオとビデオの破損などが挙げられます。FLV ファイルを Flash Media Server にデプロイする前に、FLVCheck ツールを使用して FLV ファイルを分析できます。また、このツールでは、 ファイルの時間が正しく反映されるようにメタデータの追加または更新を行うことができます。このツールは、メタデータ が読み取り可能であることを確認し、正しい時間を指定して、FLV ファイルが Flash Media Server でシークできることを 確認します。このツールは Unicode ファイル名をサポートしています。 注意:FLVCheck ツールは、FLV ファイルのコンテンツの破損を修正しません。このツールは Duration および Can Seek To End メタデータフィールドをスキャンして、メタデータを修正します。その後、ツールは、サーバーのメタデータを ファイル内のデータにマージします。 他のビデオファイルの確認 Flash Media Server は、MPEG-4 ベースのコンテナ形式に格納されている H.264 でエンコードされたビデオと HE-AAC でエンコードされたオーディオの再生と記録をサポートしています。MPEG-4 標準のサブセットがサポートされます。すべ ての MP4 ファイルと Adobe F4V ファイルは、サポートされるサブセットに含まれています。 MPEG-4 ベースのコンテナ形式については、FLVCheck ツールを使用してサーバーがファイルを再生できることを確認し ます。 注意:FLVCheck ツールは、破損している H.264 でエンコードされたファイルの修正や MP4/F4V ファイルに対する修正 を行いません。 FLVCheck ツールを使用したビデオファイルの確認 FLVCheck ツールはコマンドラインプログラムで、実行可能ファイルの名前は flvcheck です。 1 オペレーティングシステムのコマンドプロンプトを開き、RootInstall/tools ディレクトリに移動します。 2 FLVCheck ツールを実行するには、次のようなシンタックスを使用します。 flvcheck [-option] <file ...> 例えば、2 つのファイルを確認するには、次のようなシンタックスを使用します。 flvcheck -f abc.flv ../test/123.flv 次の表では、利用できるコマンドラインのオプションを示しています。 オプション 説明 -f [ --file ] file ... 確認対象のビデオファイル(複数可)へのパスを指定します。相対パスを使用できます(円マー ク(\)は使用せず、スラッシュ(/)を使用してください)。 -v [--verbose] 詳細フラグを設定します。 -V [ --version ] バージョン情報を出力します。 -n [ --nobanner ] ヘッダーをオフにします。 -h [ --help ] オプションの説明と使用例を示します。 最終更新日 2010/9/8 94 FLASH MEDIA SERVER 4.0 設定および管理ガイド 95 サーバーの管理 オプション 説明 -d [ --duration ] FLVCheck がレポートするエラーの誤差を秒単位で指定します(デフォルトは 2 秒です)。 メタデータの検証時に、metadata_duration と actual_duration の絶対差を計算し、このコマン ドで指定されている誤差と比較します。この誤差を超えている場合、サーバーはメタデータの時 間が正しくないことを示す警告をログに記録します。この誤差を超えていない場合は、何もログ に記録されません。 正確な時間を取得するには、-d 0 を指定します。 テキスト出力ではなく、ステータスコードのみを返すように指定します。--help オプションは、 -q [ --quiet ] このオプションより優先されます。 -w [ --warnings] 警告を表示します。 -W [--warnings_as_errors] 警告をエラーとして処理します。 -s [ --fixvideostall ] ビデオの再生時の停滞を修正します(FLV のみ)。 -u [ --usage ] コマンドラインパラメーターの例や情報を表示します。 (FLV ファイルのみ)メタデータタグが破損した場合、メタデータを修正した、元の FLV ファイ -m [ --fixmeta ] ルの新しいコピーを、元のファイルと同じディレクトリに作成します(ファイルにエラーが含ま れていない場合は、バックアップファイルは作成されません) 。Duration および Can Seek To End メタデータフィールドのみが修正されます。 3 FLVCheck ツールは、FLV ファイルにエラーが検出されなかった場合はステータスコード 0 を返します。1 つ以上のエ ラーがある場合は、検出された無効なファイルの総数を示す正の数値を返します。コード -1 が返される場合、無効なコ マンドラインパラメーターが指定されています。 エラーと警告は、ログファイル(stdout)に記録されます。 4 (FLV ファイルのみ)メタデータエラーが原因で FLV ファイルからエラーが返された場合は、このツールを使用して問 題の修正を試みることができます。次の方法を試してください。 a -m オプションを使用して、ファイル内のメタデータを修正します。 flvcheck -m <file> [-quiet] [-help] b -d オプションを使用して、エラーの duration フィールドの誤差を変更します。メタデータの duration フィールドに は、数秒の誤差がある可能性があります。例えば、flvcheck -f abc.flv -d 5 では、メタデータの時間の許容誤差はプラス マイナス 5 秒となります。 他の種類のエラーを、FLVCheck ツールを使用して修正することはできません。MP4/F4V ファイルは、 FLVCheck ツールを使用して修正できません。 FLVCheck エラー 検出されたエラーは、Date(日付)、Time(時刻)、ErrorNumber(エラー番号)、ErrorMessage(エラーメッセージ)、 FileName(ファイル名)という形式で stdout ファイルに記録されます。考えられるエラー番号、エラーの種類およびエ ラーメッセージを以下に示します。 エラー番号 エラーの種類 -2 一般 エラーメッセージ Invalid file system path specified.(無効なファイルシステムのパスが指定されまし た。) -3 一般 File not found.(ファイルが見つかりません。) -4 一般 Cannot open file.(ファイルを開けません。) 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 96 サーバーの管理 エラー番号 エラーの種類 -5 一般 エラーメッセージ File read error.(ファイルの読み取りエラーです。) Flash Media Server でファイルを読み取れません。一部またはすべてのファイルのエン コーディングに、サポートされているコーデックとの互換性がないことを示しています。 -6 一般 Cannot create corrected file.(修正されたファイルを作成できません。) -m オプションセットを使用してツールを実行したが、メタデータが修正されたファイル を作成できない場合に、このエラーが発生します。 -7 FLV Invalid FLV signature.(無効な FLV の署名です。) -8 FLV Invalid FLV data offset.(無効な FLV データオフセットです。) -9 FLV Invalid FLV message footer.(無効な FLV メッセージフッターです。) -10 FLV Unrecognized message type.(認識できないメッセージタイプです。) -11 FLV Found backward timestamp.(過去のタイムスタンプが検出されました。) -12 FLV Unparsable data message.(解析できないデータメッセージです。) -13 MP4 File does not contain a movie box.(ファイルにムービーボックスが含まれていませ ん。) このエラーは MP4 ファイルが空の場合に発生します。 -14 MP4 File does not contain any valid tracks.(ファイルに有効なトラックが含まれていませ ん。) このエラーは、MP4 ファイルにサポートされていないコーデックでエンコードされた オーディオまたはビデオが含まれている場合に発生する可能性があります。 -15 MP4 Too many tracks.(トラックが多すぎます。)Maximum allowed is 64.(最大許容値は 64 です。) -16 MP4 Only one sample type allowed per track.(トラックごとに許可されるサンプルタイプ は 1 つだけです。) -17 MP4 Box is too large.(ボックスが大きすぎます。) -18 MP4 Truncated box.(ボックスが切り詰められました。)報告されたボックスの長さがファ イルの残りの長さよりも長くなっています。ファイルが切り詰められたか、報告された ボックスの長さが無効である可能性があります。 -19 MP4 Duplicate box.(ボックスが重複しています。) -20 MP4 Invalid box version.(無効なボックスのバージョンです。) -21 MP4 Invalid movie time scale.(無効なムービーのタイムスケールです。) -22 MP4 Invalid number of data entries in box.(ボックス内のデータエントリの数が無効で す。) -23 MP4 Invalid sample size.(無効なサンプルサイズです。) -24 MP4 Invalid chapter time.(無効な章時間です。) -25 MP4 Too many tag boxes. Max is 64.(タグボックスが多すぎます。最大数は 64 です。) -26 一般 File appears to be FLV with wrong extension.(ファイルは誤った拡張子を持つ FLV のようです。) -27 MP4 Unsupported DRM scheme.(サポートされない DRM スキームです。) 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 97 サーバーの管理 エラー番号 エラーの種類 エラーメッセージ -28 MP4 Error reading MP4 tables.(MP4 テーブルの読み取り中にエラーが発生しました。) -29 MP4 File contains unexpected movie fragments.(ファイルに予期しないムービーの断片 が含まれています。) -30 MP4 File contains out-of-order movie fragments.(ファイルに壊れたムービーの断片が含 まれています。) FLVCheck の警告 一般的に、警告は情報提供を目的としたものであり、致命的なエラーではありません。Flash Media Server は警告の原因と なったエラーを無視し、ビデオまたはオーディオファイルのロードおよび再生を続行しますが、再生に関する問題が発生す る可能性があります。警告は、Date(日付)、Time(時刻)、Warning Number(警告番号)、Warning Message(警告 メッセージ)、File Name(ファイル名)という形式で stdout ファイルに記録されます。 警告番号 警告の種類 メッセージ -100 一般 Metadata duration is missing or is incorrect.(メタデータの時間が見つからないか、ま たは正しくありません。) -101 FLV canSeekToEnd is false.(canSeekToEnd が false になっています。) -102 MP4 Unrecognized box.(認識できないボックスです。) -103 MP4 Found incomplete track.(不完全なトラックが検出されました。) -104 MP4 Found duplicate video track. Ignoring...(重複するデータトラックが検出されました。 無視します ...) -105 MP4 Found duplicate audio track. Ignoring...(重複するデータトラックが検出されました。 無視します ...) -106 MP4 Found duplicate data track. Ignoring...(重複するデータトラックが検出されました。 無視します ...) -107 MP4 Track has unsupported sample type.(トラックにサポートされていないサンプルタイ プが含まれています。) Flash Media Server はサポートされていないコーデックでエンコードされたトラックを 無視します(再生しません)。 -108 MP4 Invalid video codec.(無効なビデオコーデックです。) この警告は、トラックに無効なビデオコーデックが含まれていることを示します。Flash Media Server はこのトラックを再生できません。 -109 MP4 Invalid audio codec.(無効なオーディオコーデックです。) この警告は、トラックに無効なオーディオコーデックが含まれていることを示します。 Flash Media Server はこのトラックを再生できません。 -110 FLV Video may appear stalled due to lack of audio data.(オーディオデータがないのでビ デオが停滞しているように見えることがあります。) -111 MP4 File has unsupported metadata format.(ファイルにサポートされないメタデータの形 式が含まれています。) -112 MP4 Box has extraneous bytes at end.(ボックスの最後に余分なバイトが含まれています。) -113 FLV Video messages found but video flag not set.(ビデオメッセージが見つかりました が、ビデオフラグが設定されていません。) -114 FLV Audio messages found but audio flag not set.(オーディオメッセージが見つかりまし たが、オーディオフラグが設定されていません。) 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 98 サーバーの管理 警告番号 警告の種類 メッセージ -115 FLV Video flag set but no video messages found.(ビデオフラグが設定されていますが、 ビデオメッセージが見つかりません。) -116 FLV Audio flag set but no audio messages found.(オーディオフラグが設定されています が、オーディオメッセージが見つかりません。) -117 MP4 File is truncated. Will only be partially playable.(ファイルが切り詰められています。 部分的にしか再生できません。) -118 MP4 Track contains unsupported edit list.(トラックには、サポートされていない編集リス トが含まれています。) -119 FLV Missing FLV metadata.(FLV メタデータが見つかりません。) -120 MP4 Bad NellyMoser Frequency. Sample(s) skipped.(正しくない NellyMoser 周波数で す。サンプルはスキップされます。) -121 MP4 Invalid Track Extends Box.(無効なトラック拡張ボックスです。) -122 MP4 Track contains unsupported sample flags.(トラックには、サポートされていないサ ンプルフラグが含まれています。) エッジサーバーのキャッシュの消去 エッジサーバーのキャッシュからのファイルの削除 エッジサーバーはコンテンツを自動的に削除しないので、ディスク使用量を管理するため、使用されていないファイルを削 除する必要があります。エッジサーバーはファイルが使用されるたびに、ファイルのタイムスタンプを更新します。タイム スタンプを使用すると、キャッシュされたファイルがいつ使用されたかを確定できます。 Windows でのエッジサーバーのキャッシュの管理 エッジサーバーのキャッシュを週単位で消去するようにスケジュールされたタスクを作成できます。 1 キャッシュディレクトリを空にするための cache.bat ファイルを作成します。cache.bat ファイルに次のシンタックスを 使用して記述します。 del /Q /S <cache_directory>\*.* 2 cache.bat ファイルを実行し、キャッシュディレクトリのファイルが削除されていることを確認します。 ディレクトリ構造は保持され、エッジサーバーによってロックされているファイルは削除されません。これは想定された 動作です。 3 コントロールパネル/タスク/スケジュールされたタスクの追加を選択します。 4 実行する新しいファイルとして cache.bat を選択します。 5 この手順を各エッジサーバーに対して繰り返します。 Linux でのエッジサーバーのキャッシュの管理 1 キャッシュディレクトリを空にするための cache.sh というシェルスクリプトを作成します。cache.sh スクリプトに次の シンタックスを使用して記述します。 find <cache_directory> -name "*.flv" -exec rm-f{}\; find <cache_directory> -name "*.mp3" -exec rm-f{}\; find <cache_directory> -name "*.mp4" -exec rm-f{}\; 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 99 サーバーの管理 注意:スクリプトには任意のタイプのファイルを追加できます。 2 次のコマンドを実行し、スクリプトが実行可能であることを確認します。 $ chmod 700 cache.sh 3 cache.sh を実行し、キャッシュディレクトリ内の正しいファイルが削除されていることを確認します。 4 cron ユーティリティを使用し、cache.sh の実行スケジュールを設定します(cron ユーティリティの詳細については、 Linux ディストリビューションのドキュメントを参照してください)。 Linux でのサーバーの管理 Linux システム上で実行される Flash Media Server のサーバーおよびサービスの起動や停止などの基本的な管理タスクを実 行するには、fmsmgr ユーティリティを使用します。fmsmgr ユーティリティを使用できるのは、root ユーザーのみです。 次の表に記載されていない、ユーザーの追加やアプリケーションステータスの確認などのタスクについては、 Administration Console を使用します。root ユーザーが fmsmgr ユーティリティを使用して Flash Media Administration Server を起動してからでないと、他のユーザーは Administration Console を使用できません。Administration Console は、root ユーザーでなくても使用できます。 注意:同時に複数の Flash Media Server サービスを実行することはサポートされていません。 シンタックス fmsmgr server <service_name> <cmd> <service_name> パラメーターを使用するコマンドの場合、<service_name> を指定しないと、コマンドはインストール時に選 択したサーバーの名前で実行されます。サーバーのデフォルトの名前は fms です。<service_name> が存在しない場合、コマン ドは失敗します。 コマンド 説明 fmsmgr adminserver start|stop|restart Flash Media Administration Server を起動、停止または再起動します。 fmsmgr server <service_name> start|stop|restart Flash Media Server サービスの起動、停止または再起動を行います。 fmsmgr clearautostart Flash Media Administration サービスを手動で起動するように設定します。 fmsmgr list Administration のサービスのほかインストールされているすべてのサービスを、現在実行 されているサービスについての追加情報と共に、一覧表示します。 fmsmgr remove fmsmgr テーブルから Flash Media Server のサービスを削除します。サーバーのサービス を削除すると、それに対応する Administration のサービスも削除されます。 警告:サーバーのサービスをアンインストールする場合にのみこのコマンドを使用します。 インストールされたファイルを削除するには、手動で行う必要があります。 fmsmgr add <service_name> <install_dir> Flash Media Server サービスを fmsmgr テーブルに追加します。<service_name> が既に fmsmgr テーブルに表示されている場合、古いエントリは新しいエントリで更新されます。 <install_dir> パラメーターは、Flash Media Server をインストールした場所の絶対ディレ クトリパスです。 fmsmgr setadmin <service_name> デフォルトの Administration サービスを変更します。 Administration サービスの名前は、Flash Media Server サービスの名前と同じです。イ ンストールした Administration サービスは、1 つ以上のサーバーを管理するために使用で きます。一度に 1 つの Administration サービスしか実行できません。 fmsmgr getadmin デフォルトの Administration サービスの名前を取得します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 100 サーバーの管理 コマンド 説明 fmsmgr setautostart<service_name> Flash Media Server サービスがシステムの起動時に自動的に起動するように設定します。 fmsmgr clearautostart <service_name> 名前付きのサービスがシステムの起動時に自動的に起動するように、一連のサービスから 削除します。 fmsmgr suggestname fmsmgr テーブルに存在しないサービス名を提示します。 最終更新日 2010/9/8 101 第 6 章:Administration API の使用 Administration API の使用 Administration API について Administration API を使用して、RTMP または RTMPE 経由の Adobe Flash Player や Adobe AIR クライアントから、 または HTTP 経由の Web クライアントから、サーバーを監視、管理および設定します。Flash Media Server Administration Console は Administration API を使用して構築されています。Administration API については、 『Adobe Flash Media Server Administration API Reference』に詳しく説明されています。 次に、Administration API を使用するための重要なヒントを示します。 • Adobe Flash Media Server と Flash Media Administration Server の両方を実行しておく必要があります。 • このマニュアルでは、Administration Server 用のデフォルトポート番号(1111)が変更されていないことを前提とし て作成されています。ポート番号を変更した場合は、すべての使用例において有効なポート番号を使用してください。 • 任意のパラメーターを指定しない場合は、メソッドによってはデフォルト値が使用される可能性があります。例えば、 scope パラメーターに仮想ホストを指定しない場合は、Flash Media Server にログオンしたときに接続している仮想ホス ト上でコマンドが実行されます。 • デフォルトでは、管理者は「_defaultRoot_」アダプターにログオンします。デフォルト以外のアダプターが割り当てら れている仮想ホストにログインする場合、仮想ホストの管理者はアダプター名を指定する必要があります。例えば、アダ プター _secondAdaptor_ 上の仮想ホストに(NetConnection を使用した RTMP 経由で)ログオンする際、管理者 JLee はメソッド呼び出しで管理者のユーザー名パラメーターとして、「_secondAdaptor_/JLee」と入力します。 HTTP 経由での Administration API メソッド呼び出しに対する権限の設定 注意:RTMP 経由でのメソッド呼び出しでは権限を設定する必要はありません。 1 RootInstall/conf フォルダーにある fms.ini ファイルを開きます。 2 FUSERS.HTTPCOMMAND_ALLOW パラメーターが true に設定されていることを確認します。 3 RootInstall/conf フォルダーにある Users.xml ファイルを開きます。 4 <Allow> エレメントで、メソッド名をカンマで区切ったリストで入力し、HTTP 要求が Administration API 呼び出し を実行できるようにします。例えば、次のコードは ping() および changePswd() メソッドを可能にします。 <AdminServer> <HTTPCommands> <Enable>${USERS.HTTPCOMMAND_ALLOW}/Enable> <Allow>ping,changePswd</Allow> <Deny>All</Deny> <Order>Deny,Allow</Deny> </HTTPCommands> </AdminServer> 注意:Users.xml ファイルには権限をさらに細かく制御できる追加の XML エレメントがあります。詳細については、 107 ページの「XML 設定ファイルの参照」を参照してください。 5 ファイルを保存して、Flash Media Administration Server を再起動します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration API の使用 HTTP 経由での Administration API メソッドの呼び出し 1 Flash Media Administration Server が実行されていることを確認します。 2 ブラウザーウィンドウを開き、アドレスバーに次のように入力します。 http://localhost:1111/admin/ping?auser=username&apswd=password Web ブラウザーが Flash Media Server と別のコンピューターにあるときは、localhost の代わりにサーバーのアドレスを 使用します。fms.ini ファイル内の管理者のユーザー名とパスワードを置き換えます。 注意:HTTP 要求を送信できる任意の言語で Administration API 呼び出しを作成できます。この例では、最もシンプ ルなクライアントであり、テスト目的にふさわしいため、Web ブラウザーを使用しています。 3 サーバーは、XML 形式の結果をブラウザーに送信します。 <?xml version="1.0" encoding="utf-8" ?> <result> <level>status</level> <code>NetConnection.Call.Success</code> <timestamp>10/3/2007 05:31:01 PM</timestamp> </result> HTTP 要求文字列の作成 Administration API の多くは、auser および apswd のほかにも 1 つ以上のパラメーターを使用すると想定しています。 HTTP 要求で渡されるパラメーターは、次の規則に準拠する必要があります。 • 文字列でパラメーターを指定します。例えば、次のコードは addAdmin() メソッドを呼び出します。 http://localhost:1111/admin/addAdmin?auser=adminname&apswd=adminpassword&username="joe"&password="pass 123"&vhost="_defaultRoot_/foo.myCompany.com" • 文字列は、引用符で囲まれたリテラルとして渡されます。一重引用符(')または二重引用符(")のどちらを使用しても かまいません。 "Hello World" 'String' 唯一の例外は、パラメーター auser と apswd で、これらは引用符なしで渡される必要があります。 • 数字は、整数または浮動小数点リテラルとして渡されます。 245 1.03 -45 注意:アリケーション名に数値が使用されている場合、メソッド reloadApp() および unload App() が正常に動作するよう に、アプリケーション名を引用符(" ")で囲む必要があります。 • 配列は、角カッコで囲まれたカンマ区切りの値として渡されます。 [1,2,3,4] ['abcd',34,"hi"] [10,20,[31,32],40] • オブジェクトは、インラインオブジェクトリテラルとして渡されます。 {foo:123,bar:456} {user:"Joe",ssn:"123-45-6789"} 最終更新日 2010/9/8 102 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration API の使用 RTMP または RTMPE 経由での Administration API メソッドの呼び出し RTMP または RTMPE 経由で Administration API を呼び出すには、Flash Player または AIR クライアントが必要です。 注意:RTMPE 経由で Administration API を呼び出すには、以下の説明に従いますが、例の NetConnection.connect() 呼び 出しのプロトコルを RTMPE に変更してください。 1 クライアントアプリケーションで Flash Media Administration Server への NetConnection を作成します。3 つのパラ メーターを使用して、Administration Server の URI、管理者のユーザー名および管理者のパスワードを渡します。 サーバーに接続できるのは、Users.xml 設定ファイルに定義されている有効な管理者のみです。 次のコードは、ユーザー名が MHill でパスワードが 635xjh27 である管理者が localhost 上のサーバーに接続する NetConnection を作成します。 ncAdmin = new NetConnection(); ncAdmin.connect("rtmp://localhost:1111/admin", "MHill", "635xjh27"); 注意:仮想ホストに接続する場合は、仮想ホストのドメイン名または IP アドレスを URI の一部として指定します。例え ば、rtmp://www.myVhost.com/admin:1111 のようになります。 2 NetConnection.call() メソッドを呼び出し、そのメソッドに Administration API メソッド、応答オブジェクト(必要に 応じて)およびパラメーター(必要に応じて)を次のように渡します ncAdmin.call("getAppStats", new onGetAppStats(), "vod"); getAppStats() メソッドはサーバー上で実行中のアプリケーションのパフォーマンスデータを返します。応答オブジェクト onGetAppStats() はこの呼び出し結果をキャプチャします。vod は統計の取得元であるアプリケーションインスタンスの 名前です。 3 Administration API メソッドで返される情報オブジェクトを処理するための関数を定義します。この例では onGetAppStats() です。 ncAdmin.call("getAppStats", new onGetAppStats(), appName.text); ... function onGetAppStats(){ this.onResult = function(info){ if (info.code != "NetConnection.Call.Success"){ outputBox.text = "Call failed: " + info.description; } else { outputBox.text = "Info for "+appName.text+ " returned:" + newline; printObj(info, outputBox); } } } このデータは情報オブジェクト内のハンドラー関数に返されます。すべての情報オブジェクトには、level、code および timestamp プロパティが含まれます。一部の情報オブジェクトには、data プロパティ(通常、オブジェクトまたは配列 内に戻り値のデータを含む)や、通常、エラーに関する情報を提供する description および details プロパティが含まれ ます。 最初の Flash アプリケーションの作成 この節では、getAppStats メソッドの呼び出しを行う単純な Flash アプリケーションのコードを紹介します。 RTMP 経由で Administration API を呼び出すには、Flash Player または AIR クライアントが必要です。次のサンプルは Flash で作成しています。 最終更新日 2010/9/8 103 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration API の使用 注意:ActionScript 1.0、ActionScript 2.0 または ActionScript3.0 で記述されたアプリケーションから Administration API を呼び出すことができます。 1 Flash では、次の要素を使用してアプリケーションを生成します。 • appName という名前の入力テキストフィールド • button_btn という名前のボタン • outputBox という名前の複数行の動的なテキストフィールド • outputBox テキストフィールドに付属するスクロールコンポーネント 注意:これは Flash Media Server アプリケーションなので、RootInstall\applications ディレクトリに、そのアプリ ケーションの名前を持つアプリケーションディレクトリを作成する必要があります。 2 Flash ファイルのフレーム 1 に次のコードを入力します。 /** Establishes the connection to Flash Media Server **/ ncAdmin = new NetConnection(); // Replace admin_name and admin_pass with your // administrator name and password. ncAdmin.connect("rtmp://localhost:1111/admin","admin_name","admin_pass"); /** Makes the API call, for example, "getAppStats" **/ function doGetAppStats() { function onGetAppStats(){ this.onResult = function(info){ if (info.code != "NetConnection.Call.Success"){ outputBox.text = "Call failed: " + info.description; } else { outputBox.text = "Info for "+appName.text+ " returned:" + newline; printObj(info, outputBox); } }; } // Calls the getAppStats() API on the name of application // in the input text field // places the response in the onGetAppStats funtion ncAdmin.call("getAppStats", new onGetAppStats(), appName.text); } function printObj(obj, destination){ for (var prop in obj) { destination.text += "\t"; destination.text += prop + " = " + obj[prop] + newline; if (typeof (obj[prop]) == "object") { // recursively call printObj printObj(obj[prop], destination); } } } button_btn.onRelease = function(){ doGetAppStats(); } 3 このサンプルアプリケーションを実行する前に、別の Flash Media Server アプリケーションを起動します。 4 Administration Console を開き、手順 3 で起動したアプリケーションが実行中であることを確認します。 5 サンプルの Flash アプリケーションを実行し、入力テキストフィールドに手順 3 で起動した アプリケーションの名前を 入力します。 最終更新日 2010/9/8 104 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration API の使用 この例では、NetConnection クラスを使用して Flash Media Server への単一の要求を行います。自動的に更新される永続 的な接続(Administration Console など)を作成する場合、NetStream クラスを使用して NetConnection を介したスト リーム接続を作成できます。 Flex での最初のアプリケーションの作成 Flex で作成された次のアプリケーションは、HTTPService クラスを使用して Flash Media Server の Administration API を呼び出します。このアプリケーションは、getAppStats メソッドを呼び出し、TextArea コントロールへの結果を出力しま す。 この例をコンパイルして実行する前に、要求パラメーターに admin ユーザー名とパスワードを追加する必要があります。 例を実行する場合は、TextInput コントロールにアプリケーション名を入力し、「Get App Stats」ボタンをクリックしま す。デフォルトアプリケーションには「live」と「vod」が含まれますが、サーバー上で作成した任意のアプリケーションの 名前を使用できます。 <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Declarations> <s:HTTPService id="myService" url="http://localhost:1111/admin/getAppStats" method="GET" resultFormat="e4x" result="myServiceResultHandler()"> <s:request xmlns=""> <!-- Replace these with your admin username and password. --> <auser>your_admin_username</auser> <apswd>your_admin_password</apswd> </s:request> </s:HTTPService> </fx:Declarations> <fx:Script> <![CDATA[ private function myServiceResultHandler():void { outputBox.text = myService.lastResult.toString(); } private function doButtonClick():void { /* Add the appName parameter to the request. */ /* Examples include "vod" and "live". */ myService.request.appName = appName.text; myService.send(); } ]]> </fx:Script> <s:layout> <s:VerticalLayout paddingTop="10" paddingLeft="10"/> </s:layout> <s:Label text="Enter an app name (e.g., live or vod):" fontSize="14" fontWeight="bold"/> <s:HGroup> <s:TextInput id="appName" width="259"/> <s:Button id="button_btn" label="Get App Stats" click="doButtonClick()"/> </s:HGroup> <s:Label text="App Stats:" fontSize="14" fontWeight="bold"/> <s:TextArea id="outputBox" height="800" width="359"/> </s:Application> このアプリケーションは、Flex 4 用に書かれました。 最終更新日 2010/9/8 105 FLASH MEDIA SERVER 4.0 設定および管理ガイド Administration API の使用 呼び出しが成功した場合は、getAppStats メソッドが次のような結果を返します。 <result> <level>status</level> <code>NetConnection.Call.Success</code> <timestamp>6/30/2010 2:42:21 PM</timestamp> <data> <launch_time>6/30/2010 2:42:03 PM</launch_time> <up_time>17</up_time> <bw_in>17060</bw_in> <bw_out>17501</bw_out> <bytes_in>290075</bytes_in> <bytes_out>271130</bytes_out> <msg_in>202</msg_in> <msg_out>61</msg_out> <msg_dropped>0</msg_dropped> <total_connects>2</total_connects> <total_disconnects>0</total_disconnects> <connected>2</connected> <normal_connects>2</normal_connects> <virtual_connects>0</virtual_connects> <group_connects>0</group_connects> <service_connects>0</service_connects> <service_requests>0</service_requests> <admin_connects>0</admin_connects> <accepted>2</accepted> <rejected>0</rejected> <total_instances_loaded>1</total_instances_loaded> <total_instances_unloaded>0</total_instances_unloaded> <swf_verification_attempts>0</swf_verification_attempts> <swf_verification_exceptions>0</swf_verification_exceptions> <swf_verification_failures>0</swf_verification_failures> <swf_verification_unsupported_rejects>0</swf_verification_unsupported_rejects> <swf_verification_matches>0</swf_verification_matches> <swf_verification_remote_misses>0</swf_verification_remote_misses> <cores> <_0> <pid>15720</pid> <core_id>0</core_id> </_0> </cores> <server_bytes_in>0</server_bytes_in> <server_bytes_out>0</server_bytes_out> </data> </result> 最終更新日 2010/9/8 106 107 第 7 章:XML 設定ファイルの参照 RootInstall/conf ディレクトリ内の設定ファイルを編集してサーバーを設定します。 重要:一部の XML エレメントについては、設定の際に必ずアドビサポートに連絡してください。これらのエレメントには、 「重要」という注意書きが付けられています。 関連項目 13 ページの「設定ファイルの編集」 設定ファイルを 3.5 から 4.0 に変更します。 Flash Media Server のバージョン 3.5 からバージョン 4 にアップグレードする場合、XML 設定ファイルの変更点について 知っておく必要があります。 Adaptor.xml ファイル変更 <HostPort> エレメントのデフォルト値は変更されています。"${ADAPTOR.HOSTPORT}" の rtmfp 属性を含むようになりま した。バージョン 3.5 では、<HostPort> エレメントは次のように表示されます。 <HostPort name="edge1" ctl_channel="localhost:19350">${ADAPTOR.HOSTPORT}</HostPort> バージョン 4 では、<HostPort> エレメントは次のように表示されます。 <HostPort name="edge1" ctl_channel="localhost:19350" rtmfp="${ADAPTOR.HOSTPORT}">${ADAPTOR.HOSTPORT}</HostPort> <HostPortList><Allow> エレメントは、クライアントがすべてのホストからサーバーに接続できることを指定するようになり ました。 バージョン 3.5 では、<Allow> エレメントは次のように表示されます。 <Allow></Allow> バージョン 4 では、<Allow> エレメントは次のように表示されます。 <Allow>all</Allow> <RTMFP> エレメントは新規です。RTMFP は安全で UDP ベースの RTMP の後継プロトコルです。このエレメントには、 次のサブエレメントが含まれています。 • <UpdateStatsInterval> — ユニキャスト統計が RTMFP 接続向けに更新される頻度を定義します。 • <KeepAliveTime> — クライアントがサーバーとの接続や他のピアとの接続に際して送信するキープアライブの時間間隔 を定義します。 • <ForwardIHelloMode> — RTMFP が転送された ihello を処理するメソッドを定義します。 • <Core> — コアプロセスがバインドし、リッスンし、RTMFP 接続を受諾できる UDP ポートを定義します。 <MaxPipelinedRequests> エレメントは新規です。このエレメントを使用して、Flash Player がパイプラインを許可する要求 の最大数を設定します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Application.xml ファイルの変更 <JSEngine> エレメントは、<ScriptEngine> に名前が変更されました。 <Distribute> エレメントのデフォルト値は、inst になりました。バージョン 4 より前は、Instances でした。 <ScriptEngine><AdaptorId> エレメントは新規です。このエレメントを使用して、スクリプトのコンパイルおよび実行に使用 するスクリプトエンジンアダプターの ID を指定します。デフォルト値は as1 です。 <ScriptEngine><FileObject> エレメントは、override 属性を指定するようになりました。デフォルト値は「no」です。 <Security> エレメントは新規です。このエレメントには、次のサブエレメントが含まれています。 • <MaxUrlLength> — SSAS(server-side ActionScript)から開始された NetConnection 用に指定された RTMP URL の許容最大長を定義します。 • <RPC> — クラスごとの RPC(Remote Procedure Call)用のホワイトリストを定義します。 <StreamMetaGCInterval> エレメントは新規です。このエレメントは、ストリームのメタデータを収集するガベージコレク ションの間隔を指定します。 <StreamManager><Live><AssumeAbsoluteTime> エレメントは新規です。このエレメントは、受信ストリームに絶対時計に 基づいたタイムスタンプがあるかどうかを指定できます。 <FilterNonKeyFrames> エレメントは新規です。このエレメントは、対応するビデオキーフレームなしで到着した非キービデ オフレームをフィルターするか、宛先クライアント、サーバーまたは記録ストリームにダウンストリーム送信するかを決定 します。 Logger.xml ファイルの変更 Access イベント <Events> エレメントは、デフォルトで filenametransform を除くすべてのイベントを記録するように設定されます。記録でき る Access イベントのリストは、次を含むように拡張されています。 • アクション • コーデック • debug.approved • debug.pending • loadsegment • registry.start • registry.stop • service.start • service.stop <Fields> エレメントは変更されています。そのフィールドをリストする代わりに、タグのコンテンツは単に「*」になりまし た。これは、当てはまるすべてのフィールドが Access イベントごとにデフォルトで記録されることを意味します。 バージョン 3.5 では、<Fields> エレメントのコンテンツは次のように表示されます。 <Fields>x-category;x-event;date;time;x-pid;c-ip;cs-bytes;sc-bytes;x-sname;sc-stream-bytes;x-file-size;xfile-length;x-status</Fields> バージョン 4 では、<Fields> エレメントは次のように表示されます。 <Fields>*</Fields> 最終更新日 2010/9/8 108 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Access イベントごとに記録できるフィールドのリストも、次のフィールドを含むように拡張されました。 • c-proto-ver • c-spos • x-codec_type • x-codec_value • x-eid • x-forwarded-for • x-soffset • x-trans-mode AuthEvent イベント 記録できる AuthEvent イベントのリストは、次のイベントを含むように拡張されました。 • client-pause • client-seek • client-unpause • コーデック • connect-continue • connect-pending • debug.approved • debug.pending • play-continue • publish-continue • registry.start • registry.stop • service.start • service.stop • server-start • server-stop • start-transmit • stop-transmit • swf-verify • swf-verify-complete • unpause • vhost-start • vhost-stop 次の AuthEvent イベントが削除されています。 • codecchange 最終更新日 2010/9/8 109 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 AuthEvent イベントごとに記録できるフィールドのリストも、次のフィールドを含むように拡張されました。 • c-proto-ver • c-spos • x-codec_value (以前は x-codec) • x-cpu-load • x-forwarded-for • x-mem-load • x-plugin • x-sc-qos-bytes • x-sid • x-soffset • x-suri • x-suri-query • x-suri-stem • x-trans-file-ext • x-trans-mode • x-trans-sname • x-trans-sname-query Server.xml ファイルの変更 <Security> エレメントは新規です。このエレメントには、次のサブエレメントが含まれています。 • <VirtualDirectoryForFile> − File オブジェクトの仮想ディレクトリマッピングを有効にします。 • <MaxUrlLength> — RTMP および SWF URL の許容最大長を定義します。 • <LogInLimits> — admin ログイン試行の失敗回数および復旧時間の長さを指定します。 <ResourceLimits><FLVCache><FilterNonKeyFrames> エレメントは新規です。このエレメントは、対応するビデオキーフ レームなしで到着した非キービデオフレームをフィルターするか、記録されるストリームモジュールに送信するかを決定で きます。 <ResourceLimits><RecBuffer><AllowedVideoLag> エレメントのデフォルト値が変更されました。以前は 5 秒でしたが、現在 は空欄です。これにより、サーバーは、遅延がパブリッシュ元のバッファーに一致するように自動的に設定できます。 <OtherAutoBufferReadSize> エレメントのデフォルト値は、10240 になりました。<MaxAudioSampleDescriptions> エレメン トのデフォルト値は、20 になりました。 <ResourceLimits><Connector><RTMP><EnableAggMsgs> エレメントは新規です。パフォーマンス向上のために、メッセー ジを組み合わせて集約メッセージにすることができます。 <Streams><StreamAdaptors> エレメントは新規です。このエレメントは、特定のストリーム接頭辞に対してロードするライ ブラリを指定します。 <Server><ScriptAdaptors> エレメントは新規です。このエレメントは、アダプター ID 用にロードするライブラリを指定でき ます。 最終更新日 2010/9/8 110 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Users.xml ファイルの変更 変更なし。 Vhost.xml ファイルの変更 変更なし。 Adaptor.xml ファイル Adaptor.xml ファイルは、各ネットワークアダプターのための設定ファイルです。この設定ファイルでは、アダプターに よって使用できるスレッド数、アダプターがバインドする通信ポート、接続を受け付ける IP アドレスまたはドメインを確定 します。 また、アダプターごとに異なる電子証明書を使用したい場合は、Adaptor.xml ファイルで SSL を実装することができます。 各アダプター専用のディレクトリが、サーバーの conf ディレクトリ内にあります。このディレクトリの名前は、アダプター の名前です。各アダプターディレクトリには、Adaptor.xml ファイルを含める必要があります。例えば、インストール時に サーバーに含まれるデフォルトのアダプターは _defaultRoot_ であり、そのディレクトリは conf/ ディレクトリにありま す。アダプターの設定を変更するには、Adaptor.xml ファイル内の該当するエレメントを編集します。 Adaptor.xml ファイルのエレメント構造とデフォルト値については、RootInstall/conf/_defaultRoot_/Adaptor.xml ファイルを参照してください。 Adaptor ルートエレメント。Adaptor.xml ファイル内のすべてのエレメントを格納しています。 Allow サーバーに接続可能なクライアントのホスト名、ドメイン名、IP アドレスの全部または一部をカンマで区切って指定したリ スト。 例 <Allow>foo.yourcompany.com, adobe.com, 10.60.1.133, 10.60</Allow> 関連項目 Deny、Order Deny サーバーに接続できないクライアントのホスト名、ドメイン名、IP アドレスの全部または一部をカンマで区切って指定した リスト。 例 <Deny>foo.yourcompany.com, adobe.com, 10.60.1.133, 10.60</Deny> 関連項目 Allow、Order 最終更新日 2010/9/8 111 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Edge コンテナエレメント。 HTTP トンネリングに対して設定するエッジを指定するエレメントを格納しています。エッジは HostPortList コンテナの HostPort エレメントで定義します。各エッジには、異なる HTTPTunnel 設定を指定できます。 属性 name エッジを特定する名前。HostPort エレメントで指定された名前を使用します。 含まれるエレメント Enable、IdlePostInterval、IdleAckInterval、MimeType、WriteBufferSize、SetCookie、Redirect、NeedClose、 Enable HTTP トンネリング接続を許可するかどうかを指定します。 Enable エレメントに使用可能な値は以下のとおりです。 値 説明 true すべての HTTP トンネリング接続を許可します。これがデフォルト値です。 false すべての HTTP トンネリング接続を拒否します。 http1.1only HTTP 1.1 トンネリング接続のみを許可します。 keepalive HTTP 1.1 または HTTP 1.0 のキープアライブ接続を許可します。 重要:1 つのポートを使用できるアプリケーションの数は 1 つだけです。例えば、HTTP トンネリングでポート 80 を使用 するように Flash Media Server を設定した場合、Web サーバーはポート 80 を使用できません。 例 <Enable>true</Enable> 関連項目 IdlePostInterval、IdleAckInterval、MimeType、WriteBufferSize、SetCookie、Redirect、MimeType, EnableAltVhost クエリパラメーター rtmp://host1/app/?_fcs_vhost=host2 として RTMP URL 内で代替の仮想ホストを指定できるかどう かを特定します。これは、常にデフォルトでオンになる管理者の接続には適用されません。デフォルト値は false です。 <EnableAltVhost>false</EnableAltVhost> 関連項目 HTTPTunnel、RTMP、SSL Host 不明の要求を外部サーバーへリダイレクトします。 関連項目 Redirect 最終更新日 2010/9/8 112 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 HostPort アダプターがバインドする IP アドレスとポートを指定します。アダプターを複数の IP アドレスにバインドする場合は、各 IP アドレスの HostPort エレメントを追加します。形式は、IP:port,port,...,port です。すべての IP アドレスにバインドする場 合は、コロンの前に何も指定しません。 このエレメントは、RootInstall/conf/fms.ini ファイル内で ADAPTOR.HOSTPORT パラメーターとして公開されます。デ フォルト値は :1935,80,-443 です。この値は、すべての IP アドレスについてポート 1935、80 および 443 でバインドするよう にアダプターに指示しています。ここでは、ポート 443 が RTMPS 接続のみを受信するセキュアポートとして指定されてい ます。 ポート番号の割り当てにおいては、次のことに留意します。 • 複数のアダプターに同じ IP:port ペア上でリッスンするよう指示する可能性があります。別のプロセスでも同じ IP:port ペ アにバインドしようとする場合には、コンフリクトが生じます。このコンフリクトを解決するため、指定した HostPort にバインドしようとする最初のアダプターがこのペアを使用できるようにします。Flash Media Server は、指定した IP:port が既に使用されていることを示す警告を、アクセスログファイルに記録します。 • 1 つのポートを使用できるアプリケーションの数は 1 つだけです。例えば、HTTP トンネリングでポート 80 を使用する ように Flash Media Server を設定した場合、Web サーバーはポート 80 を使用できません。 属性 name この HostPort エレメントを特定する名前。複数の HostPort エレメントが存在する場合、各エレメントは異なる name を持つ必要があります。 ctl_channel FMSEdge(Linux では fmsedge)プロセスがリッスンする内部ポート。FMSCore プロセス(Linux では fmscore)が起動すると、制御チャネルを確立するためにこの内部ポート上で FMSEdge プロセスに接続します。各 HostPort エレメントは、FMSEdge プロセスに対応します。複数の HostPort エレメントが存在する場合、各エレメントは異 なる ctl_channel を持つ必要があります。 例 次の HostPort 値は、IP アドレス 127.0.0.1 についてポート 1935、80 および 443 でバインドするようにアダプターに指示し ています。ここでは、ポート 443 が RTMPS 接続のみを受け付けるセキュアポートとして指定されています(ポートがセ キュアであることを示すには、ポート番号の前にマイナス符号を指定します)。ポート 1935 または 80 への RTMPS 接続の 試行は成功しません。サーバーが完了することのできない SSL ハンドシェイクを、クライアントが実行しようとするためで す。同様に、クライアントが完了することのできない SSL ハンドシェイクをサーバーが実行しようとするため、ポート 443 への通常の RTMP 接続は失敗します。 <HostPort>127.0.0.1:1935,80,-443</HostPort> HostPort 値にコロンが含まれない場合、またはポートの指定されていないコロンが存在する場合、そのデータは IP アドレ スと見なされ、ポート 1935 にバインドされます。次の値は、ポート 1935 で IP 127.0.0.1 にバインドするようアダプターに 指示しています。 <HostPort>127.0.0.1</HostPort> <HostPort>127.0.0.1:</HostPort> 関連項目 HostPortList HostPortList コンテナエレメント。 このコンテナ内のエレメントは、このアダプターに関連付けられている HostPort エレメントを一覧表示します。 最終更新日 2010/9/8 113 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <HostPortList> <HostPort name="edge1" ctl_channel=":19350">${ADAPTOR.HOSTPORT}</HostPort> <HostPort name="edge2" ctl_channel=":19351">:1936,-444</HostPort> </HostPortList> 含まれるエレメント HostPort HTTPIdent クライアントからの HTTP ID 要求に応答、またはこれを拒否するようにサーバーを設定します。応答を返すためには、 HTTPIdent 関数を有効にし、クライアントが「/fcs/ident」リソースのために POST または GET を必ず実行する必要がありま す。 サーバーが HTTP ID 要求を受信すると、edge.xx.log ファイルに要求がログ記録されます。 属性 Enable サーバーが HTTP ID 要求に応答すること(true)、または応答しないこと(false)を指定するブール値。デフォル ト値は false です。enable 属性が true に設定されている場合、HTTPIdent セクション内のすべてのエレメントが応答として返 されます。応答全体が、サーバーによって追加される <FCS></FCS> エレメントで囲まれます。関数 HTTPIdent が有効であ るものの、何も内容が指定されていない場合は、空の <FCS></FCS> 応答が返されます。 例 <HTTPIdent enable="true"> <Company>Adobe System Inc</Company> <Team>Flash Media Server</Team> </HTTPIdent> 要求の例を以下に示します。 http://serverIP:1935/fcs/ident 応答の例を以下に示します。 <fcs> <Company>Adobe System Inc</Company> <Team>Flash Media Server</Team> </fcs> 関連項目 HTTPNull、HTTPTunnel、HTTPUserInfo HTTPIdent2 クライアントが Flash Media Server への RTMPT 接続を試みる前に、クライアントからの特別な HTTP 要求に応答または 拒否するようにサーバーを設定します。応答を返すには、HTTPIdent2 関数を有効にする必要があります。この関数は、 Flash Player Update 3 以降で使用できます。 RTMPT(トンネリングされた Real-Time Messaging Protocol)では、ロードバランサとの連携が困難な場合があります。 単一の RTMPT セッションが複数のソケット接続から構成される場合、各接続はロードバランサの背後にある多数の Flash Media Server のいずれかに送信できます。これにより、セッションが複数のマシン間で分割されます。<HTTPIdent2> によ り、Flash Player は Flash Media Server に接続する前に特別な HTTP 要求を送信される可能性があります。 最終更新日 2010/9/8 114 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 属性 enabled サーバーが RTMPT 接続を確立する前に特別な HTTP ID 要求に応答すること(true)、または応答しないこと (false)を指定するブール値。<HTTPIdent2> タグまたは enabled 属性がない場合でも、この機能はデフォルトで有効になり ます。IP アドレスは明示的に設定でき、Flash Media Server マシンの IP である必要はありません(これにより、RTMPT 接続を異なるサーバーにリダイレクトできます)。このタグが空のままの場合、IP アドレスは自動的に決定されます。 Linux 上で Flash Media Server を実行していて IPv6 を有効にしている場合で、IPv4 ホスト名(IPv4 に解決されるホスト 名)を使用しているときは、このタグを使用することで RTMPTE 接続と RTMPE 接続をより高速に解決できます。 enabled 属性を false に設定するか、または true に設定し、このタグの値を接続先の IP アドレスに設定します。 例 <HTTPIdent2 enabled="true">10.133.128.71</HTTPIdent2> 関連項目 HTTPNull、HTTPTunnel、HTTPUserInfo HTTPNull クライアントからの「/」リソースに対する HTTP GET 要求に応答、またはこれを拒否するようにサーバーを設定します。 enable 属性が true に設定されている場合、HTTP GET 要求に応じて HTTP 404 応答が送信されます。デフォルトでは、 HTTPNull 機能は無効になっています。 HTTPNull が無効になっていて、Web サーバーが有効になっている場合、「/」リソースに対する要求は Web サーバーに渡 されます。 属性 enable ブール値です。デフォルト値は false です。 例 <HTTPNull enable="false"> HttpProxy サーバーが不明の要求を外部サーバーにプロキシするかどうかを指定します。プロキシ処理を有効にする場合は、 HTTPTunnel / Enable を true に設定する必要があります。 指定したホストへのプロキシの要求は、要求を受け取ったポートに基づいて詳細に制御できます。どちらかの方向のバッ ファーがいっぱいになるとフロー制御が作動し、送信側と受信側で帯域幅が大きく異なる場合の処理を自動実行します。 属性 enable ブール値です。デフォルト値は true です。 maxbuf io バッファーのサイズ。デフォルト値は 16384 です。 例 デフォルトの Adaptor.xml ファイルでは、Host エレメントの値は、fms.ini ファイルからの変数です。fms.ini ファイルで HTTPPROXY.HOST の値を設定することも、Adaptor.xml ファイルの変数を置き換えることもできます。デフォルトの Adaptor.xml ファイルの設定を次に示します。 <HttpProxy enable="true" maxbuf="16384"> <Host port="80">${HTTPPROXY.HOST}</Host> </HttpProxy> サーバーが不明の HTTP 要求をプロキシする IP アドレスとポート。HTTPPROXY.HOST = webfarm.example.com:80 最終更新日 2010/9/8 115 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 IP アドレスやドメイン名を指定しない場合、サーバーは次のように localhost ポートを使用します。 HTTPPROXY.HOST = :8134 HTTPTunnel コンテナエレメント。 このセクション内のエレメントは、アダプターへの外部からの HTTP トンネリング接続を設定します。含まれている Edge エレメントを使用して各エッジを個別に設定できます。 含まれるエレメント Enable、NodeID、IdlePostInterval、IdleAckInterval、idleTimeout、MimeType、WriteBufferSize、SetCookie、Redirect、Host、 HttpProxy、NeedClose、MaxHeaderLineLength、Edge HTTPUserInfo コンテナエレメント。 このセクション内のエレメントは、XML ファイルおよびキャッシュ設定の絶対パスを設定します。 含まれるエレメント Path、MaxSize、UpdateInterval IdleAckInterval クライアントからのアイドル状態のポストに対して、サーバーが承認コードを送信するまでの最大待機時間をミリ秒単位で 指定します。承認コードは、送信されたメッセージがエラーなく破損されずに受信されたこと、および受信サーバーが送信 を受け付ける準備が整っていることを示す送信制御キャラクタです。デフォルト値は、中程度の待ち時間である 512 ミリ秒 です。 このエレメントと IdlePostInterval エレメントの値は、サーバーにトンネリングするクライアント側の待ち時間に影響を与え ます。この 2 つのエレメントは、同時に設定する必要があります。 低い値にすると、待ち時間は短縮されますが、ネットワーク帯域幅のオーバーヘッドは増加します。待ち時間を短縮するこ とが望ましいアプリケーションでは、IdlePostInterval エレメントと IdleAckInterval エレメントの値を 128 と 256 の組み合わ せに設定します。長めの待ち時間でも影響のないアプリケーションでは、1024 と 2048 の組み合わせに設定します。 <IdleAckInterval>512</IdleAckInterval> 関連項目 IdlePostInterval、idleTimeout IdlePostInterval Flash Player に送信データがないことを示すため、クライアントがサーバーにアイドル状態のポストを送信する間隔をミリ 秒単位で指定します。 IdleAckInterval エレメントと IdlePostInterval エレメントは、デフォルトでは、512 および 512 ミリ秒の組み合わせに設定さ れ、待ち時間は中程度になります。 低い値にすると、待ち時間は短縮されますが、ネットワーク帯域幅のオーバーヘッドは増加します。待ち時間を短縮するこ とが望ましいアプリケーションでは、IdlePostInterval エレメントと IdleAckInterval エレメントの値を 128 と 256 の組み合わ せに設定します。待ち時間が長くないアプリケーションでは、1024 または 2048 の設定を使用できます。 最終更新日 2010/9/8 116 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <IdlePostInterval>512</IdlePostInterval> 関連項目 IdleAckInterval、idleTimeout idleTimeout トンネルセッションが閉じるまでの最大非アクティブ時間を秒単位で指定します。 HTTP トンネリングを使用しているクライアントが不意に接続を切断した場合に、接続の切断後に長期にわたりセッション が開いたままになる場合があります。IdleTimeout の値は、接続を自動的に切断するまで、こうしたセッションをアイドル状 態のまま維持する最大時間を秒単位で示します。IdleTimeout が -1 の場合は、アイドル状態のトンネルセッションを切断し ないことを示します。IdleTimeout のデフォルト設定は 8 秒です。この値が小さすぎる場合、非常に待ち時間が大きいクライ アントが切断されることがあります。この値が大きすぎる場合、切断したセッションが必要以上に長い間サーバーリソース を消費することがあります。 例 <IdleTimeout>8</IdleTimeout> 関連項目 IdlePostInterval、IdleAckInterval MaxFailures エッジサーバーが再起動されるまでの障害の最大発生件数を指定します。 デフォルト数は 2 です。 例 <MaxFailures>2</MaxFailures> 関連項目 IdleAckInterval MaxHeaderLineLength サーバーで受け付けることができる HTTP ヘッダー行の最大サイズ(バイト)。デフォルト値は 1024 です。より長いヘッ ダー行を受け付けるには、この値を大きくします。 関連項目 50 ページの「HTTP ヘッダー行の最大の長さの指定」 MaxPipelinedRequests Flash Player がパイプラインを許可する要求の最大数を設定します。値は 1 以上である必要があります。 デフォルト値は 5 です。 例 <MaxPipelinedRequests>6</MaxPipelinedRequests> 最終更新日 2010/9/8 117 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxSize サーバーがキャッシュ内で保持する HTTP 要求の最大数を指定します。キャッシュサイズがこの最大サイズに達すると、 サーバーはキャッシュを削減します。デフォルト値は 100 です。 例 <MaxSize>100</MaxSize> 関連項目 Path、UpdateInterval MimeType トンネル応答で送信されるデフォルトの MIME(Multi-purpose Internet Mail Extensions)タイプヘッダーを指定しま す。 サーバーは、通常、外部からの要求が指定する MIME タイプを使用します。サーバーは、外部からの要求から MIME タイ プを決定できない場合に限って、MIMEType エレメントの入力項目を使用します。 例 <MimeType>application/x-fcs</Mimetype> 関連項目 HTTPTunnel NeedClose 応答が書き込まれたときに HTTP 1.0 のキープアライブでない接続が閉じられるかどうかを指定するブール値。デフォルト 値は、接続を閉じることを示す true です。 例 <NeedClose>true</NeedClose> NodeID ロードバランサの実装をサポートする一意のノード ID を指定します。 NodeID エレメントが使用されると、後続の最大 9 文字の文字列がトンネルセッション ID の接頭辞になります。ロードバラ ンサは、これを使用してクラスタ内の各ノードを識別します。 ID には、URL として安全なキャラクタ(英数字の A ∼ Z、a ∼ z、0 ∼ 9 および特殊文字 $-_.+!*'())を含む必要があります。 関連項目 HTTPTunnel Order サーバーが Allow エレメントおよび Deny エレメントを評価するシーケンスを指定します。デフォルトのシーケンスを以下 に示します。 <Order>Allow,Deny</Order> 最終更新日 2010/9/8 118 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 デフォルトのシーケンスは、Allow エレメントに指定されていない限り、サーバーへのアクセスが拒否されることを示しま す。 もう一方のシーケンス Deny,Allow は、Allow エレメントに指定されておらず、なおかつ Deny エレメントに指定されている のを除いて、サーバーへのアクセスが許可されることを示します。 例 デフォルトのシーケンスを以下に示します。 <Order>Allow,Deny</Order> 関連項目 Allow、Deny Path XML ファイルをサーバーが検索するフォルダーの絶対パスを指定します。デフォルトでは、Flash Media Server のインス トールディレクトリ内の uInfo/ に設定されます。 関連項目 MaxSize、UpdateInterval RecoveryTime エッジサーバーが障害の後に再起動するまでの待機時間を秒単位で指定します。 障害が発生したエッジサーバーは、ここで指定した時間待機してから再起動します。待機時間は、秒単位で指定します。 障害の件数は、MaxFailures エレメントで指定します。 例 <RecoveryTime>30</RecoveryTime> 関連項目 MaxSize Redirect アダプターが未知の要求を外部サーバーにリダイレクトするかどうかを指定します。 注意:リダイレクトが機能するためには、HTTP トンネリングを有効にする必要があります。 未知の要求は、新たに受け付けられた接続での最初の要求である場合に限って接続されることがあります。これ以外の場合 は、このような要求はエラーと見なされ、接続は閉じられます。 maxbuf 属性は、IO バッファーの最大サイズを決定します。送信側と受信側で帯域幅リソースに大きな違いがある場合、そ の要求はフロー制御によって自動的に処理されます。フロー制御は、いずれかの方向のバッファーが満杯になると開始され ます。 例 この例は、指定したリダイレクトホストに未知の要求をリダイレクトするようサーバーに指示しています。 最終更新日 2010/9/8 119 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 <Redirect enable="false" maxbuf="16384"> <Host port="80">:8080</Host> <Host port="443">:8443</Host> </Redirect> 関連項目 NeedClose ResourceLimits コンテナエレメント。 このコンテナ内のエレメントは、エッジサーバーのリソース制限を設定します。 含まれるエレメント MaxFailures、RecoveryTime RTMP コンテナエレメント。 このコンテナのエレメントは、暗号化された RTMP(RTMPE)および暗号化されたトンネリング RTMP(RTMPTE)を 使用できるかどうかを決定します。 含まれるエレメント RTMPE RTMPE 暗号化された RTMP(RTMPE)を使用できるかどうかを指定します。RTMPE は、RTMPE と RTMPTE の両方に対応 する暗号化された RTMP プロトコルです。このエレメントは、デフォルトで有効になっています。enabled を false に設定す ると、このアダプターで RTMPE または RTMPTE が許可されません。 例 <RTMPE enabled="true"></RTMPE> 関連項目 RTMP SetCookie サーバーで cookie を設定するかどうかを指定します。 外部から参照できる IP アドレスがサーバーにない場合に、HTTP トンネリングが動作するためには、ロードバランサの背 後にサーバーをデプロイする際に、cookie を有効にしてください。ロードバランサは cookie を確認し、この cookie を使用 して、要求を同じサーバーに送信します。cookie は HTTP ヘッダーサイズに追加されるため、帯域幅オーバーヘッドを増 加させるということに留意してください。 注意:トンネリング接続については、cookie は現在 Windows 版の Flash Player 9.0.28 以降でのみサポートされています。 例 <SetCookie>false</SetCookie> 最終更新日 2010/9/8 120 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 NodeID SSL コンテナエレメント。 このセクション内のエレメントは、外部から SSL プロトコル経由で到着する接続を設定します。Adaptor.xml の SSL エレ メントは、サーバーが SSL 対応サーバーとして動作して外部からの SSL 接続を受け付けるように設定します。 SSL を使用するには、電子証明書を入手する必要があります。SSL 証明書を Verisign などの認証機関から入手するか、 OpenSSL などの製品を使って自分で作成する場合、SSL エレメントでサーバーを SSL 対応に設定します。 次は、サーバーへの SSL 対応接続を可能にするための簡単な手順です。 • Adaptor.xml ファイルの SSL セクションに移動します。 • SSLCertificateFile エレメントで、証明書の場所を指定します。 • SSLCertificateKeyFile エレメントで、関連付けられた秘密鍵ファイルの格納場所を指定します。 • 秘密鍵が暗号化されている場合は、SSLPassPhrase エレメントで、この秘密鍵の復号化のために使用するパスフレーズを 指定します。 • Adaptor.xml ファイルを保存します。 含まれるエレメント SSLServerCtx SSLCertificateFile サーバーとのセキュアな接続を要求するクライアントに返す証明書の場所を指定します。 絶対パスを指定していない場合、証明書は Adaptor ディレクトリを基準にした場所にあると見なされます。 例 <SSLCertificateFile>c:\myCertFile</SSLCertificateFile> 関連項目 SSLCertificateKeyFile、SSLPassPhrase、SSLCipherSuite、SSLSessionTimeout SSLCertificateKeyFile これは、SSLCertificateFile エレメントで指定した証明書の公開鍵に対応する秘密鍵の場所を指定します。 このファイルが暗号化されている場合は、復号化に使用するパスワードを指定し、後で説明される SSLPassPhrase エレメン トに置くことが必要です。鍵ファイルへの絶対パスを指定しない場合は、アダプターディレクトリに対して相対であると見 なされます。 例 <SSLCertificateKeyFile type="PEM"></SSLCertificateKeyFile> type 属性は、証明書キーファイルに使用する暗号化タイプを指定します。暗号化形式は、PEM(Privacy Enhanced Mail) または ASN1(Abstract Syntax Notation 1)です。デフォルトは です。 最終更新日 2010/9/8 121 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 SSLCertificateFile、SSLPassPhrase、SSLCipherSuite、SSLSessionTimeout SSLCipherSuite 外部からの接続をセキュアにするためにサーバーが使用する暗号スイートを指定します。 各項目はコロンで区切ります。項目には、キー交換アルゴリズム、認証方式、暗号化方式、ダイジェストタイプ、または共 通グルーピングのエイリアスの選択番号の 1 つを指定できます。 注意:この例にリストされるデフォルト設定を変更する場合は、事前にアドビサポートに連絡してください。 例 <SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite> 関連項目 SSLCertificateFile、SSLCertificateKeyFile、SSLPassPhrase、SSLSessionTimeout SSLPassPhrase 非公開キーファイルを解読するのに使用するパスフレーズを指定します。 鍵ファイルが暗号化されている場合は、この鍵ファイルの復号化のために使用するパスフレーズを指定します。鍵ファイル が暗号化されていない場合は、このエレメントは空白のままにします。 設定ファイルにプレーンテキストのパスワードが表示されることを避けるために、パスワードを base64 形式でエンコード し、encrypt 属性を true に設定します。 例 <SSLPassPhrase encrypt="true">dGluY2Fu</SSLPassPhrase> 上記の暗号化されたパスワードは、プレーンテキスト形式の次のパスワードに相当します。 <SSLPassPhrase>tincan</SSLPassPhrase> または <SSLPassPhrase encrypt="false" >tincan</SSLPassPhrase> エレメント属性は「encrypt」となっていますが、本当の暗号化ではありません。パスワードが簡単に読み取られないように するために、base64 エンコーディングを実行しています。 関連項目 SSLCertificateFile、SSLCertificateKeyFile、SSLCipherSuite、SSLSessionTimeout SSLServerCtx コンテナエレメント。 このセクション内のエレメントは、このアダプターのための外部からの SSL 設定を制御します。 含まれるエレメント SSLCertificateFile、SSLCertificateKeyFile、SSLPassPhrase、SSLCipherSuite、SSLSessionTimeout 最終更新日 2010/9/8 122 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 SSLSessionTimeout セッションの有効時間を分単位で指定します。デフォルトの時間は 5 分です。 SSL セッションは、接続ごとに完全な SSL ハンドシェイクを実行する必要性をなくし、パフォーマンスを向上させるために 使用されます。クライアントが初めてサーバーに接続したときは、完全なハンドシェイクを実行することが必要です。最初 のハンドシェイクが終わると、サーバーはクライアントにセッションオブジェクトを送信します。クライアントは、受信し たセッションオブジェクトをキャッシュに格納し、後の接続で再使用します。 後に、クライアントが同じサーバーに再度接続した場合には、このキャッシュしておいたセッションオブジェクトをサー バーに返します。このセッションがその時点でも有効であれば、サーバーは完全な SSL ハンドシェイクの実行を必要としま せん。 例 <SSLSessionTimeout>5</SSLTimeout> 関連項目 SSLCertificateFile、SSLCertificateKeyFile、SSLPassPhrase、SSLCipherSuite UpdateInterval サーバーがキャッシュコンテンツを更新する頻度をミリ秒単位で指定します。デフォルト値は 5,000 ミリ秒です。 例 <UpdateInterval>5000</UpdateInterval> 関連項目 Path、MaxSize WriteBufferSize 書き込みバッファーのサイズをキロバイト単位で指定します。デフォルトサイズは 16 KB です。 例 <WriteBufferSize>16</WriteBufferSize> 関連項目 ResourceLimits Application.xml ファイル Application.xml ファイルには、Flash Media Server アプリケーションの設定が格納されています。 仮想ホストディレクトリ内の Application.xml ファイルによって、仮想ホスト内のすべてのアプリケーションのデフォルト が設定されます。特定のアプリケーションで異なる設定を行うには、そのアプリケーションの登録アプリケーションディレ クトリ(/applications/app_name)に Application.xml ファイルをコピーし、このファイルを編集して必要な設定を含め ます。 ほとんどの場合、アプリケーションディレクトリ内の Application.xml ファイルの設定は仮想ホストディレクトリ内の Application.xml ファイルの設定より優先されますが、常に優先されるわけではありません。次に示すように、仮想ホスト の Application.xml ファイル内の一部のエレメントに override 属性を追加できます。 最終更新日 2010/9/8 123 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 <LoadOnStartup override="no">false</LoadOnStartup> サーバーでは、override 属性の適用時に次の規則に従います。 • override 属性がエレメントに含まれていて no に設定されている場合、アプリケーション固有の Application.xml ファイ ルではそのエレメントの設定を更新できません。 • エレメントで override 属性が no に設定されている場合、そのすべてのサブエレメントも更新できません。 • Application.xml ファイルがアプリケーションディレクトリにあり、更新できないエレメントに対してデフォルト値と は異なる値を指定した場合、その値は無視され、デフォルト値が使用されます。 • デフォルトの Application.xml ファイルが存在しないか無効な場合、サーバーは起動しません。 • ユーザー指定の Application.xml 設定ファイルが無効な場合、そのファイルは無視されます。 • LoadOnStartup エレメントの下にあるすべてのサブエレメントは更新できません。 • override 属性を省くと、LoadOnStartup • エレメントを更新できます。 エレメントを更新できないように変更するには、一番上のタグで override タグを no に設定します。 注意:デフォルトでは、Bandwidth コンテナエレメントと BandwidthCap コンテナエレメントには、yes に設定された override パラメーターが含まれています。これにより、これらのセクション内にネストされる ClientToServer エレメントと ServerToClient エレメントの値を更新することができます。この XML ファイル内の Client エレメントには、override="no" 属性がデフォルトで含まれています。 エレメントの構造とデフォルト値を参照するには、Flash Media Server と共にインストールされた RootInstall/conf/_defaultRoot_/_defaultVhost_ ディレクトリ内の Application.xml ファイルを確認します。 Access コンテナエレメント。 Access プラグインは、libconnect.dll ファイルで構成されています。Flash Media Server へのすべての接続要求をインター セプトして検査し、その接続を受諾すべきか拒否すべきかを決定します。 含まれるエレメント FolderAccess Access(Logging) コンテナエレメント。 アクセスログのロギングを設定するエレメントを格納しています。 含まれるエレメント Checkpoints AccumulatedIFrames コンテナエレメント。 このセクション内のエレメントは、ライブストリームがバッファー内で保持できる中間フレームの最大サイズと最長継続期 間を指定します。 含まれるエレメント MaxTime、MaxSize(AccumulatedIFrames) 最終更新日 2010/9/8 124 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 AdaptorId 使用できるバージョン Flash Media Server 4 説明 重要:このエレメントの値は変更しません。 アダプターの識別子をサーバーサイドスクリプトエンジンに指定します。デフォルトのスクリプトアダプターは <AdaptorId>as1</AdaptorId> です。 Server.xml 設定ファイルの ScriptAdaptors エレメントは、各アダプターのエレメントを含みます。デフォルトアダプターは as1 です。 <ScriptAdaptors> <as1 lib="libasc"/> </ScriptAdaptors> 関連項目 ScriptEngine AggregateMessages(Client) クライアントに集約メッセージを送信するかどうかを指定します。enabled 属性が true に設定されている場合、サーバーは 集約メッセージをサポートするクライアントに集約メッセージを配信します。この設定を無効にした場合、集約メッセージ はクライアントに配信される前に個々のメッセージに分割されます。デフォルト値は false です。 AggregateMessages(Queue) コンテナエレメント。集約メッセージのサイズを制御するエレメントを格納しています。 このエレメントはまた、キューが有効になっているときに、集約メッセージを形成するためにキュー内のメッセージを組み 合わせることができるかどうかを指定します。enabled 属性が true(デフォルト値)に設定されている場合、サーバーは集約 メッセージを作成します。 サーバーは可能な場合は常に、サポートされているクライアントに集約メッセージを送信することを試みます。この設定を 無効にした場合、集約メッセージは常にクライアントに配信される前に個々のメッセージに分割されます。 例 <AggregateMessages enabled="false"><\AggregateMessages> 関連項目 MaxAggMsgSize、HTTPTunnel、MaxMessageSizeLosslessVideo、OutChunkSize Allow HTTP ヘッダーのリダイレクトで送信される「following and Location:」ヘッダーを許可するかどうかを指定します。デフォ ルトは true で、HTTP リダイレクトを許可します。 例 <Allow>true</Allow> 最終更新日 2010/9/8 125 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 Max、UnrestrictedAuth AllowDebugDefault application.allowDebug のデフォルト値を指定します。これは、アプリケーションごとにデバッグ接続を可能にする開始 タグです。デフォルト値は false です。 例 <AllowDebugDefault>false</AllowDebug Default> 関連項目 MaxPendingDebugConnections AllowHTTPTunnel このエレメントは、このアプリケーションへの HTTP トンネリング接続を許可するようにサーバーを設定します。 Flash Player は、デフォルトでは、ポート 1935 で RTMP プロトコルを使用してサーバーと通信します。これが失敗する と、非標準ポートを介した TCP/IP 接続を防御するファイアウォール設定を回避しようと、ポート 443 と 80 での接続を試 行します。 Flash Player は、エッジサーバーを介して Flash Media Server への接続をネゴシエートするか、または、パブリックサー バーへの送信が許可されているのが HTTP コンテンツだけの場合など、HTTP プロトコルを使用して RTMP パケットを送 信(HTTP トンネリングと呼ばれます)することがあります。 このエレメントの値について、次の表で説明します。 値 説明 true トンネリング接続を許可します。 false トンネリング接続を拒否します。 http1.1only HTTP 1.1 接続のみを許可します。 keepalive HTTP 1.0 と 1.1 のキープアライブ接続を許可します。 例 <AllowHTTPTunnel>true></AllowHTTPTunnel> 関連項目 Allow Application これは、Application.xml のルートエレメントです。 関連項目 Process、LoadOnStartup、MaxAppIdleTime、JSEngine、StreamManager、SharedObjManager、AllowHTTPTunnel、Client、 debug、HTTP、SWFVerification 最終更新日 2010/9/8 126 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 AssumeAbsoluteTime 外部からのライブストリームに絶対時計に基づいたタイムスタンプがあるかどうかを決定します。絶対時計の例は、 SMPTE 時報で、エンコーダーの入力ソース内に含まれています。 デフォルト値は false です。 例 <AssumeAbsoluteTime>true</AssumeAbsoluteTime> 使用できるバージョン Flash Media Server 4 Audio コンテナエレメント。 このセクション内のエレメントは、サーバーのオーディオストリーム設定を指定します。 含まれるエレメント CombineSamples、SendSilence AutoCloseIdleClients コンテナエレメント。 アイドル状態のクライアントを自動的に閉じるかどうかを決定するエレメントを格納しています。 アイドル状態のクライアントを閉じるには、enable 属性を true に設定します。enable 属性を省略するか、false に設定した場 合、この機能は無効になります。デフォルト値は false です。 データを送受信しているクライアントはアクティブなクライアントです。AutoCloseIdleClients エレメントを使用して、クラ イアントがアイドル状態かどうかをサーバーがチェックする頻度を指定します。クライアントが最大アイドル時間(デフォ ルトは 60 秒)より長い間アイドル状態になっている場合、サーバーは NetConnection オブジェクト(クライアント)にス テータスメッセージを送信します。サーバーは、サーバーへのクライアント接続を閉じて、メッセージをアクセスログに書 き込みます。また、 「クライアント x は y 秒間アイドル状態です」などのメッセージをコアおよびイベントログに書き込みま す。 アイドル状態の接続の終了について設定するには、Server.xml ファイル内でこの機能を有効にする必要があります。 Server.xml ファイル内でこの機能を有効にすると、Vhost.xml ファイル内で個々の仮想ホスト機能を、または Application.xml 内で個々のアプリケーション機能を無効にすることができます。Application.xml ファイルで値が定義さ れていなければ、Vhost に接続されているすべてのクライアントに対して、Vhost.xml 設定ファイルで定義された値が適用 されます。Application.xml の値は Vhost.xml の値より優先されます(以降は、Vhost.xml ファイルで値が定義されてい なければ、サーバーに接続されているすべてのクライアントに対して、Server.xml 設定ファイルで定義された値が適用され ます。Vhost.xml の値は Server.xml の値より優先されます)。 例 <AutoCloseIdleClients enable="false"> <CheckInterval>60</CheckInterval> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> 最終更新日 2010/9/8 127 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 AudioSampleAccess クライアントアプリケーションがストリーム内の生の非圧縮オーディオデータにアクセスすることを許可します。デフォル トでは、このエレメントは無効になっています。このエレメントを有効にするには、enable 属性を true に設定します。この タグ内では、クライアントアプリケーションがアクセスできるフォルダーのリストをセミコロンで区切って指定します。こ のエレメントが有効な場合、すべてのクライアントは指定されたフォルダー内のストリーム内のオーディオデータにアクセ スできます。サーバーによってストリーミングされるすべてのオーディオデータに対するアクセスを有効にするには、この タグで / を指定します。 フォルダーパスはアプリケーションのストリームフォルダーに制限されるので、フォルダーのリスト内では絶対パスを使用 しないでください。 サーバーサイド ActionScript を通じたアクセスを有効にすることもできますが、このエレメントではサーバーサイド ActionScript を必要とすることなくデータにアクセスできます。また、Access プラグインまたはサーバーサイド ActionScript でこのエレメントを無効にすることもできます。 例 アプリケーションが C:\low_quality フォルダーと C:\high_quality フォルダーにストリームを格納するように設定されている 場合、このようなサンプルストリームへのアクセスを許可するには、次のように設定します。 <AudioSampleAccess enabled="true">low_quality;high_quality</AudioSampleAccess> 関連項目 VideoSampleAccess AutoCommit 変更された共有オブジェクトを自動的にコミットするかどうかを指定します。このエレメントを false に設定すると、このイ ンスタンス内のすべての共有オブジェクトに対する Flash Player 機能は無効になります。 注意:AutoCommit 関数が無効の場合、サーバーサイドスクリプトで save 関数または SharedObject.commit コマンドを呼び 出して共有オブジェクトを持続するようにします。この操作をしないと、アプリケーションのシャットダウン時にすべての データが失われます。 例 <AutoCommit>true</AutoCommit> 関連項目 StorageDir、DuplicateDir、ResyncDepth、LockTimeout、MaxProperties、MaxPropertySize Bandwidth コンテナエレメント。 このコンテナ内にネストされるエレメントは、アップストリーム(クライアントからサーバー)およびダウンストリーム (サーバーからクライアント)データのための帯域幅設定を指定します。 デフォルトでは、Bandwidth エレメントには yes に設定された override パラメーターが含まれています。これにより、 ClientToServer エレメントと ServerToClient エレメントの値も変更することができます。 含まれるエレメント ClientToServer(Bandwidth)、ServerToClient(Bandwidth) 最終更新日 2010/9/8 128 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 BandwidthCap コンテナエレメント。 このセクション内のエレメントは、ユーザーが設定することのできる帯域幅設定を指定します。デフォルトでは、このエレ メントには yes に設定された override パラメーターが含まれています。これにより、このセクション内にネストされる ClientToServer エレメントと ServerToClient エレメントの値も変更することができます。 含まれるエレメント ClientToServer(BandwidthCap)、ServerToClient(BandwidthCap) BandwidthDetection コンテナエレメント。 このエレメントは、サーバーが帯域幅を検出する方法に関する設定を格納しています。この機能のオンとオフを切り替える には、enable 属性を true または false に設定します。 サーバーは、コアサーバーコード(ネイティブ)、またはサーバーサイドスクリプト(スクリプトベース)でクライアントの 帯域幅を検出できます。ネイティブ帯域幅の検出はデフォルトで有効になっており、コアサーバーコードが C および C++ で記述されているので、スクリプトベースの検出よりも高速です。 サーバーは、一連のデータブロックをクライアントに送信することで帯域幅を検出します。送信するデータブロックは、1 回ごとに大きくなります。データブロックのサイズとその送信レートおよびサーバーがクライアントにデータを送信する時 間を設定できます。 次の表は、BandwidthDetection エレメントで使用可能な値を示しています。 要素 説明 BandwidthDetection この機能のオンとオフを切り替えるには、enabled 属性を true または false に設定します。 MaxRate サーバーがクライアントにデータを送信する最大レートを Kbps 単位で指定します。デフォルト値は -1 です。この場合、 帯域幅を測定するために必要な任意のレートでデータが送信さ れます。 DataSize サーバーがクライアントに送信するデータ量(バイト)。クラ イアントの帯域幅を検出するために、サーバーは一連のデータ ブロックをランダムにクライアントに送信しようとします。送 信するデータ量は、送信のたびに増えていきす。例えば、最初 に x バイトを送信する場合、次は 2x バイト、次は 3x バイトと いうようにデータ量が増えていきます。これは、MaxWait で 指定した時間が経過するまで続きます。 MaxWait サーバーがクライアントにデータを送信する時間(秒)。この 値を大きくすると、より正確な帯域幅の数値を得ることができ ますが、クライアントの待機時間が長くなります。 例 <BandwidthDetection enabled="true"> <MaxRate>-1</MaxRate> <DataSize>16384</DataSize> <MaxWait>2</MaxWait> </BandwidthDetection> 含まれるエレメント MaxRate、DataSize、MinBufferTime(Live) 最終更新日 2010/9/8 129 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Bits このエレメントには、Windows および Macintosh プラットフォームで実行される Flash Player の設定項目が含まれます。 例 <Bits from="WIN 6,0,0,0" to="WIN 7,0,55,0">0x01</Bits> <Bits from="MAC 6,0,0,0" to="MAC 7,0,55,0">0x01</Bits> 関連項目 userAgent BufferRatio ライブバッファーへのサーバーサイドストリームで使用されるバッファーの長さの縦横比を指定します。 例 <BufferRatio>0.5</BufferRatio> 関連項目 Server Cache コンテナエレメント。SWF の検証用のキャッシュを設定するエレメントを格納しています。 関連項目 TTL、UpdateInterval CachePrefix オリジンサーバーからエッジサーバーに渡されるキャッシュ接頭辞を指定します。 このエレメントは、オリジンサーバーで設定されます。エッジサーバーは、このエレメントの値を相対パスとして使用して、 CacheDir エレメントで定義されるキャッシュファイルの場所を見つけ出します。 type 属性によって、キャッシュ接頭辞の追加設定ができます。type 属性は、path または sname に設定できます。デフォルト 値は VideoAlign.CENTER です。 例 <CachePrefix type="path"></CachePrefix> 属性 type が path の場合、サーバーは記録ストリームの物理パスを接頭辞に付加します。 <CachePrefix type="sname"></CachePrefix> 属性 type が sname の場合、サーバーはストリーム名を接頭辞に付加します。 キャッシュ接頭辞には、設定済みのパラメーターの有無にかかわらずどのようなテキストでも使用できます。接頭辞には、 特殊文字(\、:、*、?、"、<、>、| など)を含まなければ、どのような名前でも使用できます。すべてのパラメーターは 「?」で囲みます。サーバーは、「?」で囲まれたどのような文字列も実際の名前に置換します。 デフォルトでは、接頭辞は ?IP? に設定されています。 最終更新日 2010/9/8 130 FLASH MEDIA SERVER 4.0 設定および管理ガイド 131 XML 設定ファイルの参照 キャッシュ接頭辞 実際の名前 ?IP? サーバーの IP アドレス ?app? 名前 ?APPINST? アプリケーションインスタンス名 ?VHOST? 仮想ホスト名 接頭辞に IP アドレスを含めることで、ファイルの衝突を避けることができます。例えば、エッジサーバーが c:\data\foo.flv にある同じファイルを持つ 2 つの異なるオリジンサーバーに接続している場合、これらのファイルのために接頭辞に IP を付 加することで、各ファイルは適切なサーバーを指すことができます。 キャッシュファイルを複数のサーバーで共有する場合は、パラメーターとして IP を含めないようにします。キャッシュ接頭 辞は、エッジサーバーがキャッシュストリームファイルの場所を見つけるために使用する相対パスであることを忘れないよ うにしてください。 例 キャッシュ接頭辞は、エッジの CacheDir に相対パスを作成します。すべてのパラメーターは \ または / で区切ります。 <CachePrefix type="path">c:\fms\flvs\foo.flv. data/?IP?</CacheDir> 次のように解決: data/xxx.xxx.xxx.xxx/c/fms/flvs/foo.flv <CachePrefix type="path">?APPINST?/data</CacheDir> 次のように解決: app1/inst1/data/c/fms/flvs/foo.flv <CachePrefix type="path">origin1/data/</CacheDir> 次のように解決: origin1/data/c/fms/flvs/foo.flv 関連項目 StorageDir、DuplicateDir、CacheUpdateInterval CacheUpdateInterval このエレメントは、エッジサーバーのキャッシュストリーミングを更新する間隔を定義します。更新間隔は、ミリ秒単位で 定義します。デフォルト値は 10 です。最短の更新間隔は 10 秒です。最長の更新間隔は 24 時間です。 例 <CacheUpdateInterval>10</CacheUpdateInterval> 関連項目 StorageDir、DuplicateDir、CachePrefix 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Checkpoints 多くの企業では、顧客への課金のためにアクセスログの統計を使用しています。ライブイベントや 24 時間年中無休のプロ グラムが含まれている場合、課金を計算するために使用するイベントが、課金の対象となる期間内に発生しない場合があり ます。この問題を解決するため、チェックポイントイベントを有効にできます。チェックポイントイベントにより、イベン ト中のバイト数が定期的に記録されます。チェックポイントイベントとして使用できるのは、connect-continue、play- continue および publish-continue です。 アクセスログへのチェックポイントイベントのロギングは、デフォルトでは、Vhost.xml ファイルで有効に設定されていま す。このアプリケーションに対してチェックポイントのロギングを無効にするか、このアプリケーションのチェックポイン ト間隔を変更できます。Application.xml ファイルでチェックポイント間隔を指定しない場合、または値が無効な場合、 サーバーは Vhost.xml ファイルの設定値を使用します。 含まれるエレメント LogInterval Client コンテナエレメント。 このコンテナ内にネストされるエレメントは、クライアントを設定します。 デフォルトでは、Client エレメントは override="no" パラメーターを含みます。Client セクションにあるエレメントでどのよ うに設定されている場合でも、各アプリケーションでその設定を変更することはできません。 含まれるエレメント Bandwidth、BandwidthCap、BandwidthDetection、MsgQueue、HTTPTunnel、MaxMessageSizeLosslessVideo、OutChunkSize Client(RPC) クライアント RPC に対して許可されるメソッドをリストできます。メソッドがリストされていない場合、それを呼び出す ことはできません。 メソッドを追加するには、<Method><Allow> サブエレメント内のカンマで区切ったメソッド名のリストを使用します。 デフォルトでは、クライアント RPC に対するメソッドをすべて許可しません。 含まれるエレメント メソッド 例 <Client> <Method> <Allow></Allow> </Method> </Client> 関連項目 NetConnection(RPC)、Stream、SharedObject 使用できるバージョン Flash Media Server 4 最終更新日 2010/9/8 132 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 ClientToServer(Bandwidth) クライアントがデータをサーバーにアップストリーム送信する場合の最大帯域幅を指定します。デフォルトの帯域幅は、 1,250,000 バイト / 秒です。 この値は、XML の Bandwidth セクションと XML の BandwidthCap セクションで設定できます。Bandwidth セクションの値 は上書きできますが、BandwidthCap セクションの値は上書きできません。これにより、ISP が顧客のアプリケーションをホ ストできるため、顧客が帯域幅制限を不正使用することがなくなります。例えば、顧客はアプリケーションに任意の帯域幅 制限を設定できますが、ISP により設定された上限を超えることはできません。 例 <ClientToServer>1250000</ClientToServer> 関連項目 ServerToClient(Bandwidth) ClientToServer(BandwidthCap) クライアントがサーバーに送信できる最大帯域幅を指定します。デフォルトの帯域幅は、100,000,000 バイト / 秒です。 この値は、XML の Bandwidth セクションと XML の BandwidthCap セクションで設定できます。Bandwidth セクションの値 は上書きできますが、BandwidthCap セクションの値は上書きできません。これにより、ISP が顧客のアプリケーションをホ ストできるため、顧客が帯域幅制限を不正使用することがなくなります。例えば、顧客はアプリケーションに任意の帯域幅 制限を設定できますが、ISP により設定された上限を超えることはできません。 例 <ClientToServer>100000000</ClientToServer> 関連項目 ServerToClient(BandwidthCap) CombineSamples コンテナエレメント。 サーバーでは、サウンドサンプルを結合することで、システムリソースを節約します。この方法によって、オーディオパ ケットのみを単独で送信する場合に必要な CPU と帯域幅を節約します。 注意:サウンドサンプルを結合するこの方法によっては待ち時間が発生するため、CPU 使用率が高い状態のときに限って使 用するようにしてください。 含まれるエレメント LoCPU、HiCPU、MaxSamples、Subscribers Connections コンテナエレメント。 このセクション内のエレメントは、このアプリケーションのための HTTP 接続を設定します。 含まれるエレメント MaxTimeOut(Connections)、Reuse、Interface 最終更新日 2010/9/8 133 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 DataSize サーバーがクライアントに送信するデータ量をバイト単位で指定します。クライアントの帯域幅を検出するために、サー バーは一連のデータブロックをランダムにクライアントに送信しようとします。送信するデータ量は、送信のたびに増えて いきす。例えば、最初に x バイトを送信する場合、次は 2x バイト、次は 3x バイトというようにデータ量が増えていきます。 これは、MaxWait で指定した時間が経過するまで続きます。 例 <DataSize>16384</DataSize> 関連項目 MaxRate、MinBufferTime(Live) debug コンテナエレメント。 このセクション内のエレメントは、接続の最大数および application.allowDebug の値を含むデバッグ接続を設定します。 含まれるエレメント AllowDebugDefault、MaxPendingDebugConnections Diagnostic メッセージキューの診断ロギングを有効にするかどうかを指定します。デフォルト値は false です。 関連項目 Enabled DirLevelSWFScan SWF ファイルをスキャンする親フォルダー内のサブフォルダーのレベルの数を指定します。親フォルダーは、SWFFolder エレメントで指定します。 正の値を指定すると、その数のサブフォルダーのレベルがスキャンされます。0 を指定すると、親フォルダーはスキャンさ れますが、サブフォルダーはスキャンされません。負の値を指定すると、すべてのサブフォルダーのレベルがスキャンされ ます。デフォルト値は 1 で、サブフォルダーレベルが 1 つだけスキャンされます。 関連項目 SWFFolder、SWFVerification DisallowedProtocols アプリケーションへの接続に使用できないプロトコルを指定します。カンマ区切りリストでプロトコルを指定します。指定 されていないすべてのプロトコルが許可されます。たとえば、次の設定では rtmp 接続と rtmps 接続を却下します。 <DisallowedProtocols>rtmp,rtmps</DisallowedProtocols> デフォルト値は空白で、サーバーへの接続にすべてのプロトコルを使用できます。 最終更新日 2010/9/8 134 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Distribute アプリケーションインスタンスをプロセスに分配する方法を指定します。デフォルト値は、insts です。この値は、アプリ ケーションインスタンスが独自のプロセスで実行されることを意味します。このタグには、並行に実行されるプロセスの最 大数を指定する numprocs 属性が格納されています。numprocs 属性のデフォルト値は、3 です。 この機能はデフォルトでオンになっています。この機能を使用するには、numprocs 属性を 0 または 1 より大きい値に設定す る必要があります。デフォルトの設定では、単一の仮想ホストの下にあるすべてのアプリケーションおよびアプリケーショ ンインスタンスに対して、3 つのコアプロセスが実行されます。各仮想ホストは 3 つのコアプロセスに分散されるので、複 数の仮想ホストを使用するシステムによりさらに多数の実行プロセスが生成されます。 注意:numprocs 属性の値に制限はありませんが、40 を超えるプロセスが必要になることはほぼありません。 スコープは包含関係にあり、厳密に順序付けされています。アダプターには仮想ホストが含まれ、仮想ホストにはアプリ ケーションが含まれ、アプリケーションにはインスタンスが含まれ、インスタンスにはクライアントが含まれます。 Distribute タグの値は、Scope タグの値よりも低い順序のスコープである必要があります。つまり、Scope の値が adaptor の場 合、Distribute の値は vhosts、apps、insts または clients にすることができます。Scope の値が app の場合、Distribute の値は insts または clients にすることができます。デフォルトでは、サーバーは Scope タグで指定されている値の 1 つ下の値を使用 します。 次の表は、Distribute エレメントで使用可能な値を示しています。 値 説明 vhosts 仮想ホスト内のアプリケーションのすべてのインスタンスが 1 つのプロセスでまとめて実行されます。 apps 1 つのアプリケーションのすべてのインスタンスが 1 つのプロセスでまとめて実行されます。 insts 各アプリケーションインスタンスは、独自のプロセスで実行されます。これがデフォルト値です。この値を選択する場 合は、Distribute numprocs 属性を 1 より大きい値に設定する必要もあります。 clients 各クライアント接続は、独自のプロセスで実行されます。 ステートレスなアプリケーション(クライアント同士の通信が不要で、ライブストリームにアクセスするクライアント を持たないアプリケーション)に対してこの値を使用します。例えば、大半の VOD(ビデオオンデマンド)アプリケー ションは、各クライアントが他のすべてのクライアントとは無関係にコンテンツを再生するので、ステートレスです。 チャットアプリケーションやゲームアプリケーションは、すべてのクライアントがアプリケーションの状態を共有する ので、ステートレスではありません。例えば、共有チャットアプリケーションが clients に設定されていると、メッ セージは複数のプロセスに分割されてしまうので、一部のチャット参加者に届かなくなります。 例 <Distribute numproc="1"></Distribute> 関連項目 Scope、LifeTime、MaxFailures、RecoveryTime DuplicateDir 注意:この機能は使用されなくなりました。 これは、Application.xml ファイル内に存在する 2 つの DuplicateDir エレメントの 1 つです。1 つは SharedObjManager コ ンテナにあり、もう 1 つは StreamManager コンテナにあります。 共有オブジェクトまたは記録されたストリームのコピーが格納される物理的な場所を指定します。 この場所は、共有オブジェクトファイルおよび記録されたストリームファイルのバックアップとして機能します。この場所 は、共有オブジェクトのコピー時に既に存在している必要があります。 最終更新日 2010/9/8 135 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 バックアップファイルのためにパスにアプリケーション名を含める場合は、appName 属性を true に設定します。 <DuplicateDir appName="true">c:\backupSharedObjects</DuplicateDir> <DuplicateDir appName="true">c:\backupStreams</DuplicateDir> 関連項目 StorageDir Duration このエレメントは、ライブまたは記録されたオーディオストリームの途中でオーディオが停止した場合に、クライアントに 通知するまで待機する時間を秒単位で指示します。 デフォルトの待機時間は 3 秒です。最小の待機時間は 1 秒です。最大値は事実上ありません(32 ビット整数の最大値が最大 値となります)。 例 <Duration>3</Duration> 関連項目 Password Enabled メッセージキューの診断ロギングを有効にするかどうかを指定します。デフォルト値は false です。 関連項目 Diagnostic EnhancedSeek このエレメントは、キーフレームの作成によってストリームでのシークパフォーマンスを微調整する機能を有効または無効 にします。 キーフレームによって、シーク中のビデオファイルの画像表示が向上します。true に設定した場合、該当するインデックス ポイントへのスムーズなシークを可能にする新しいキーフレームが動的に生成されます。 注意:サーバーは、Sorenson Spark によりエンコードされた FLV ファイルの新しいキーフレームを生成します。On2 VP6 の場合、Flash Player 9a 以降で新しいキーフレームが算出および生成されます。H.264 でエンコードされたビデオの 場合、Flash Player 9 Update 3 以降で新しいキーフレームが算出および生成されます。 デフォルト値は true です。サーバーはキーフレームを挿入しないので、すべてのシークは最も近くにある既存のキーフレー ムの場所で開始します。 例 <EnhancedSeek>true</EnhancedSeek> 関連項目 keyFrameInterval 最終更新日 2010/9/8 136 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 EraseOnPublish true に設定した場合、新しいパブリッシュ元がパブリッシュを開始すると、サーバーは記録されたストリームを削除します。 この設定はデフォルトでは無効で、サーバーは記録されたストリームを削除しません。 関連項目 Live(StreamManager) Exception このエレメントは、特定のユーザーエージェントを認証の対象から除外することを示します。from 属性と to 属性を使用し て、除外するバージョンの範囲を指定します。すべての数値フィールドが同じ長さになるように編集されてから、文字列が 比較されます。 例えば、特定の Flash Player では、UserAgent として WIN 9,0,28,0 がレポートされるとします。To="WIN 9,0,28,0" およ び From="WIN 9,0,28,0" を追加すると、そのバージョンのみが除外されます。 関連項目 UserAgentExceptions FileObject コンテナエレメント。 Flash Media Server 4.0 以降、FileObject エレメントには、override 属性があり、デフォルトで "no" に設定されています。 override="no" が設定されていると、アプリケーションレベルの Application.xml ファイルは 仮想ホストレベルの Application.xml ファイルで定義された FileObject 用の VirtualDirectory 設定を変更できません。 このコンテナ内にネストされる VirtualDirectory エレメントは、ScriptEngine のファイルオブジェクト設定を指定します。 含まれるエレメント VirtualDirectory FinalHashTimeout このエレメントは、クライアントがサーバーへの最終的な検証を提供するために使用できる最大時間を指定します。 関連項目 SWFVerification FirstHashTimeout このエレメントは、クライアントがサーバーへの最初の検証を提供するために使用できる最大時間を指定します。 関連項目 SWFVerification 最終更新日 2010/9/8 137 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 FlushOnData データメッセージが到達したときにサーバーがメッセージキューを消去するかどうかを指定します。このエレメントは、ス トリーミングデータのみのメッセージで重要です。このエレメントにより、サーバーはメッセージを直ちに送信することが できます。デフォルト値は true です。 関連項目 Queue、MaxQueueSize、MaxQueueDelay、AccumulatedIFrames FolderAccess Access プラグインがストリームおよび共有オブジェクトへのアクセス用に設定できる権限のレベルを設定します。これによ り、特定のファイルへのアクセスのみを許可するファイルレベルのアクセス(false 値)、および特定のディレクトリへのア クセスを許可するフォルダーレベルのアクセス(true 値)の 2 つのレベルの権限が可能になります。 例 <FolderAccess>false</FolderAccess> 関連項目 Access HiCPU このエレメントは、CPU 使用率が CPU リソースの指定した比率を上回ったときにサンプルを結合するようにサーバーに指 示します。デフォルトの使用率は、80% です。 例 <HiCPU>80</HiCPU> 関連項目 Subscribers、LoCPU、MaxSamples Host このエレメントは、HTTP プロキシを特定します。Host エレメントの値は、ホスト名または IP アドレスです。ポート番号 は、Port エレメントにおいても指定できます。 例 <Host>www.example.com:8080</Host> 関連項目 Port、Type、Tunnel、Username、Password HTTP コンテナエレメント。 このセクション内のエレメントは、このアプリケーションのための HTTP 接続を設定します。 最終更新日 2010/9/8 138 FLASH MEDIA SERVER 4.0 設定および管理ガイド 139 XML 設定ファイルの参照 含まれるエレメント HTTP1_0、Verbose、Connections、Proxy、Redirect HTTP1_0 このエレメントは、サーバーが HTTP 1.0 プロトコルを使用できるかどうかを決定します。デフォルトは false で、HTTP 1.0 プロトコルの使用を許可していません。 例 <HTTP1_0>false</HTTP1_0> 関連項目 HTTP、Verbose、Connections、Proxy、Redirect HTTPTunnel コンテナエレメント。 このコンテナ内にネストされるエレメントは、HTTP トンネリング(HTTP を介した RTMP の送信)のためのパラメー ターを設定します。 トンネリングプロトコルは、サーバーに対して継続的にポーリングを実行するクライアントをベースにしています。ポーリ ングの頻度は、ネットワークパフォーマンスと HTTP プロトコルの効率の両方に影響します。IdleAckInterval エレメントと IdlePostInterval エレメントは、クライアントごとのポーリング間隔を制御します。これらのパラメーターに極端に低い遅延 値を選択すると、ポーリングの間隔は短くなり、ネットワークのパフォーマンスと効率が低下します。逆に、高い値を選択 すると、アプリケーションとサーバーの間のインタラクティビティが低下する可能性があります。 Application.xml 設定ファイルでは、これらのパラメーターのために 3 つの設定から選択できます。次の表は、これらの設 定について説明しています。 最大待ち時間 IdlePostInterval IdleAckInterval Low 128 ミリ秒 256 ミリ秒 Medium 512 ミリ秒 512 ミリ秒 High 1024 ミリ秒 1024 ミリ秒 例 <HTTPTunnel> <IdlePortInterval>512</IdlePostInterval> <IdleAckInterval>512</IdleAckInterval> <MimeType>application/x-fcs</MimeType> <WriteBufferSize>16</WritebufferSize> </HTTPTunnel> 含まれるエレメント IdlePostInterval、IdleAckInterval、MimeType、WriteBufferSize IdleAckInterval クライアントが送信したアイドル状態のポストに対してサーバーが ack(承認コード)を返信するまでの最大待機時間を指 定します。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 このクライアントに返信するデータがある場合や、他のクライアントがアイドル要求によってブロックされている場合、こ のエレメントの値に達する前にサーバーが応答することもあります。 つまり、この値で選択された時間にわたって、クライアントはサーバーに接続できない可能性があるこということになりま す。間隔に負の値を設定することはできません。 デフォルトの間隔は 512 ミリ秒です。 例 <IdleAckInterval>512</IdleAckInterval> 関連項目 IdlePostInterval、MimeType、WriteBufferSize IdlePostInterval アイドル状態のポストをサーバーに送信するまでの Flash Player の待機時間を指定します。 アイドル状態のポストは、Flash Player に送信すべきデータがないものの、クライアントへのデータのダウンストリーム送 信の機会をサーバーに提供するためにポスティングすることが必要な場合に送信されます。 アイドル状態のポストの配信間隔は、0 ∼ 4,064 ミリ秒の間になります。この範囲外の値を IdlePostInterval エレメントに設 定すると、デフォルト値の 512 ミリ秒が使用されます。 注意:選択した時間中、サーバーは、クライアントにいかなるデータも送信することができません。 例 <IdlePostInterval>512</IdlePostInterval> 関連項目 IdleAckInterval、MimeType、WriteBufferSize Interface このエレメントは、外部へのネットワークインターフェイスとして使用する名前を定義します。 この名前には、インターフェイス名、IP アドレス、ホスト名のいずれも使用できます。 例 <Interface>www.example.com</Interface> 関連項目 MaxTimeOut(Connections)、Reuse Interval ライブストリームにオーディオがパブリッシュされていない場合に無音メッセージを送信する間隔をミリ秒単位で指定しま す。 無音メッセージは、以前のバージョンの Flash Player をサポートするために使用されます。サーバーは、Client セクション の UserAgent エレメントで指定されたクライアントにのみ無音メッセージを送信します。無音メッセージの制御のためには、 ビットフラグ 0x01 が使用されます。 デフォルト値は 3 秒です。無音メッセージの送信を無効にするには、このエレメントを 0 に設定します。 最終更新日 2010/9/8 140 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <Interval>3</Interval> 関連項目 SendSilence JSEngine 使用できるバージョン Flash Communication Server 1 Flash Media Server 4 では、このエレメントは使用されなくなりました。ScriptEngine を参照してください。 使用できるバージョン コンテナエレメント。 このコンテナ内にネストされるエレメントは、JavaScript エンジンを設定します。 JSEngine エレメントでは、サーバーサイドの Application オブジェクトのプロパティを定義できます。デフォルトの Application.xml ファイルでプロパティを定義すると、仮想ホスト上のすべてのアプリケーションで使用可能なプロパティ が作成されます。アプリケーションフォルダー内の Application.xml ファイルでプロパティを定義すると、そのアプリケー ションでのみ使用可能なプロパティが作成されます。 プロパティを定義するためには、XML タグを作成します。プロパティ名はタグ名に対応し、プロパティの値はタグの内容 に対応します。 例 次の XML は、プロパティ user_name と dept_name を、値 jdoe と engineering でそれぞれ定義しています。 <JSEngine> <config> <user_name>jdoe</user_name> <dept_name>engineering</dept_name> </config> </JSEngine> サーバーサイドコードのプロパティにアクセスするには、次の例のいずれかのシンタックスを使用します。 application.config.prop_name application.config["prop_name"] 注意:定義対象のプロパティには、application.property ではなく application.config.property からアクセスできます。 含まれるエレメント RuntimeSize、MaxGCSkipCount、MaxTimeOut(JSEngine and ScriptEngine)、ScriptLibPath、FileObject、XMLSocket、 NetConnection(ScriptEngine) keyFrameInterval このエレメントは、FLV ファイルでキーフレームを生成し、保存する間隔を定義します。 初期値は、推奨値である 60,000 です。ただし、このタグを指定しない場合、または範囲外の値を設定した場合、サーバー は 1,000 をデフォルト値として使用します。このエレメントに初期値より大きい値を設定すると、FLV ファイルに追加され るキーフレーム数が少なくなり、その結果ファイルサイズが縮小されます。ただし、このような高めの値の設定では、シー クの正確性が低下します。このエレメントの値は、ミリ秒単位で定義します。 最終更新日 2010/9/8 141 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例えば、KeyFrameInterval エレメントを 5,000 に設定している場合、ファイルサイズ 76 KB の 15 秒のビデオは、わずか 13 KB つまり 17% だけの増加で 89 KB になります。KeyFrameInterval エレメントを 1,000 に設定している場合は、サイズが 109 KB のビデオは、33 KB つまり 43% 増加することなります。 注意:この値を設定するにあたっては、ファイルサイズとシークの正確性の相関関係に留意してください。 例 <KeyFrameInterval>1000</KeyFrameInterval> 関連項目 StorageDir、DuplicateDir、CacheUpdateInterval LifeTime コンテナエレメント。 このエレメントは、コアプロセスの存続時間を決定します。このようなプロセスをロールオーバーするには、このエレメン トを 0 以外の値に設定します。 プロセスがロールオーバーされるのは、Scope エレメントが inst に設定されている場合のみです。 含まれるエレメント MaxCores、rollOver Live(StreamManager) コンテナエレメント。 このコンテナにネストされたエレメントは、ライブストリームの中間フレーム、メッセージキュー、他のパブリッシュ元に ライブストリームを引き継ぐことを許可するまでサーバーが待機する時間を設定します。 含まれるエレメント AccumulatedIFrames、Queue、PublishTimeout、StartClockOnPublish、MaxLatency、EraseOnPublish、AssumeAbsoluteTime Live(MsgQueue) コンテナエレメント。 このコンテナ内にネストされるエレメントは、ライブオーディオを設定します。 含まれるエレメント MaxAudioLatency、MinBufferTime(Live) LoadOnStartup このエレメントは、サーバーの起動時にサーバーがアプリケーションインスタンスをロードするかどうかを決定します。 サーバーの起動時にアプリケーションインスタンスをロードすることで、最初のクライアントがそのアプリケーションに接 続する時間を短縮できます。デフォルト値は false です。 このエレメントを true に設定すると、サーバー上の各アプリケーションのインスタンスは起動時にロードされます。 最終更新日 2010/9/8 142 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <LoadOnStartup>false</LoadOnStartup> 関連項目 Process、MaxAppIdleTime、JSEngine、StreamManager LockTimeout 更新を待つクライアントがある場合に、共有オブジェクトを自動的にアンロックするまでのタイムアウト値を指定します。 タイムアウト値は、秒単位で指定します。デフォルト値は -1 で、サーバーに制限なく待つように指示します。 例 <LockTimeout>-1</LockTimeout> 関連項目 StorageDir、DuplicateDir、ResyncDepth、AutoCommit、MaxProperties、MaxPropertySize LoCPU このエレメントは、CPU 使用率が CPU リソースの指定した比率を下回ったときにサンプルの結合を停止するようにサー バーに指示します。デフォルトの使用率は、60% です。 例 <LoCPU>60</LoCPU> 関連項目 Subscribers、HiCPU、MaxSamples Logging コンテナエレメント。 サーバーログを制御するエレメントを格納します。 含まれるエレメント Access(Logging) LogInterval サーバーがチェックポイントイベントをロギングする間隔。 関連項目 Checkpoints Max このエレメントは、許可されるリダイレクトの最大数を定義します。 最終更新日 2010/9/8 143 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 Allow MaxAggMsgSize 集約メッセージが有効なときにメッセージキューから作成される集約メッセージの最大サイズをバイト単位で指定します。 デフォルト値は 4096 です。 関連項目 Queue、MaxQueueSize、MaxQueueDelay、FlushOnData、AccumulatedIFrames MaxAppIdleTime アプリケーションインスタンスがサーバーのメモリからアンロードされるまでに、接続するクライアントがないアイドル状 態のままで存続できる最大時間を指定します。 すべてのクライアントからの接続が解除されると、アプリケーションインスタンスはアイドルであると評価されます。接続 するクライアントなしでロードされたアプリケーションインスタンスは、アイドル状態とは見なされません。 最長アイドル時間は、秒単位で指定します。デフォルトは 600 秒(10 分)です。 例 <MaxAppIdleTime>600</MaxAppIdleTime> 関連項目 Process、LoadOnStartup、JSEngine、StreamManager、ApplicationGC MaxAudioLatency オーディオが指定の時間を超過した場合にライブオーディオを破棄することを指定します。時間はミリ秒単位で表示されま す。 例 <MaxAudioLatency>2000</MaxAudioLatency> 関連項目 MinBufferTime(Live) MaxBufferRetries ストリームデータのバッファーを開始する試行の最大数を指定します。この設定タグは、オリジンサーバーが配信していな いデータのバッファーを無期限に繰り返さないようにします。このタグはエッジサーバーでのみ適用できます。ほとんどの 場合、デフォルト値の 128 で十分です。 例 <MaxBufferRetries>128</MaxBufferRetries> 関連項目 StorageDir、DuplicateDir、CachePrefix、CacheUpdateInterval 最終更新日 2010/9/8 144 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxCores このエレメントの値は、アプリケーションあたりの存在可能なコアプロセスの数を決定します。 デフォルトでは、MaxCores 機能は無効になっています。デフォルト値は 0 です。コアプロセスの最大数の設定の詳細につい ては、24 ページの「アプリケーションをサーバープロセスに割り当てる方法の設定」を参照してください。 例 <MaxCores>0</MaxCores> 関連項目 LifeTime、rollOver MaxDuration 記録されるファイルの最大期間を秒単位で指定します。値 0 の場合は、記録が無効になります。値 -1 は、最大期間がないこ とを意味します。デフォルト値は -1 です。 DVR アプリケーションを展開してディスクがその容量を超えないようにするときは、このパラメーターを設定します。 注意:Authorization プラグインの F_STREAM_RECORD_MAXDURATION フィールドにより、この値が上書きされるこ とがあります。 関連項目 MaxDurationCap、MaxSizeCap、MaxSize (Recording) MaxDurationCap 記録されるファイルの最大期間の上限を秒単位で指定します。MaxDuration エレメントまたはサーバーサイド ActionScript で設定された値が、この値を上回ることはできません。値を 0 に設定すると、記録が無効になります。値 -1 に設定すると、 最大期間の上限が削除されます。デフォルト値は -1 です。 これにより、ISP が顧客のアプリケーションをホストできるため、顧客が MaxDuration 制限を不正使用することがなくなり ます。例えば、顧客はアプリケーションに任意の MaxDuration を設定できますが、ISP により設定された MaxDurationCap を超えることはできません。 注意:Authorization プラグインの F_STREAM_RECORD_MAXDURATION フィールドにより、この値が上書きされるこ とがあります。 関連項目 MaxDuration、MaxSizeCap、MaxSize (Recording) MaxGCSkipCount JS エンジンがビジーのときにサーバーがガベージコレクション(GC)をスキップする最大回数を指定します。このエレメ ントは、ガベージコレクションプロセスの頻度を決定します。 デフォルトでは、JS エンジンがビジーでない場合にのみ、サーバーはガベージコレクションを実行します。ただし、JS エン ジンはビジーの場合に必ずしもガベージコレクションを実行するわけではありません。場合によっては、JS エンジンの状態 にかかわらずガベージコレクションを実行することをサーバーに強制する必要があります。MaxGCSkipCount を 0 に設定 した場合、サーバーは JS エンジンの状態にかかわらずガベージコレクションを強制します。MaxGCSkipCount に正の値を 設定した場合、スキップ数が MaxGCSkipCount の値を超えると、サーバーはガベージコレクションを強制します。 最終更新日 2010/9/8 145 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <MaxGCSkipCount>-1</MaxSGCSkipCount> 関連項目 RuntimeSize、MaxTimeOut(JSEngine and ScriptEngine)、ScriptLibPath,FileObject、XMLSocket、NetConnection (ScriptEngine) MaxFailures このエレメントの値は、コアプロセスが無効になるまでに発生するコアプロセス障害の最大数を決定します。 一度コアプロセスが無効になると、サーバーは復旧までの最低時間が経過するまでコアプロセスを起動しません。復旧まで にタイムラグを設けることで、障害のあるコアが独自に繰り返し起動することによってすべての CPU リソースを消費する 場合に発生する可能性があるサービス妨害(denial-of-service)アクションを回避できます。 例 <MaxFailures>2</MaxFailures> 関連項目 Scope、Distribute、LifeTime、RecoveryTime MaxIdleTime サーバーが接続を閉じるまで、クライアントがアイドル状態を維持できる最大時間。この値は、デフォルトでは Server.xml ファイルで設定します。Vhost.xml ファイルに値を設定すると、Server.xml ファイルに設定されている値よりもこちらの 値が優先されます。Application.xml ファイルに値を設定すると、Vhost.xml ファイルに設定されている値よりもこちらの 値が優先されます。 関連項目 AutoCloseIdleClients MaxInitDelay SWF ファイルの処理に使用できる最大秒数。デフォルト値は 5 秒です。 例 <MaxInitDelay>5</MaxInitDelay> 例 SWFVerification MaxLatency ライブストリーム内の着信メッセージの最大遅延時間(ミリ秒)。サーバー側のスクリプトがライブストリームにデータメッ セージを挿入した場合、この設定によって、メッセージのタイプスタンプが決定されます。挿入時間が MaxLatency より大 きい場合、サーバーにより、最後のメッセージの時間と挿入時間の時差がデータメッセージのタイムスタンプに追加されま す。それ以外の場合、タイムスタンプは最後のメッセージの時間になります。デフォルト値は 500 です。最小値は 0 です。 関連項目 Live(StreamManager) 最終更新日 2010/9/8 146 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxMessageSizeLosslessVideo 画面共有できるメッセージの最大サイズを指定します。 例 <MaxMessageSizeLosslessVideo>0</MaxMessageSizeLosslessVideo> 関連項目 OutChunkSize、AccumulatedIFrames、Access、userAgent MaxPendingDebugConnections 保留中のデバッグ接続の最大数を指定します。デフォルトは 50 です。この値を 0 に設定した場合、デバッグ接続は無効に なります。 指定した値に達すると、最も古い保留中のデバッグ接続の領域作成が拒否されます。 例 <MaxPendingDebugConnections>50</MaxPendingDebugConnections> 関連項目 AllowDebugDefault MaxProperties 各共有オブジェクトのプロパティの最大数。無制限を指定するには、-1 を使用します。 例 <MaxProperties>-1</MaxProperties> 関連項目 StorageDir、DuplicateDir、ResyncDepth、LockTimeout、AutoCommit、MaxPropertySize MaxPropertySize 共有オブジェクトの各プロパティの最大サイズ(バイト)。サイズを無制限に指定するには、-1 を使用します。 例 <MaxPropertySize>-1</MaxPropertySize> 関連項目 StorageDir、DuplicateDir、ResyncDepth、LockTimeout、AutoCommit、MaxProperties MaxQueueDelay サーバーがメッセージキューを消去する頻度をミリ秒単位で指定します。デフォルト値は 500 ( 秒 ) です。 関連項目 Queue、MaxQueueSize、FlushOnData、AggregateMessages(Queue) 最終更新日 2010/9/8 147 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxQueueSize サーバーがメッセージキューを消去する頻度をバイト単位で指定します。値を 0 にすると、キューは無効になります。デ フォルト値は 4096 です。 関連項目 Queue、MaxQueueDelay、FlushOnData、AggregateMessages(Queue) MaxRate サーバーがクライアントにデータを送信する最大レートを Kbps 単位で指定します。デフォルト値は -1 です。この場合、ス ロットルなしで帯域幅を測定するために必要な任意のレートでデータが送信されます。 例 <MaxRate>-1</MaxRate> 関連項目 DataSize、MinBufferTime(Live) MaxSamples 1 つのメッセージに結合することのできる最大サウンドサンプル数を指定します。 デフォルトのサンプル数は 4 です。 関連項目 Audio MaxSize(AccumulatedIFrames) ライブストリームがバッファー内で保持できる中間フレームの最大サイズをキロバイト単位で指定します。 バッファーには、最後のキーフレームまでのビデオメッセージの履歴が格納されます。これにより、メッセージがキーフ レーム間で結合する場合でも、クライアントは最も新しいメッセージを見つけることができます。バッファーサイズが MaxSize より大きい場合、サーバーはメッセージを消去します。この設定により、バッファーが大きくなりすぎることが回 避されます。この値には、キーフレーム間の中間フレームの合計サイズよりも大きい値を設定する必要があります。デフォ ルト値の -1 は、中間フレームのサイズが無制限であることを意味します。 例 <MaxSize>-1</MaxSize> 関連項目 Subscribers、LoCPU、HiCPU MaxSize (Recording) 記録されるファイルの最大サイズを KB 単位で指定します。値 -1 は、最大サイズがないことを意味します。値 0 の場合は、 記録が無効になります。デフォルト値は -1 です。 DVR アプリケーションを展開してディスクがその容量を超えないようにするときは、このパラメーターを設定します。 最終更新日 2010/9/8 148 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 注意:Authorization プラグインの F_STREAM_RECORD_MAXSIZE フィールドにより、この値が上書きされることがあり ます。 関連項目 MaxSizeCap、MaxDuration、MaxDurationCap MaxSizeCap 記録されるファイルの最大サイズの上限を KB 単位で指定します。値 -1 は、最大サイズがないことを意味します。値 0 の場 合は、記録が無効になります。デフォルト値は -1 です。 これにより、ISP が顧客のアプリケーションをホストできるため、顧客が MaxSize 制限を不正使用することがなくなります。 例えば、顧客はアプリケーションに任意の MaxSize を設定できますが、ISP により設定された MaxSizeCap を超えることはで きません。 注意:Authorization プラグインの F_STREAM_RECORD_MAXSIZE フィールドにより、この値が上書きされることがあり ます。 関連項目 MaxSize (Recording)、MaxDuration、MaxDurationCap MaxStreamsBeforeGC ストリームリストが設定値を超えて拡大した場合にガベージコレクション(GC)を強制することを指定します。初期設定 値は 1 です。ガベージコレクションは、アプリケーションのガベージコレクションの間隔で実行されます。 例 <MaxStreamsBeforeGC>-1</MaxStreamsBeforeGC> 関連項目 StorageDir、DuplicateDir、CachePrefix、CacheUpdateInterval、MaxBufferRetries MaxTime ライブストリームがバッファー内で保持できる中間フレームの最大期間を秒単位で指定します。 バッファーには、最後のキーフレームまでのビデオメッセージの履歴が格納されます。これにより、メッセージがキーフ レーム間で結合する場合でも、クライアントは最も新しいメッセージを見つけることができます。バッファー内の期間が MaxTime より大きい場合、サーバーはメッセージを消去します。この設定により、バッファーが大きくなりすぎることが回 避されます。この値には、キーフレーム間隔よりも大きい値を設定する必要があります。デフォルト値の -1 は、期間が無制 限であることを意味します。 例 <MaxTime>-1</MaxTime> 関連項目 RuntimeSize、MaxGCSkipCount、ScriptLibPath、FileObject、XMLSocket、NetConnection(ScriptEngine) MaxTimeOut(Connections) このエレメントは、送信が完了するまでの最大時間を定義します。デフォルト値は 60 秒です。 最終更新日 2010/9/8 149 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 DNS 参照などの操作には長めの時間が必要な場合があります。このエレメントの値が極端に低い場合、適切に機能してい る操作を途中終了するリスクが高まります。 例 <MaxTimeOut>60</MaxTimeOut> 関連項目 Reuse、Interface MaxTimeOut(JSEngine and ScriptEngine) 注意:Flash Media Server 4 では、JSEngine エレメントは使用されなくなり、ScriptEngine エレメントに置き換えられていま す。 JavaScript(サーバーサイド ActionScript)関数を実行するためにスクリプトに与えられる最大時間(秒)。実行において 許可される最大時間を超過すると、そのスクリプトはランナウェイであると評価され、その実行は終了されます。スクリプ ト実行に最大時間を設定することで、スクリプトで制限のないルーピングが実行されることを回避できます。 デフォルト値は 0 です。この設定では、ランナウェイスクリプトを検出するチェックは実行されません。デバッグ環境にお いては、この設定が都合がよいでしょう。本番環境では、アプリケーションとスクリプトを徹底的にテストした上で、スク リプトの実行に必要な現状に即した値をこのエレメントに設定する必要があります。 例 <MaxTimeOut>0</MaxTimeOut> 関連項目 RuntimeSize、MaxGCSkipCount、ScriptLibPath、FileObject、XMLSocket、NetConnection(ScriptEngine) MaxUnprocessedChars XMLSocket が接続を閉じる前に、(終了タグを受信することなく)XML サーバーから受信できるデータ量を指定します。 XML.maxUnprocessedChars プロパティを指定すると、この値を無効にして各 XMLSocket について値を指定することができ ます。ただし、その数値をこのエレメントで指定されている値より大きい値にすることはできません。 例 <MaxUnprocessedChars>4096</MaxUnprocessedChars> 関連項目 XMLSocket MaxUrlLength URL の最大長をバイト単位で定義します。ほとんどの最新ブラウザでは、URL の長さを 64 KB までサポートしています。 デフォルト値は 32 KB です。最大許容値は 1000 KB です。 このエレメントを使用して、SSAS が開始した外部への NetConnection URL の長さを制限します。外部からの要求には、 Server.xml ファイル内の MaxUrlLength エレメントを使用します。 例 <MaxUrlLength>65536</MaxUrlLength> 最終更新日 2010/9/8 150 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 Client MaxWait このエレメントは、サーバーがクライアントにデータを送信するまでの待機時間を秒単位で指定します。 この値を大きくすると、より正確な帯域幅の数値を得ることができますが、クライアントの待機時間が長くなります。 例 <MaxWait>4096</MaxWait> 関連項目 MaxRate、DataSize MimeType トンネル応答で送信されるデフォルトの MIME(Multi-purpose Internet Mail Extensions)タイプヘッダーを指定しま す。 サーバーは、通常、外部からの要求が指定する MIME タイプを使用します。サーバーは、外部からの要求から MIME タイ プを決定できない場合に限って、MIMEType エレメントの情報を使用します。 例 <MimeType>application/x-fcs</MimeType> 関連項目 IdleAckInterval、IdlePostInterval、WriteBufferSize MinBufferTime(Live) ライブオーディオおよびライブビデオのキューのデフォルトバッファー長をミリ秒単位で指定します。 例 <MinBufferTime>2000</MinBufferTime> 関連項目 MaxAudioLatency MinBufferTime(Recorded) オーディオおよびビデオのデフォルトバッファー長をミリ秒単位で指定します。Flash Player で、この値を下回る値は設定 できません。 例 <MinBufferTime>2000</MinBufferTime> 関連項目 Recorded 最終更新日 2010/9/8 151 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MinGoodVersion サーバーにより許可される SWF 検証の最小バージョンを指定します。デフォルト値は 0 で、現行および将来のすべての バージョンが許可されます。 例 <MinGoodVersion>0</MinGoodVersion> 関連項目 SWFFolder、UserAgentExceptions MinQueuedVideo ストリームの開始時に、キューに格納されるビデオメッセージの最小数。H.264 またはその他のパイプラインコーデックを 使用するストリームは再生を開始するにはメッセージが必要です。この設定によって、バッファーの設定にかかわらず、迅 速に再生を開始できるメッセージを十分な数確保できます。この値を 64 未満に設定すると、FPS が低いコンテンツは開始 までに遅延が発生することがあります。デフォルト値は 64 です。 関連項目 Server MsgQueue コンテナエレメント。 このコンテナ内にネストされるエレメントは、ライブオーディオおよび記録されたオーディオを設定します。 含まれるエレメント Live(MsgQueue)、Recorded、Server NetConnection(ScriptEngine) コンテナエレメント。 このコンテナにネストされたエレメントは、Server-Side ActionScript NetConnection で使用するデフォルトのオブジェ クトエンコードを指定します。 含まれるエレメント ObjectEncoding NetConnection(RPC) NetConnection RPC に対して許可されるメソッドをリストできます。リストされていないメソッドはすべてブロックされ ます。 クライアントが NetConnection オブジェクトを作成し、そのオブジェクトの SSAS クライアントクラスメソッドを呼び出 そうとする場合、呼び出しが成功するにはこのセクションでメソッドが明示的に許可されている必要があります。 メソッドを追加するには、<Method><Allow> サブエレメント内のカンマで区切ったメソッド名のリストを使用します。 デフォルトでは、NetConnection RPC に対して onStatus メソッドが許可されます。 最終更新日 2010/9/8 152 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント メソッド 例 <NetConnection> <Method> <Allow>onStatus</Allow> </Method> </NetConnection> 関連項目 Stream、SharedObject、Client(RPC) 使用できるバージョン Flash Media Server 4 NotifyAudioStop コンテナエレメント。 このコンテナ内にネストされる Duration エレメントは、ストリーム上で自動送信終了を検出した場合にサーバーに通知する かどうかを決定します。 例 <NotifyAudioStop enabled="false"></NotifyAudioStop> 含まれるエレメント Duration ObjectEncoding SSAS NetConnection で使用するオブジェクトエンコードを指定します。これは、AMF0 または AMF3 のいずれかです。デ フォルトは AMF3 です。 AMF0 の場合は 0、AMF3 の場合は 3 のどちらかに NetConnection.objectEncoding プロパティを設定すると、個々の NetConnection に対するデフォルト値を更新できます。 例 <ObjectEncoding>AMF3</ObjectEncoding> 関連項目 NetConnection(ScriptEngine) OutChunkSize このアプリケーションのすべてのストリームで使用する RTMP ブロックサイズをバイト単位で指定します。サーバーは、 ストリームコンテンツをこのサイズのブロックに分割します。この値を大きくすると CPU の使用率が減少しますが、狭い 帯域幅の接続で大きな書き込みを行うことにより他のコンテンツが遅延する可能性もあります。最小値は 128 バイト、最大 値は 65,536 バイトです。デフォルト値は 4096 です。 古いクライアントでは、1,024 バイトより大きいブロックサイズはサポートされない場合があります。このようなクライア ントでサポートできるサイズよりブロック設定が大きい場合、ブロック設定は 1,024 バイトに限定されます。 最終更新日 2010/9/8 153 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <OutChunkSize>4096</OutChunkSize> 関連項目 Bandwidth、BandwidthCap、BandwidthDetection、MsgQueue、HTTPTunnel、MaxMessageSizeLosslessVideo OverridePublisher 使用されなくなりました。PublishTimeout エレメントを参照してください。 ストリームが別のクライアントにより既にパブリッシュされている場合に、第 2 のクライアントでライブストリームの所有 権を引き継ぐことができるかどうかを指定します。デフォルト値は false です。true に設定した場合は、ストリーム名の衝突 を回避するためのアプリケーションロジックを追加します。 例 <OverridePublisher>true</OverridePublisher> 関連項目 Audio、Live(StreamManager)、SendDuplicateStart、SendDuplicateOnMetaData Password プロキシへの接続のためのパスワードを指定します。 関連項目 Host、Port、Type、Tunnel、Username Port Host エレメントでホストの一部として指定されていないプロキシポートに接続する場合に、そのプロキシポートを指定しま す。 関連項目 Host、Password、Type、Tunnel、Username Prioritization 外部へのメッセージをサーバー間接続経由で送信する場合に、メッセージタイプによる優先付けを行うかどうかを指定しま す。この設定は、マルチポイントパブリッシュに関連します。デフォルトでは、Prioritization は false に設定されます。こ れは、リモートサーバーへのメッセージのパブリッシュでサーバーサイド NetStream オブジェクトが使用される場合に考 えられる待ち時間を回避するための適切な設定です。メッセージは、1 つのチャネルを通じて送信され、すべてのメッセー ジが同じプライオリティを持ちます。 この値を true に設定した場合、サーバーは複数のチャネルを通じてメッセージを送信し、次のメッセージタイプに基づいて メッセージに優先度を付けます(1 が最も高いプライオリティを持ちます)。 1 データ 2 オーディオ 3 Video 最終更新日 2010/9/8 154 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 Server Process コンテナエレメント。 このコンテナ内にネストされるエレメントは、コアプロセスの管理方法を決定します。 次の表は、含まれるエレメントについて説明しています。 値 説明 Scope アプリケーションインスタンスをコアプロセスに割り当てるレベルを指定します。スコープは包含関係にあり、厳密に 順序付けされています。アダプターには仮想ホストが含まれ、仮想ホストにはアプリケーションが含まれ、アプリケー ションにはインスタンスが含まれ、インスタンスにはクライアントが含まれます。 Distribute アプリケーションインスタンスをプロセスに分配する方法を指定します。Distribute タグの値のスコープは、Scope タグ の値よりも順序が低い必要があります(例えば、Scope の値が adaptor の場合、Distribute の値は vhosts、apps、insts または clients にすることができます)。配信は、numproc を 0 または 1 に設定することによりオフにできます。 LifeTime コアプロセスの存続時間を指定します。プロセスがロールオーバーされるのは、Scope エレメントが inst に設定されて いる場合のみです。 MaxFailures このエレメントの値は、コアプロセスが無効になるまでに発生するコアプロセス障害の最大数を決定します。 RecoveryTime コアの復旧までの時間を指定します。 含まれるエレメント Scope、Distribute、LifeTime、MaxFailures、RecoveryTime, Proxy コンテナエレメント。 このコンテナ内にネストされるエレメントは、HTTP プロキシ設定を指定します。 含まれるエレメント Host、Port、Type、Tunnel、Username、Password PublishTimeout 別のクライアントが同じストリームへのパブリッシュを試みたときに、パブリッシュする側からの応答を受信するまでサー バーが待機する時間をミリ秒単位で指定します。 クライアントが別のクライアントによりパブリッシュされている同じライブストリームにパブリッシュを試みると、Flash Media Server は最初のパブリッシュ元に ping メッセージを送信し、応答を受信するまで待機します。このタグで指定され た時間内に最初のパブリッシュ元が応答しなければ、サーバーは第 2 のパブリッシュ元にライブストリームを引き継ぐこと を許可します。デフォルト値は 2000 秒です。サーバーが最初のクライアントに ping メッセージを送信しないようにするに は、このタグの値を -1 に設定してこの設定を無効にします。 このタグは、OverridePublisher タグに代わるものです。 QualifiedStreamsMapping 仮想ストリームパスを別の物理的な場所にマッピングできるようにします。このタグは、Authorization プラグインを使用 している場合に適用できます。 最終更新日 2010/9/8 155 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 クライアントがストリームの再生を要求すると、Authorization プラグインで E_FILENAME_TRANSFORM イベントが発生 します。Authorization プラグインコードの F_STREAM_PATH プロパティで、クライアントごとに個別にストリームを マッピングすることができます。 例えば、クライアント 1 とクライアント 2 の両方が myStream.flv の再生を要求するとします。クライアント 1 用の c:\video1\myStream.flv と、クライアント 2 用の c:\video2\myStream.flv に、このストリームを再マッピングすることが できます。 Queue コンテナエレメント。メッセージキューを設定するエレメントを格納しています。メッセージキューは、サーバーがサブス クライブ元にブロックでメッセージを送信できるように、パブリッシュ元からの着信メッセージをバッファー処理する目的 で使用されます。キューを無効にして、個々のメッセージがサブスクライブ元に直ちに送信されるようにすることができま す。キューを無効にするには、enabled 属性を false に設定します。 含まれるエレメント MaxQueueSize、MaxQueueDelay、FlushOnData、AggregateMessages(Queue) Recorded コンテナエレメント。 このコンテナにネストされるエレメントは、サーバーサイドストリームにより使用される、ライブバッファーへのバッ ファーの長さの縦横比を指定します。 含まれるエレメント MinBufferTime(Recorded) Recording コンテナエレメント。 このコンテナ内にネストされるエレメントは、サーバーにより記録されるファイルの期間とファイルサイズを指定します。 含まれるエレメント MaxDuration、MaxDurationCap、MaxSize (Recording)、MaxSizeCap RecoveryTime コアの復旧までの時間を指定します。 サーバーは、最低限の時間が経過するまではコアプロセスを起動しません。復旧までのタイムラグにより、障害のあるコア プロセスが独自に繰り返し起動することによってすべての CPU リソースを消費する場合に発生する可能性があるサービス 妨害(denial-of-service)アクションを回避できます。 コアプロセスの復旧までの時間は、秒単位で指定します。デフォルト値の 0 を設定すると、プロセス障害のためのチェック は一切無効になります。 注意:Flash Media Administration Server ツールまたは API を使ってアプリケーションをロードすると、このチェックは 実行されません。 例 <RecoveryTime>300</RecoveryTime> 最終更新日 2010/9/8 156 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 Scope、Distribute、LifeTime、MaxFailures Redirect コンテナエレメント。 このコンテナ内にネストされるエレメントは、HTTP 接続をリダイレクトするための設定を指定します。 含まれるエレメント Allow、Max、UnrestrictedAuth ResyncDepth このエレメントは、共有オブジェクトファイルを再同期化するようにサーバーに指示します。共有オブジェクトは、その バージョン番号がヘッドバージョンマイナス現在のバージョンより大きい場合に、再同期化されます。デフォルト値である -1 の場合、接続のたびに再同期化されたバージョンのファイルが送信されます。 例 <ResyncDepth>-1</ResyncDepth> 関連項目 StorageDir、DuplicateDir、LockTimeout、AutoCommit、MaxProperties、MaxPropertySize Reuse このエレメントは、各送信後にサーバーが明示的に HTTP 接続を閉じるかどうかを設定します。デフォルトでは、接続を再 使用します。このエレメントを false に設定すると、送信ごとに新しい接続を使用します。 例 <Reuse>true</Reuse> 関連項目 MaxTimeOut(Connections)、Interface rollOver サーバーが新しいコアプロセスを作成するまでにコアプロセスを使用できる時間を秒単位で指定します。 コアに対する制限時間に達すると、新しいコアがインスタンス化されます。すべての後続の接続は、新しいコアにダイレク トされます。 ロールオーバー機能は、デフォルトでは無効になっています。デフォルト値は 0 ( 秒 ) です。 ロールオーバープロセスの詳細に ついては、24 ページの「アプリケーションをサーバープロセスに割り当てる方法の設定」を参照してください。 例 <Rollover>0</RollOver> 関連項目 MaxCores 最終更新日 2010/9/8 157 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 RPC 各クラス向けに RPC を設定します。デフォルトでは、すべてのメソッドが拒否されます。各クラスに対して明示的にリス トされているメソッドのみが許可されます。このホワイトリストを使用する方法は、ブラックリストを使用するよりも安全 です。 含まれるエレメント NetConnection(RPC)、Stream、SharedObject、Client(RPC) 使用できるバージョン Flash Media Server 4 RuntimeSize 参照も使用もされていない JavaScript オブジェクトをサーバーが削除するまでに、特定のアプリケーションインスタンスが サーバーサイドの ActionScript コードを実行するために使用することのできる、JavaScript オブジェクトの最大サイズをキ ロバイト単位で指定します。 デフォルトサイズは、1,024 キロバイト(1 メガバイト)です。JavaScript エンジンの最小サイズは 10 キロバイトで、最大 サイズは 51,200 キロバイト(50 メガバイト)です。この範囲外のエンジンサイズが指定されると、デフォルト値が適用さ れます。 アプリケーションが大量のメモリを消費する場合には、エンジンサイズを増やす必要があります。アプリケーションインス タンスの実行時サイズがこのエレメントの値を超えるような新しいスクリプトオブジェクトを作成すると、メモリ不足エ ラーが発生し、アプリケーションインスタンスは終了されます。ほとんどの場合、エンジンサイズを 30,720(30 MB)に増 やすことで、集中的に使用されるサーバーサイドの ActionScript 操作の実行にも十分対応できます。 例 <RuntimeSize>1024</RuntimeSize> 関連項目 MaxGCSkipCount、MaxTimeOut(JSEngine and ScriptEngine)、ScriptLibPath、FileObject、XMLSocket、NetConnection (ScriptEngine) Scope このエレメントは、アプリケーションインスタンスをコアプロセスに割り当てるレベルを確定します。 Flash Media Server を起動すると、FMSMaster.exe(Windows)または fmsmaster(Linux)というプロセスが起動しま す。アプリケーションインスタンスは、FMSCore.exe(Windows)または fmscore(Linux)という名前のプロセスを実 行します。マスタープロセスは、必要に応じてコアプロセスを開始する監視機能です。一度に実行できるマスタープロセス は 1 つだけであるのに対し、コアプロセスは複数同時に実行できます。 仮想ホストフォルダー内の Application.xml ファイルの設定は、その仮想ホストで実行されるすべてのアプリケーションに 適用されます。アプリケーションのフォルダー内の Application.xml ファイルによる設定は、そのアプリケーションにのみ 適用されます。 次の表は、Scope エレメントで使用可能な値を示しています。 最終更新日 2010/9/8 158 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 値 説明 adaptor アダプター内のすべてのアプリケーションインスタンスが 1 つのプロセスでまとめて実行されます。 vhost 仮想ホスト内のすべてのアプリケーションインスタンスが 1 つのプロセスでまとめて実行されます。これがデフォルト 値です。 app 1 つのアプリケーションのすべてのインスタンスが 1 つのプロセスでまとめて実行されます。 inst 各アプリケーションインスタンスは、独自のプロセスで実行されます。この値を選択する場合は、Distribute numprocs 属性を 1 より大きい値に設定する必要もあります。 例 <Scope>vhost</Scope> 関連項目 Distribute、LifeTime、MaxFailures、RecoveryTime ScriptEngine 使用できるバージョン Flash Media Server 4 JSEngine エレメントを置き換えます。 説明 コンテナエレメント。 このコンテナ内にネストされるエレメントは、サーバーサイドスクリプトエンジンを設定します。 ScriptEngine エレメントでは、サーバーサイドの Application オブジェクトのプロパティを定義できます。デフォルトの Application.xml ファイルでプロパティを定義すると、仮想ホスト上のすべてのアプリケーションで使用可能なプロパティ が作成されます。アプリケーションフォルダー内の Application.xml ファイルでプロパティを定義すると、そのアプリケー ションでのみ使用可能なプロパティが作成されます。 プロパティを定義するためには、XML タグを作成します。プロパティ名はタグ名に対応し、プロパティの値はタグの内容 に対応します。 例 次の XML は、プロパティ user_name と dept_name を、値 jdoe と engineering でそれぞれ定義しています。 <ScriptEngine> <config> <user_name>jdoe</user_name> <dept_name>engineering</dept_name> </config> </ScriptEngine> サーバーサイドコードのプロパティにアクセスするには、次の例のいずれかのシンタックスを使用します。 application.config.prop_name application.config["prop_name"] 注意:定義対象のプロパティには、application.property ではなく application.config.property からアクセスできます。 最終更新日 2010/9/8 159 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント AdaptorId、RuntimeSize、MaxGCSkipCount、MaxTimeOut(JSEngine and ScriptEngine)、ScriptLibPath、FileObject、 XMLSocket、NetConnection(ScriptEngine) , Client ScriptLibPath load() メソッドによって main.asc ファイルにロードされたサーバーサイドスクリプトを検索するサーバーを指示する、セミ コロンで区切ったパスのリストです。 これらのパスは、ロード API を使ってロードされたスクリプトファイルを解決するために使用されます。サーバーは、ま ず、main.asc または application_name.asc ファイルが格納されている場所を探します。ここにスクリプトファイルが見 つからない場合には、スクリプトエンジンは、このエレメントに指定されているパスを順番に検索します。 例 <ScriptLibPath>${APP.JS_SCRIPTLIBPATH}</ScriptLibPath> 関連項目 RuntimeSize、MaxGCSkipCount、MaxTimeOut(JSEngine and ScriptEngine)、FileObject、XMLSocket、NetConnection (ScriptEngine) Client コンテナエレメント。 アプリケーションのセキュリティ機能を定義するエレメントを含みます。 含まれるエレメント MaxUrlLength、RPC 使用できるバージョン Flash Media Server 4 SendDuplicateOnMetaData play コマンドおよび seek コマンドが呼び出されたときに、ビデオファイルの先頭で onMetaData メッセージが送信されるか どうかを指定します。デフォルト値は true です。 次のチュートリアルを利用できます。 • true の場合は、play コマンドおよび seek コマンドの onMetaData を送信します。 • false:play コマンドでのみ onMetaData を送信します。 • once:Flash Media Server 1.x の動作に戻し、コマンドにかかわらず開始位置に基づいて onMetaData を送信します。開 始位置に onMetaData が検出されない場合、onMetaData は送信されません。 例 <SendDuplicateOnMetaData>true</SendDuplicateOnMetaData> 関連項目 SendDuplicateStart 最終更新日 2010/9/8 160 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 SendDuplicateStart play、seek、unpause を含むすべてのコマンドでステータスメッセージ NetStream.Play.Start を送信するかどうかを指定し ます。false に設定した場合、play コマンドのみで起動メッセージを受信します。 例 <SendDuplicateStart>true</SendDuplicateStart> 関連項目 SendDuplicateOnMetaData、OverridePublisher SendSilence コンテナエレメント。 このコンテナ内にネストされる Interval エレメントは、無音メッセージを送信するための設定を指定します。 含まれるエレメント Interval Server コンテナエレメント。 2 つのエレメントを格納しています。BufferRatio はライブバッファーへのサーバーサイドストリームで使用されるバッ ファーの長さの縦横比を指定し、Prioritization はサーバー間接続で外部への送信メッセージに優先付けを行うかどうかを指 定します。 含まれるエレメント BufferRatio、Prioritization ServerToClient(Bandwidth) クライアントにデータをダウンストリーム送信するためにサーバーが使用できる最大帯域幅を 1 秒あたりのバイト数で指定 します。 デフォルトの帯域幅は、250,000 バイト / 秒です。 この値は、XML の Bandwidth セクションと XML の BandwidthCap セクションで設定できます。Bandwidth セクションの値 は上書きできますが、BandwidthCap セクションの値は上書きできません。これにより、ISP が顧客のアプリケーションをホ ストできるため、顧客が帯域幅制限を不正使用することがなくなります。例えば、顧客はアプリケーションに任意の帯域幅 制限を設定できますが、ISP により設定された上限を超えることはできません。 例 <ServerToClient>250000</ServerToClient> 関連項目 ClientToServer(Bandwidth) 最終更新日 2010/9/8 161 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 ServerToClient(BandwidthCap) クライアントにデータをダウンストリーム送信するためにサーバーが使用することができる最大帯域幅を 1 秒あたりのバイ ト数で指定します。 デフォルトの帯域幅は、10,000,000 バイト / 秒です。 この値は、XML の Bandwidth セクションと XML の BandwidthCap セクションで設定できます。Bandwidth セクションの値 は上書きできますが、BandwidthCap セクションの値は上書きされません。これにより、ISP が顧客のアプリケーションをホ ストできるため、顧客が帯域幅制限を不正使用することがなくなります。例えば、顧客はアプリケーションに任意の帯域幅 制限を設定できますが、ISP により設定された上限を超えることはできません。 例 <ServerToClient>10000000</ServerToClient> 関連項目 ClientToServer(BandwidthCap) SharedObject SharedObject RPC に対して許可されるメソッドをリストできます。ここに明示的にリストされていないメソッドはすべて ブロックされます。 クライアントがリモート SharedObject にサブスクライブしており、SO.send() メソッドを使用して SSAS 上のリモートメ ソッドを呼び出そうとしている場合、それが成功するにはメソッドがここに明示的にリストされている必要があります。 メソッドを追加するには、<Method><Allow> サブエレメント内のカンマで区切ったメソッド名のリストを使用します。 デフォルトでは、SharedObject RPC に対するメソッド呼び出しをすべて許可しません。 含まれるエレメント メソッド 例 <SharedObject> <Method> <Allow>setFps</Allow> </Method> </SharedObject> 関連項目 NetConnection(RPC)、Stream、Client(RPC) 使用できるバージョン Flash Media Server 4 SharedObjManager コンテナエレメント。 このコンテナ内にネストされるエレメントは、アプリケーションの Shared Object Manager 設定を指定します。 含まれるエレメント StorageDir、DuplicateDir、ResyncDepth、LockTimeout、AutoCommit、MaxProperties、MaxPropertySize 最終更新日 2010/9/8 162 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 StartClockOnPublish ストリームの時間で、パブリッシュの時間と最初のストリームメッセージの到着時間の差異を区別するかどうかを指定しま す。デフォルト値は false です。 ダイナミックなマルチビットレートストリーミングを使用するには、この値を false のままにします。 関連項目 Live(StreamManager) StorageDir 共有オブジェクトまたはストリームが格納される物理的な場所を指定します。 デフォルトでは、物理的な場所は設定されていません。共有オブジェクトまたは記録されたストリームのファイルをアプリ ケーションディレクトリ以外の場所に格納する必要がある場合に限って、このエレメントを設定します。 例 <StorageDir>C:\myapp\sharedobjects\</StorageDir> <StorageDir>C:\myapp\streams\</StorageDir> 関連項目 DuplicateDir Stream ストリーム RPC に対して許可されるメソッドをリストできます。 メソッドを追加するには、<Method><Allow> サブエレメント内のカンマで区切ったメソッド名のリストを使用します。 デフォルトでは、ストリーム RPC に対してのみ onStatus メソッド呼び出しが許可されます。 含まれるエレメント メソッド 例 <Stream> <Method> <Allow>onStatus</Allow> </Method> </Stream> 関連項目 NetConnection(RPC)、SharedObject、Client(RPC) 使用できるバージョン Flash Media Server 4 StreamManager コンテナエレメント。 このセクション内のエレメントは、このアプリケーションの Stream Manager 設定を指定します。 最終更新日 2010/9/8 163 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント StorageDir、DuplicateDir、CachePrefix、CacheUpdateInterval、MaxBufferRetries、ThrottleBoundaryRequest、ThrottleLoads、 ThrottleDisplayInterval、EnhancedSeek、keyFrameInterval、MaxStreamsBeforeGC、Audio、Live(StreamManager)、 SendDuplicateStart、SendDuplicateOnMetaData、MaxSize (Recording)、MaxSizeCap、MaxDuration、MaxDurationCap Subscribers このエレメントは、ストリームにサブスクライブする側の数がデフォルト数を超える場合に限ってサウンドサンプルを結合 するようサーバーに指示します。サブスクライブする側のデフォルト数は 8 です。 例 <Subscribers>8</Subscribers> 関連項目 LoCPU、HiCPU、MaxSamples SWFFolder クライアント SWF ファイルのコピーを含む単一のフォルダー、またはセミコロンで区切ったフォルダーのリストを指定し ます。サーバーは、これらの SWF ファイルを、サーバー上のアプリケーションに接続するクライアントの SWF ファイルと 比較します。 SWFFolder エレメントのデフォルト値は、アプリケーションのフォルダーに /SWFs を追加した文字列です。複数のディレ クトリはセミコロンで区切ります。インスタンス名のフォルダーの下にある SWF ファイルは、該当する特定のインスタン スにのみ接続できます。 例 C:\applications\ にある myApplication という名前のアプリケーションでは、認証する SWF ファイルを C:\applications\myApplication\SWFs に配置する必要があります。 関連項目 MinGoodVersion、UserAgentExceptions SWFVerification コンテナエレメント。 アプリケーションへの SWF ファイルの接続を許可する前に、サーバーがクライアント SWF ファイルを検証する方法を指 定します。SWF ファイルを検証することによって、第三者が独自の SWF ファイルを作成してリソースをストリーミングす ることを防止するセキュリティ対策になります。詳細については、28 ページの「SWF ファイルの検証」を参照してくださ い。 注意:Flash Media Administration Server に接続している SWF ファイルは検証できません。 含まれるエレメント SWFFolder、MinGoodVersion、DirLevelSWFScan、MaxInitDelay、FinalHashTimeout、FirstHashTimeout、 UserAgentExceptions、Cache 最終更新日 2010/9/8 164 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 ThrottleBoundaryRequest 記録されたストリームあたりの同時限界要求の最大数を制御します。プロキシサーバーを経由してストリーミングするとき は、ビデオセグメントの境界情報が要求によりプロキシサーバーに送信されます。 デフォルト値は 8 です。 例 <ThrottleBoundaryRequest enable="false">8</ThrottleBoundaryRequest> 関連項目 ThrottleDisplayInterval、ThrottleLoads ThrottleDisplayInterval サーバーがスロットルキューの長さを表示する間隔を制御します。デフォルト値は 64 で、スロットルキューが一杯になっ たときにサーバーが 64 回に 1 回このメッセージを表示します。 例 <ThrottleDisplayInterva>64</ThrottleDisplayInterval> 関連項目 ThrottleBoundaryRequest、ThrottleLoads ThrottleLoads 記録されたストリームあたりの同時セグメントロードの最大数を制御します。プロキシサーバーを経由してストリーミング するときは、ビデオセグメントが要求によりプロキシサーバーに送信されます。デフォルト値は 8 です。 例 <ThrottleLoads enable="true">8</ThrottleLoads> 関連項目 ThrottleBoundaryRequest、ThrottleDisplayInterval Tunnel 特定の HTTP プロキシを介してすべての操作をトンネリングするかどうかを指定します。デフォルト設定は、false です。 例 <Tunnel>false</Tunnel> 関連項目 Host、Port、Type、Username、Password TTL 各 SWF ファイルがキャッシュ内に留まる時間を分単位で指定します。デフォルト値は 1,440 分(24 時間)です。 最終更新日 2010/9/8 165 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 Cache、UpdateInterval Type 接続されているプロキシのタイプを指定します。このエレメントの値は、HTTP または SOCKS5 です。デフォルト値は VideoAlign.CENTER です。 例 <Type>HTTP</Type> 関連項目 Host、Port、Tunnel、Username、Password UnrestrictedAuth 各 HTTP リダイレクトでユーザー名とパスワードの組み合わせを送信することを許可するかどうかを決定するブール値。 ユーザー名とパスワードの組み合わせの送信は、Allow エレメントによってリダイレクトが許可される場合に限って使用し ます。デフォルト値は true です。 例 <UnrestrictedAuth>true</UnrestrictedAuth> 関連項目 Allow、Max UpdateInterval キャッシュにミスがあるときに、サーバーが SWF フォルダーをスキャンして更新がないかどうかチェックするまでの最大 待機時間を分単位で指定します。デフォルト値は 5 です。 関連項目 Cache、TTL userAgent コンテナエレメント。 クライアントの設定は、Flash Player プラットフォームが Windows と Macintosh のいずれであるかによって変わります。 値 0x01 を設定すると、Player とプラットフォームで無音メッセージが有効になります。 含まれるエレメント Bits UserAgentExceptions コンテナエレメント。 認証の対象から除外するユーザーエージェントを指定するエレメントを格納しています。to 属性と from 属性を使用して、 除外するバージョンの範囲を指定します。 最終更新日 2010/9/8 166 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <UserAgentExceptions> <Exception to="WIN 9,0,28,0" from="WIN 9,0,28,0"</Exception> </UserAgentExceptions> 含まれるエレメント Exception Username エッジへの接続のためのユーザー名を指定します。 関連項目 Host、Port、Type、Tunnel、Password Verbose このエレメントは、HTTP 操作でサーバーが詳細情報を出力するかどうかを決定します。 例 <Verbose>false</Verbose> 関連項目 HTTP1_0、Connections、Proxy、Redirect VideoSampleAccess クライアントアプリケーションがストリーム内の生の非圧縮ビデオデータにアクセスすることを許可します。デフォルトで は、このエレメントは無効になっています。このエレメントを有効にするには、enable 属性を true に設定します。このタ グ内では、クライアントアプリケーションがアクセスできるフォルダーのリストをセミコロンで区切って指定します。この エレメントが有効な場合、すべてのクライアントは指定されたフォルダー内のストリーム内のビデオデータにアクセスでき ます。サーバーによってストリーミングされるすべてのビデオデータに対するアクセスを有効にするには、このタグで / を 指定します。 フォルダーパスはアプリケーションのストリームフォルダーに制限されるので、フォルダーのリスト内では絶対パスを使用 しないでください。 サーバーサイド ActionScript を通じたアクセスを有効にすることもできますが、このエレメントではサーバーサイド ActionScript を必要とすることなくデータにアクセスできます。また、Access プラグインまたはサーバーサイド ActionScript でこのエレメントを無効にすることもできます。 例 アプリケーションが C:\low_quality フォルダーと C:\high_quality フォルダーにストリームを格納するように設定されている 場合、このようなサンプルストリームへのアクセスを許可するには、次のように設定します。 <VideoSampleAccess enabled="true">low_quality;high_quality</VideoSampleAccess> 関連項目 AudioSampleAccess 最終更新日 2010/9/8 167 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 VirtualDirectory サーバーサイド ActionScript の File オブジェクトの仮想ディレクトリマッピングを指定します。 Application.xml ファイル内の File オブジェクトをマップする際に、Server.xml ファイル内で機能を有効にしていない場 合、次のメッセージがログに表示されます。 "Virtual directories for file objects is not supported due to the Server level security setting." VirtualDirectory エレメントは、FileObject エレメントに含まれています。FileObject エレメントには、override 属性があり、 このデフォルト値は "no" に設定されています。override="no" が設定されていると、アプリケーションレベルの Application.xml ファイルは 仮想ホストレベルの Application.xml ファイルで定義された FileObject 用の VirtualDirectory 設定を変更できません。 詳細については、Application.xml ファイル内のコメントおよび 47 ページの「仮想ディレクトリと物理ディレクトリ間の マッピング」を参照してください。 例 <VirtualDirectory>virtual_dir_name;physical_dir_path</VirtualDirectory> 関連項目 FileObject WindowsPerAck 相手側から確認を受け取るまでに送信できるメッセージの数を制御します。 注意:このエレメントの値は変更しないことをお勧めします。 WriteBufferSize 書き込みバッファーのサイズをキロバイト単位で指定します。デフォルトサイズは 16 KB です。 例 <WriteBufferSize>16</WriteBufferSize> 関連項目 IdlePostInterval、IdleAckInterval、MimeType XMLSocket コンテナエレメント。 XMLSocket が接続を閉じる前に、(終了タグを受信することなく)XML サーバーから受信できるデータ量を指定するエレメ ントを格納しています。XML.maxUnprocessedChars プロパティを指定すると、この値を無効にして各 XMLSocket を使用す ることができます。ただし、その数値をこのエレメントで指定されている値より大きい値にすることはできません。 例 <XMLSocket> <MaxUnprocessedChars>4096</MaxUnprocessedChars> </XMLSocket> 含まれるエレメント MaxUnprocessedChars 最終更新日 2010/9/8 168 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Logger.xml ファイル Logger.xml ファイルは、ロギングファイルシステムのための設定ファイルで、/conf ディレクトリの root レベルにありま す。Logger.xml には、ログファイルの設定に使用されるエレメントと情報が格納されています。ログファイルの格納場所な どの設定情報を追加または変更する場合には、このファイルを編集します。ログファイルのデフォルトの格納場所は、サー バーをインストールしたディレクトリ内の /logs ディレクトリです。 ログファイルは、英語で記述されます。ログファイルに表示されるフィールド名は英語です。ただし、ログファイル内の一 部分は、ファイル名とオペレーティングシステムの影響を受け、英語以外の言語になります。例えば Access.log ファイルで は、x-sname と x-suri-stem のカラムは、ストリーム名を示します。記録されたストリームの名前が英語以外の言語で記述さ れている場合、サーバーが英語環境のオペレーティングシステムで実行されていても、ログファイル内のストリーム名はそ の言語で記述されます。 Server.xml ファイルの Logging セクションは、ログファイルを有効または無効にします。 エレメントの構造とデフォルト値を確認するには、RootInstall/conf/ フォルダーにインストールされている Logger.xml ファイルを参照します。 注意:ログファイルローテーションを無効にすることはできません。ローテーションを結果的にオフにするには、最大サイ ズと最長継続時間に大きな値を設定します。 Access コンテナエレメント。 このコンテナ内にネストされるエレメントは、アクセスログ設定を指定します。 含まれるエレメント LogServer、directory、FileName、Time admin コンテナエレメント。 このコンテナ内にネストされるエレメントは、admin ログ設定を指定します。 含まれるエレメント LogServer Application コンテナエレメント。 このコンテナ内にネストされるエレメントは、アプリケーションログファイル設定を指定します。 含まれるエレメント directory、Time、Rotation AuthEvent コンテナエレメント。 このセクション内のエレメントは、AuthEvent ログファイルの設定を指定します。詳細については、 www.adobe.com/go/learn_fms_plugindev_jp の『プラグイン開発者ガイド』を参照してください。 最終更新日 2010/9/8 169 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント LogServer、directory、FileName、Time、Rotation、Events、Fields、Delimiter、QuoteFields、EscapeFields AuthMessage コンテナエレメント。 このセクション内のエレメントは、AuthMessage ログファイルの設定を指定します。詳細については、 www.adobe.com/go/learn_fms_plugindev_jp の『デベロッパーズガイド』を参照してください。 含まれるエレメント directory、Time、Rotation core コンテナエレメント。 このコンテナ内にネストされるエレメントは、core ログ設定を指定します。 含まれるエレメント LogServer Delimiter ログファイル内のフィールドを区切るための区切り文字として一重引用符(')を使用するかどうかを指定します。 区切り文字は、ログファイル内のフィールドを区切るために使用されます。シャープ記号(#)は、Logger.xml ファイルで コメントエレメントとして使用されるため、区切り文字として使用することは推奨されません。 次のキャラクタは、区切り文字として使用できません。 • 三重引用符(''') • ペアになった二重引用符("") • カンマ (,) • コロン (:) • ハイフン (-) 関連項目 directory、EscapeFields、QuoteFields Diagnostic コンテナエレメント。 このセクション内のエレメントは、診断ログファイルを設定します。 含まれるエレメント directory、Time、Rotation 最終更新日 2010/9/8 170 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 directory ログファイルが格納されるディレクトリを指定します。 デフォルトでは、ログファイルはサーバーをインストールしたディレクトリ内の logs ディレクトリに格納されます。 例 <Directory>${LOGGER.LOGDIR}</Directory> 関連項目 Time、Rotation DisplayFieldsHeader 表示形式エレメント。フィールドヘッダーを繰り返すまでに、ログファイルに何行書き込むかを指定します。デフォルトの 行数は 100 行です。 例 <DisplayFieldsHeader>100</DisplayFieldsHeader> 関連項目 Delimiter、EscapeFields、QuoteFields edge コンテナエレメント。 このコンテナ内にネストされるエレメントは、edge ログ設定を指定します。 含まれるエレメント LogServer EscapeFields 表示形式エレメント。このエレメントは、ログファイル内のフィールドに安全でないキャラクタが検出された場合に、その キャラクタをエスケープ処理するかどうかを制御します。このオプションのフラグは、enable または disable に設定できま す。デフォルトでは、enable に設定されています。 安全でないキャラクタとは、スペース、山カッコ(< >)、二重引用符(")、シャープ記号(#)、パーセント記号(%)、波 カッコ({ })、バー(|)、カラット記号(^)、波形ダッシュ(~)、角カッコ([ ])、アポストロフィ(')です。 例 <EscapeFields>enable</EscapeFields> 関連項目 LogServer、directory、FileName、Time、Rotation、Events、Fields、Delimiter および QuoteFields Events ログファイルに書き込むイベントを指定します。 最終更新日 2010/9/8 171 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 セミコロンで区切ったリストでイベントを指定します。キーワード * は、サーバーにすべてのイベントを記録するように指 示します。アクセスログファイルに記録されるイベントの一覧については、81 ページの「アクセスログで定義されるアクセ スイベント」を参照してください。 関連項目 Fields Fields イベントのためにアクセスログファイルに記録するフィールドを指定します。 フィールドは、アクセスログファイルに表示されるイベントに関連付けられています。フィールドを指定するには、ログ ファイルのイベントと関連付けられた 1 つ以上のフィールドをセミコロンで区切ってリストします。 キーワード * は、すべてのフィールドを記録するように指定します。データのないフィールドは空のままにします。ログ記 録されるフィールドとして、「type」、「category」、「date」、「time」フィールドを含めることをお勧めします。 Access ログファイルのイベントに関連付けられているフィールドの一覧については、83 ページの「アクセスログのフィー ルド」を参照してください。すべてのフィールドがログファイルの各イベントに関連付けられているわけではありません。 関連項目 Events FileIO コンテナエレメント。 このセクション内のエレメントは、File プラグインログファイルの設定を指定します。詳細については、 www.adobe.com/go/learn_fms_plugindev_jp の『プラグイン開発者ガイド』を参照してください。 含まれるエレメント directory、Time、Rotation FileName アクセスログファイルの名前を指定します。 アクセスログファイル名には、日付スタンプとバージョン番号が含まれます。Y はそのファイルが作成された年を示し、 YYYY の形式で表示します。M はファイルが作成された月を示し、M または MM のいずれの形式も使用できます。D は ファイルが作成された月の日付を示し、D または DD のいずれの形式も許可されています。N はファイルのバージョン番号 を示しています。バージョン番号に制限はありません。 文字の繰り返しは、桁数を表します。例えば、M は 4(4 月)を示します。MM は 04(4 月)を示します。 例 access.2007103043.log この例は、2007 年 10 月 30 日作成のアクセスログファイルのバージョン 43 を特定します。 関連項目 LogServer、directory、Time、Rotation、Events、Fields、Delimiter、QuoteFields および EscapeFields 最終更新日 2010/9/8 172 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 History 保持するログファイルの最大数を指定します。 ファイル名は、access.01.log、access.02.log、access.03.log という形式になります。保持するデフォルトのファイル数は 5 です。 例 <History>5<History> 関連項目 MaxSize、Schedule、Rename HostPort ログサーバーの IP とポートを指定します。 例 <HostPort>xxx.xxx.xxx.xxx:1234</HostPort> 関連項目 ServerID、DisplayFieldsHeader Logger ルートエレメント。 Logger エレメントは、Logger.xml 内の他のすべてのエレメントのコンテナになります。 LogServer コンテナエレメント。 このセクションにネストされるエレメントは、リモートログサーバーにメッセージを送信するようサーバーを設定します。 含まれるエレメント HostPort、ServerID、DisplayFieldsHeader master コンテナエレメント。 このコンテナ内にネストされるエレメントは、master ログ設定を指定します。 含まれるエレメント LogServer MaxSize ログファイルの最大サイズをバイト単位で指定します。デフォルトのファイルサイズは、10,240 KB(およそ 10 MB)で す。 最終更新日 2010/9/8 173 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <Maxsize>10240</MaxSize> 関連項目 Schedule、History、Rename QuoteFields 表示形式エレメント。ログファイル内のスペースを含むフィールドを囲むのに引用符を使用するかどうかを指定します。 このエレメントは、enable または disable に設定できます。デフォルトでは、disable に設定されています。 例 <QuoteFields>disable</QuoteFields> 関連項目 LogServer、directory、FileName、Time、Rotation、Events、Fields、Delimiter、EscapeFields Rename ローテーションを実行するときのログファイルの新しい名前を指定します。デフォルト値は true です。 Rename を true に設定した場合、ログファイルのローテーション時に、application.00.log は application.01.log に名前が 変更され、application.01.log は application.02.log に名前が変更されます。以降も同様です。この処理は、最大履歴設定 に達するまで実行されます。最も大きいバージョン番号を持つログファイルに最も古いログ履歴が格納されます。 Rename を false に設定した場合、ローテーションを実行するときに次の使用可能なバージョン名で新しいログファイルが作 成されます。最も小さいバージョン番号を持つログファイルに最も古いログ履歴が格納されます。 例 <Rename>true</Rename> 関連項目 MaxSize、Schedule、History Rotation コンテナエレメント。 このセクション内のエレメントは、ログファイルのローテーションを設定します。 含まれるエレメント MaxSize、Schedule、History、Rename Schedule ログファイルのローテーションスケジュールを指定します。 スケジュールには、毎日のローテーションと、ログが指定した長さを超過した時点で実行されるローテーションの 2 つのタ イプがあります。 最終更新日 2010/9/8 174 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 type 属性が daily の場合、サーバーは 24 時間ごとにログファイルをローテーションします。 <Schedule type="daily"></Schedule> type 属性が hh:mm の場合、タイプスタンプ 00:00 により、ファイルは毎日午前 12 時にローテーションされます。 <Schedule type="hh:mm"></Schedule> type 属性が duration の場合、ログの継続時間が指定した長さを超過するとローテーションが実行されます。継続時間は分単 位で指定します。 <Schedule type="duration"></Schedule> 関連項目 MaxSize、History、Rename ServerID デフォルトでは、ServerID エレメントの値は、イベントが記録されているサーバーの IP アドレスです。 例 <ServerID>xxx.xxx.xxx.xxx:1234</ServerID> 関連項目 HostPort、DisplayFieldsHeader Time ログファイルの Time フィールドは、UTC(GMT、標準時間)または現地時間で記録できます。有効な値は、utc、gmt ま たは local です。 Time エレメントを設定すると、サーバー全体の設定を更新することができます。デフォルトでは、local(現地時間)に なっています。 関連項目 Logging Server.xml ファイル Server.xml ファイルは、conf ディレクトリの root レベルにあります。Server.xml ファイルでの編集結果は、別の設定 ファイルで無効になっていない限り、サーバー全体に影響を与えます。 Server.xml ファイル内のエレメントの構造とデフォルト値を参照するには、Flash Media Server の RootInstall/conf/ ディレクトリにインストールされている Server.xml ファイルを確認します。 Access コンテナエレメント。 Access コンテナ内にネストされるエレメントは、アクセスログ設定を指定します。アクセスログは、RootInstall\logs ディ レクトリに格納されます。 最終更新日 2010/9/8 175 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント Enable、Scope ACCP コンテナエレメント。 ACCP コンテナ内にネストされるエレメントは、ACCP(Admin Core Communication Protocol)を設定します。Flash Media Administration Server とアクティブコアは、ACCP を介して通信します。このプロトコルは、パフォーマンスメト リックの収集や Flash Media Server のコアへの管理コマンドの発行のためにも使用されます。 Flash Media Administration Console は Flash Media Administration Server に接続し、次に Flash Media Administration Server が Flash Media Server に接続します。 含まれるエレメント MinIOThreads、MaxIOThreads、SocketTableSize、SocketOverflowBuckets ActiveProfile (LicenseInfo エレメントで設定された)各ライセンスキーについてサーバーにより強制される制限を指定します。帯域幅、 接続および他のライセンスされた制限を決定するプロファイルを選択します。 関連項目 Process、Mask、LicenseInfo Admin コンテナエレメント。 Admin コンテナ内にネストされるエレメントは、fmsadmin プロセスのための RTMP(Real-Time Messaging Protocol) を設定します。RTMP は、Flash Player と Flash Media Server の間の通信のために使用されるプロトコルです。 含まれるエレメント MinIOThreads、MaxIOThreads、SocketTableSize、SocketOverflowBuckets AdminElem HTTP コマンドでエレメント名を表示するために使用する形式を指定します。デフォルト値は false で、エレメント名は <_x> として表示されます。それ以外の場合、エレメント名は <elem name="x"> として表示されます。 getActiveVHost() コマンドは、アクティブな仮想ホストのみを一覧表示します。getActiveVHostStats() コマンドでは、管理者 がすべてのアクティブな仮想ホストの統計情報をクエリできます。HTTP コマンドで <_x> ではなく <elem name="x"> を表 示するには、AdminElem エレメントを true に設定します。 例 <AdminElem>true</AdminElem> 関連項目 Process、Allow、Deny、Order 最終更新日 2010/9/8 176 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 AdminServer コンテナエレメント。 AdminServer コンテナ内にネストされるエレメントは、Flash Media Administration Server を設定します。 含まれるエレメント RTMP(AdminServer)、HostPort、SocketGC、Process、AdminElem、Allow、Deny、Order、CrossDomainPath Allow 受け付ける管理者接続を指定します。デフォルトでは、クライアントはすべてのドメインまたは IP アドレスから Flash Media Administration Server に接続できます。この潜在的なセキュリティリスクは、Allow エレメントにより管理できま す。許可する管理者接続は、ホスト名、ドメイン名、IP アドレスの全体または一部をカンマで区切ったリストで指定しま す。キーワード all を使用することもできます。 例 <Allow>x.foo.com, foo.com, 10.60.1.133, 10.60</Allow> または <Allow>all</Allow> 関連項目 Deny、Order AllowAnyAACProfile デフォルトでは、サーバーは Flash Player 10 でサポートされていない AAC オーディオプロファイルをストリーミングしま せん。この動作を変更するには、この値を true に設定します。 関連項目 Playback AllowAnyAVCProfile デフォルトでは、サーバーは Flash Player 10 でサポートされていない H.264 ビデオプロファイルをストリーミングしませ ん。この動作を変更するには、この値を true に設定します。 関連項目 Playback AllowedVideoLag ビデオメッセージを待機している間、サーバーが記録バッファーにオーディオメッセージを保持するミリ秒。この時間差に より、サーバーはビデオが遅延したときにバッファーをディスクに消去する前にタイムスタンプをソートできます。デフォ ルト値は 5 です。 Application コンテナエレメント。 最終更新日 2010/9/8 177 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Application コンテナ内にネストされる Enable エレメントは、アプリケーションログファイルを有効にします。 含まれるエレメント Enable ApplicationGC サーバーが使用されていないアプリケーションインスタンスをチェックして削除する間隔を分単位で指定します。デフォル トの間隔は 5 分です。これは、このエレメントの最小値でもあります。Application.xml の MaxAppIdleTime で指定した時 間よりも長期間接続するクライアントが存在しない場合、アプリケーションはアイドル状態と見なされます。 AudioAutoBufferReadSize サーバーは F4V/MP4 ビデオ、オーディオ、その他のデータをメモリにキャッシュします。データをキャッシュすること で、サーバーによるディスク読み取りの回数が減り、パフォーマンスが向上します。各種類のデータ(オーディオ、ビデオ、 その他)には独自のキャッシュが存在します。各キャッシュのサイズを、配信するコンテンツの種類に応じて調整すると、 ディスクパフォーマンスを向上できます。例えば、オーディオコンテンツのみを配信する場合、AudioAutoBufferReadSize バッファーを増やし、VideoAutoBufferReadSize バッファーを減らします。 最低サイズは 1,024 バイトです。初期設定値は 51,200 バイトです。 関連項目 VideoAutoBufferReadSize、OtherAutoBufferReadSize AuthEvent コンテナエレメント。AuthEvent コンテナ内にネストされた Enable エレメントは、権限プラグインからのイベントのロギン グを有効にします。 含まれるエレメント Enable AuthMessage コンテナエレメント。AuthMessage コンテナ内にネストされる Enable エレメントは、権限プラグインからのメッセージのロ ギングを有効にします。 含まれるエレメント Enable AutoCloseIdleClients コンテナエレメント。アイドル状態のクライアントを自動的に閉じるかどうかを確定します。 アイドル状態のクライアントを閉じるには、enable 属性を true に設定します。enable 属性を省略するか、false に設定した場 合、この機能は無効になります。デフォルト値は false です。 データを送受信しているクライアントはアクティブなクライアントです。AutoCloseIdleClients を使用して、クライアントが アイドル状態かどうかをサーバーがチェックする頻度を指定します。クライアントが最大アイドル時間(デフォルトは 60 秒)より長い間アイドル状態になっている場合、サーバーは NetConnection オブジェクト(クライアント)にステータス 最終更新日 2010/9/8 178 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 メッセージを送信します。サーバーは、サーバーへのクライアント接続を閉じて、メッセージをアクセスログに書き込みま す。サーバーはまた、 「クライアント x は y 秒間アイドル状態です」などのメッセージをコアおよびイベントログに書き込み ます。 アイドル状態の接続の終了について設定するには、Server.xml ファイル内でこの機能を有効にする必要があります。 Server.xml ファイル内でこの機能を有効にすると、Vhost.xml ファイル内で個々の仮想ホスト機能を、または Application.xml 内で個々のアプリケーション機能を無効にすることができます。Vhost.xml ファイルで値が定義されてい なければ、サーバーに接続されているすべてのクライアントに対して、Server.xml 設定ファイルで定義された値が適用され ます。Vhost.xml の値は Server.xml の値より優先されます)。(以降は、Application.xml ファイルで値が定義されていな ければ、仮想ホストに接続されているすべてのクライアントに対して、Vhost.xml 設定ファイルで定義された値が適用され ます。Application.xml の値は Vhost.xml の値より優先されます)。 例 <AutoCloseIdleClients enable="false"> <CheckInterval>60</CheckInterval> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> 含まれるエレメント CheckInterval、MaxIdleTime Cache コンテナエレメント。SWF の検証用のキャッシュを設定するエレメントを格納しています。 関連項目 TTL、UpdateInterval(Cache) CheckInterval サーバーが、クライアント接続がアクティブかどうかをチェックする間隔を秒単位で指定します。最小値(かつデフォルト 値)は 60 秒です。 クライアントが切断されるのは、そのクライアントが MaxIdleTime 値を超えた後、初めてサーバーが接続がアイドル状態か どうかをチェックしたときです。間隔を短く設定すれば、接続を切断するタイミングがより信頼できるものになりますが、 サーバーのパフォーマンスが低下する場合があります。 例 <CheckInterval>60</CheckInterval> 関連項目 Checkpoints Checkpoints チェックポイントイベントの記録を有効にします。チェックポイントイベントは、イベントの開始から終了までの間、定期 的に数バイトをログ出力します。チェックポイントイベントとして使用できるのは、connect-continue、play-continue および publish-continue です。 このエレメントには enable 属性が含まれており、true または false に設定できます。enable 属性を true に設定すると、ログ でチェックポイントイベントが有効になります。デフォルト値は false です。 最終更新日 2010/9/8 179 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 チェックポイントイベントは、Server.xml ファイルでサーバーレベルで有効にする必要があります。Vhost.xml および Application.xml ファイルで、仮想ホストまたはアプリケーションレベルでチェックポイントを無効にすることができます。 ログアウトの間隔を、仮想ホストおよびアプリケーションレベルで変更することもできます。 含まれるエレメント CheckInterval、LogInterval Connector コンテナエレメント。 Connector コンテナ内にネストされるエレメントは、コネクタサブシステムを設定します。Flash Media Server は、アプリ ケーションスクリプトと他の Flash Media Server または HTTP サーバー間を接続するためのコネクタを提供します。 含まれるエレメント HTTP、RTMP(Connector) Content コンテンツ(ストリームまたは SWF ファイル)に対する現在の File プラグインの操作を有効にします。値が true の場合、 指定したコンテンツタイプに対する操作を有効にし、false の場合、無効にします。 このエレメントは type 属性を含みます。この属性は次の値に設定することができます。 • Streams: ストリームファイルの操作を有効にします。デフォルトでは、有効になっています。 • swf: SWF ファイルでの操作を有効にします。デフォルトでは、無効になっています。File プラグインを使用して SWF ファイルを取得し、サーバーが検証を行う場合に有効にします。 このエレメントは FilePlugin タグ内にネストされます。 例 <Content type="Streams">true</Content> <Content type="SWF">false</Content> 関連項目 FilePlugin Core コンテナエレメント。 Core コンテナ内にネストされるエレメントは、FMSCore.exe プロセスのための RTMP プロトコルを設定します。 含まれるエレメント MinIOThreads、MaxIOThreads、SocketTableSize、SocketOverflowBuckets CoreExitDelay アイドル状態にあるコアが、サーバーから削除されるまでにアイドル状態のままで待つことができる時間を秒単位で指定し ます。デフォルトの待機時間は 20 秒です。 最終更新日 2010/9/8 180 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <CoreExitDelay>60</CoreExitDelay> 関連項目 CoreGC CoreGC アイドル状態にあるコアまたは使用されていないコアをチェックして削除する間隔を秒単位で指定します。デフォルトは 300 秒です。 例 <CoreGC>300</CoreGC> 関連項目 CoreExitDelay CoreTimeout 応答のないコアを検出するためのタイムアウト値を秒単位で指定します。デフォルト値は 30 秒です。値を 0 にすると、タイ ムアウトによるチェックは無効になります。 例 <CoreTimeout>30</CoreTimeout> 関連項目 CoreGC CPUMonitor CPU の使用状況をサーバーが監視する間隔を秒単位で指定します。デフォルトの間隔は 1 秒です。値には、1 より小さい数 字を指定することはできません。 例 <CPUMonitor>1</CPUMonitor> 関連項目 ResourceLimits CrossDomainPath クロスドメインファイルのサーバー上の絶対パスを指定します。このエレメントでは、クライアントがサーバーにアクセス できるドメインのリストを指定することができます。デフォルト値は * で、すべてのドメインのクライアントがサーバーに アクセスすることができます。 このエレメントは、Server エレメントと AdminServer エレメントの両方にネストされます。エッジサーバーと Administration Server の両方の要求対して使用できます。 例 <CrossDomainPath>C:/Security/config/files/fms/crossdomain.xml</CrossDomainPath> 最終更新日 2010/9/8 181 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Deny 無視する管理者接続を指定します。接続は、ホスト名、ドメイン名、IP アドレスの全体または一部をカンマで区切ったリス トで指定するか、またはキーワード all を指定します。 例 <Deny>x.foo.com, foo.com, 10.60.1.133, 10.60</Deny> または <Deny>all</Deny> 関連項目 Allow、Order Diagnostic コンテナエレメント。 Diagnostic セクション内にネストされる Enable エレメントは、診断ログファイルを有効にします。 含まれるエレメント Enable DiffServ Flash Media Server 3.5.2 このエレメントを DiffServMask エレメントと共に使用して、RTMP リスナーに接続するすべてのソケット(トンネリング と HTTP プロキシのソケットを含む)の DiffServ フィールドを指定します。これは、DSCP ドメインを設定している場合 を除けば、ほとんど使用することはありません。また、プラットフォームやルーターの設定によっては、一部の値によって エラーが発生することがあります。例えば、プライオリティクラス 4 を設定するには、DiffServ を 128 に設定し(上位の 3 ビットを 4 に設定)、DiffServMask を 224 に設定します(上位の 3 ビットをオン)。 ソケットでビットが設定されていることを確認するには、Administration API の getNetStreamStats() メソッドを呼び出し ます。各ストリームにある diffserv_bits フィールドの値が、ソケットでビットが正常に設定されると更新されます。 関連項目 getNetStreamStats()、58 ページの「Differentiated Services(DiffServ)の設定」 DiffServMask Flash Media Server 3.5.2 このエレメントを DiffServ エレメントと共に使用して、RTMP リスナーに接続するすべてのソケット(トンネリングと HTTP プロキシのソケットを含む)の DiffServ フィールドを指定します。これは、DSCP ドメインを設定している場合を 除けば、ほとんど使用することはありません。また、プラットフォームやルーターの設定によっては、一部の値によってエ ラーが発生することがあります。例えば、プライオリティクラス 4 を設定するには、DiffServ を 128 に設定し(上位の 3 ビットを 4 に設定)、DiffServMask を 224 に設定します(上位の 3 ビットをオン)。 最終更新日 2010/9/8 182 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Directory Httpd コンテナに格納されています。 Web サーバーを格納しているディレクトリ。デフォルト値は Apache2.2 です。 DirLevelSWFScan SWF ファイルをスキャンする親フォルダー内のサブフォルダーのレベルの数を指定します。親フォルダーは、SWFFolder エレメントで指定します。 正の値を指定すると、その数のサブフォルダーがスキャンされます。0 を指定すると、親フォルダーはスキャンされますが、 サブフォルダーはスキャンされません。負の値を指定すると、すべてのサブフォルダーがスキャンされます。デフォルト値 は 1 で、サブフォルダーレベルが 1 つだけスキャンされます。 関連項目 SWFFolder ECCP コンテナエレメント。 ECCP コンテナ内にネストされるエレメントは、ECCP(Edge Server-Core Server Communication Protocol)を設定し ます。Flash Media Server のエッジプロセスと Flash Media Server のコアプロセスは、ECCP を使用して、ソケット接続 の移行と、移行しなかった接続のプロキシを実行します。 含まれるエレメント MinIOThreads、MaxIOThreads、SocketTableSize、SocketOverflowBuckets、CoreTimeout Edge コンテナエレメント。 Edge コンテナ内にネストされるエレメントは、fmsedge プロセスのための RTMP プロトコルを設定します。 含まれるエレメント MinIOThreads、MaxIOThreads、SocketTableSize、SocketOverflowBuckets Edge(ResourceLimits) コンテナエレメント。 Edge コンテナ内にネストされるエレメントは、fmsedge プロセスのためのリソースを設定します。 含まれるエレメント MaxEventQueueThreads、MinEventQueueThreads、NumSchedQueues EdgeCore コンテナエレメント。 EdgeCore コンテナ内にネストされるエレメントは、エッジプロセスとコアプロセスの間の送受信で使用される IPC(プロセ ス間通信)メッセージキューを制御します。 最終更新日 2010/9/8 183 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント HeapSize、MaxQueueSize Enable Server.xml は、Logging コンテナ内の Enable エレメントを使って、Access、Diagnostic、Application、AuthEvent、 AuthMessage および FileIO の各ログを有効または無効に設定します。値が true の場合、ロギングプロセスを有効に、false の 場合、無効にします。デフォルト値は true です。 例 <Access> <enable>true</Enable> </Access> 関連項目 Access、Diagnostic、Application、AuthEvent、AuthMessage、FileIO EnableAggMsgs(playback) Playback コンテナに格納されています。 メッセージを集約すると、サーバーのパフォーマンスが向上します。デフォルト値は true です。サーバーのパフォーマンス を最大にする場合は、この値を変更しないでください。 注意:この設定は、MP4 および F4V ファイルの再生にのみ適用されます。 EnableAggMsgs(raw) RAW アダプターが集約メッセージを生成するか(true)生成しないか(false)を指定します。集約メッセージは、サー バーのパフォーマンスを向上させます。 デフォルト値は true です。 例 <EnableAggMsgs>true</EnableAggMsgs> 関連項目 Raw FileCheckInterval FLVCache コンテナに格納されています。 ファイルの変更が発生した場合に、サーバーがキャッシュ内のビデオセグメントを再ロードする頻度を秒単位で指定します。 デフォルト値は 120 秒です。最小値は 1 秒です。最大値はありません。非常に大きな値は、ファイルが変更された場合でも サーバーによってキャッシュが更新されないことを意味します。 例 <FileCheckInterval>120</FileCheckInterval> 最終更新日 2010/9/8 184 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 FileIO コンテナエレメント。 FileIO コンテナ内にネストされる Enable エレメントは、File プラグインからのロギングを有効にします。 含まれるエレメント Enable FilePlugin コンテナエレメント。 このエレメントは、File プラグインによって処理されるファイル操作を設定するためのエレメントを格納しています。 enabled 属性を false に設定すると、File プラグインが無効になります。 含まれるエレメント MaxNumberOfRequests、Content FLVCache コンテナエレメント。 記録されたメディアキャッシュのサイズおよび機能を制御するエレメントを格納しています。 含まれるエレメント FileCheckInterval、MaxSize(FLVCache)、MaxKeyframeCacheSize FLVCachePurge ResourceLimits コンテナに格納されています。 使用されていないファイルをキャッシュから削除する間隔を分単位で指定します。デフォルト値は 60 分です。最小値は 1 分です。1 分未満の値を指定すると、デフォルト値の 60 分が使用されます。 FLVCacheSize ResourceLimits コンテナに格納されています。 記録されたメディアキャッシュの最大サイズを指定します。記録されたメディアキャッシュサイズは、システムで利用可能 な RAM 全体の何パーセントを占めるかで指定されます。キャッシュサイズのデフォルト設定は、10(10%)です。最大設 定は、100(100%)です。この場合、仮想メモリも使用されます。 この設定を使用して、最適なメモリ使用に合わせてキャッシュを設定します。コアログファイルで「cache full」イベントを 受け取っている場合、またはストリームで必要な情報をキャッシュ内で検索できる可能性を高める場合は、キャッシュのサ イズを増やします。サーバープロセスで使用されるメモリの容量を最小化するには、キャッシュのサイズを減らします。 例 <FLVCacheSize>10</FLVCacheSize> FreeMemRatio MessageCache、SmallMemPool、LargeMemPool および SegmentsPool の各コンテナに格納されています。 最終更新日 2010/9/8 185 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 総メモリサイズに対する総プールサイズの最大比率を指定します。この設定の範囲は、0(0%)∼ 1(100%)です。デフォ ルト設定は [0.5%] です。 例 <FreeMemRatio>0.5</FreeMemRatio> FreeRatio MessageCache、SmallMemPool、LargeMemPool および SegmentsPool の各コンテナに格納されています。 空きリストによって消費されるスレッドあたりのメッセージキャッシュの比率を指定します。この設定の範囲は、0(0%) ∼ 1(100%)です。デフォルト設定は [0.125%] です。 スレッドで使用可能な空きメモリが指定した比率を超えると、空いたメモリはグローバルプールに戻されます。 例 <FreeRatio>0.125</FreeRatio> GCInterval HandleCache コンテナに格納されています。 アイドル状態のハンドルを削除する頻度を分単位で指定します。デフォルトは 60 分です。 例 <GCInterval>60</GCInterval> gid Process コンテナに格納されています。 プロセスのグループ ID を指定します。UID または GID を指定しない場合、サーバーまたは Administration Server が root として稼働します。このエレメントは、Linux システムで稼働する Flash Media Server に対してのみ適用できます。 関連項目 UID GlobalQueue コンテナエレメント。 GlobalQueue コンテナ内にネストされるエレメントは、すべてのプロセス間での送受信で使用される IPC メッセージキュー を制御します。 含まれるエレメント HeapSize、MaxQueueSize GlobalRatio MessageCache、SmallMemPool、LargeMemPool および SegmentsPool の各コンテナに格納されています。 空きリストが消費することができるグローバルベースのメッセージキャッシュの比率を指定します。スレッドで使用可能な 空きメモリが指定した比率を超えると、空いたメモリはオペレーティングシステムに戻されます。 最終更新日 2010/9/8 186 FLASH MEDIA SERVER 4.0 設定および管理ガイド 187 XML 設定ファイルの参照 この設定の範囲は、0(0%)∼ 1(100%)です。デフォルト設定は [0.4%] です。 例 <GlobalRatio>0.4</GlobalRatio> HandleCache コンテナエレメント。 HTTP 要求に使われるハンドルのキャッシュ方法を設定するエレメントが格納されています。このセクションは、Flash Remoting への接続用に使われます。 含まれるエレメント MaxSize(HandleCache)、IdleTime、TrimSize、GCInterval HeapSize IPC(プロセス間通信)メッセージキューのために使用される共有メモリヒープの最大サイズをキロバイト単位で指定しま す。このエレメントのデフォルト値は、どのコンテナ内にネストされているかによって変わります。 Container デフォルト値 説明 EdgeCore 1024 このエレメントの最大サイズを指定しない場合、値は 100 KB になります。 GlobalQueue 2048 Services 2048 例 <EdgeCore> <HeapSize>1024</HeapSize> </EdgeCore> 関連項目 MaxQueueSize HostPort Flash Media Administration Server がバインドする IP アドレスとポート番号を指定します。デフォルトでは、ポート 1111 上の使用可能な IP にバインドします。このエレメントで指定できるポートは 1 つだけです。 Administration Service は、Flash Media Server から分離しています。管理者が Administration Console を使ってサー バーに接続するとき、実際には Flash Media Administration Server に接続され、次に Administration Server が Flash Media Server と接続します。 例 <HostPort>ip:port</HostPort> 関連項目 AdminServer 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 HTTP コンテナエレメント。 HTTP コンテナ内にネストされるエレメントは、Flash Remoting への接続に使われる HTTP コネクタを設定します。 次の表は、すべてのスレッド設定でのデフォルト値について説明しています。 デフォルト値 説明 0 デフォルトのスレッド数を割り当てます。 >0 指定されたスレッド数を割り当てます。 -1 1xN のスレッド数を割り当てます(N はコンピューター内で利用可能なプロセッサーの数)。 -2 2xN のスレッド数を割り当てます(N はコンピューター内で利用可能なプロセッサーの数)。例えば、アプリ ケーションが 4 つのローカルプロセッサーを認識するクアッドコアのコンピューターを使用しているとします。 -2 の値を指定すると、HTTP コネクタは、最大 8 つのスレッドを使用できます。 含まれるエレメント MinConnectionThreads、MaxConnectionThreads、MaxConnectionQueueSize、HandleCache Httpd 内蔵の Web サーバーの停止方法と起動方法を指定します。デフォルトでは、enabled 属性は、 "${SERVER.HTTPD_ENABLED}" に設定されています。デフォルトでは、SERVER.HTTPD_ENABLED 変数は fms.ini ファイ ルで true に設定されています。enabled を true に設定すると、Flash Media Server が Web サーバーの起動と停止を自動実 行します。Flash Media Server は Directory、Program、Options および Service の各エレメントの設定を使って、次のコマン ドラインを実行します。 $Directory/$Program -d $Directory $Options -k start $Directory/$Program -d $Directory $Options -k stop 注意:$Directory の値は、絶対パスとして指定することも、$FMSROOT に対する相対パスとして指定することもできます。 Windows 上でのみ、Service は、NT サービスとして Web サーバーのインストールに使用する名前を指定します。Service の値が存在する場合、両方のコマンドに -n $Service が適用されます。Linux では、コマンドのこのセクションは無視されま す。 含まれるエレメント Directory、Program、Options、Service IdleTime HandleCache コンテナに格納されています。 キャッシュされたハンドルをリリースするまでの待機時間を指定します。指定された時間、ホストに対して HTTP 要求が行 われない場合、一部のキャッシュ済みハンドルが消去されます。デフォルトの待機時間は 10 秒です。 例 <IdleTime>10</IdleTime IpcHostPort fmscore プロセスから Administration Server への接続のために、サーバーが内部的にリッスンしているインターフェイス とポート。デフォルト値は localhost:11110 です。 最終更新日 2010/9/8 188 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 IPCQueues コンテナエレメント。 IPCQueues コンテナ内にネストされるエレメントは、IPC キューを設定します。Flash Media Server は IPC キューを使用 して、マスターからコア、コアからエッジのように、あるコアから別のコアへ、またはあるプロセスから別のプロセスに メッセージを送信します。 プロトコルとは異なり、キューは 1 つ以上のターゲットを持つ短い 1 回きりのメッセージのために使用されます。 含まれるエレメント GlobalQueue、EdgeCore、Services LargeMemPool コンテナエレメント。 LargeMemPool コンテナ内にネストされるエレメントは、大規模なメモリプールを設定します。大規模なメモリプールに よって、サーバー内に大きなメモリブロックがキャッシュされ、大規模な割り当てでのパフォーマンスが向上します。 含まれるエレメント MaxCacheUnits、MaxCacheSize、MaxUnitSize、FreeRatio、GlobalRatio、MaxAge、UpdateInterval、FreeMemRatio LicenseInfo ライセンス番号。この値はデフォルトでは、fms.ini ファイルのパラメーターです。 <LicenseInfo>${SERVER.LICENSEINFO}</LicenseInfo> 注意:手動で(つまり、ファイルを直接編集することで)、fms.ini または Server.xml の LicenseInfo タグに追加したシリア ル番号は、Administration Console では削除できません。Administration Console で削除できるのは、Administration Console を使用して追加したシリアル番号だけです。 例 <LicenseInfo>${SERVER.LICENSEINFO}</LicenseInfo> LicenseInfoEx Administration Console を使用して追加されたライセンスキーを格納しています。 Localhost IP ループバック アドレスを指定します。 サーバーはローカルに自分を参照する必要があります。IP ループバックアドレスは通常、デフォルトの localhost アドレス です。ネットワークインターフェイスが 1 つ以上ある場合、localhost が間違ったインターフェイスにマッピングする可能性 もあります。サーバーは、ローカルのループバックとしてデフォルトのループバックアドレスを使用します。 LockoutLimit ユーザーが admin サーバーにログインできなくなるまでのログインの失敗の最大回数。この値に到達した場合、ユーザー が再びログインできるようにするには admin サーバーを再起動する必要があります。 デフォルト値は 300 です。 最終更新日 2010/9/8 189 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <LockoutLimit>300</LockoutLimit> 関連項目 LogInLimits、MaxFailures、RecoveryTime LogInLimits コンテナエレメント。 許容される admin ログイン試行の失敗回数、および admin が再度ログインを試行できるようになるまでに必要な復旧時間 の長さを指定します。 含まれるエレメント LockoutLimit、MaxFailures、RecoveryTime 関連項目 Client LogInterval チェックポイントを記録する頻度を秒単位で指定します。この値は、CheckInterval の値より大きくする必要があります。値 が小さい場合、チェック間隔ごとにチェックポイントが記録されます。デフォルト値は 3600 秒(60 分)です。 関連項目 Checkpoints Logging コンテナエレメント。 Logging コンテナにネストされるエレメントは、サーバーの一般的なロギングプロパティを設定します。Logger.xml ファイ ルでは、各ログファイルの設定プロパティを設定します。 ログファイルは、英語で記述されます。ログファイルのフィールド名は、英語です。ただし、ログファイル内の一部分は、 ファイル名とオペレーティングシステムの影響を受け、英語以外の言語になります。例えば access.log ファイルでは、x- sname と x-suri-stem のカラムは、ストリーム名を示します。記録されたストリームの名前が英語以外の言語で記述されてい る場合、サーバーが英語環境のオペレーティングシステムで実行されていても、ログファイル内のストリーム名はその言語 で記述されます。 含まれるエレメント Time、RecordsNumber、RetryNumber、RetrySleep、Access、Diagnostic、Application、AuthEvent、AuthMessage、FileIO Mask ファイル作成マスクを設定する Linux umask(ユーザーパーミッションマスク)コマンドによって使用される、3 桁の 8 進 数の値です。マスクには、3 桁の 8 進数の形式で入力する必要があります。 このエレメントのデフォルト設定は、8 進数の 017 です。 最終更新日 2010/9/8 190 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 このエレメントは、Linux システムで稼働する Flash Media Server に対してのみ適用できます。このエレメントは、サー バー内の共有オブジェクトとストリームファイルに対する読み取りまたは書き込みのためのアクセス権をどのユーザーが持 つかを制御します。ストリームファイルや共有オブジェクトファイルなどの Flash Media Server のすべてのオブジェクト ファイルは、パーミッション 0666 を持つユーザーによりサーバーサイドで作成されます。このキーが umask によって使用 され、ファイル作成マスクが設定されます。デフォルトでは、作成マスクは 8 進数の 017 に設定されています。したがって、 Flash Media Server のすべてのオブジェクトファイルは、パーミッション 0666 & ~017 = 0660 = rw-rw---- により作成されま す。 パーミッションの所有者と同じグループに属する所有者およびユーザーは、そのファイルに対する読み取りおよび書き込み の権限を持ちます。マスクが 022 に設定されている場合、作成されたファイルにはパーミッション 0666 & ~022 = 0644 = rwr--r-- が割り当てらます。 Master コンテナエレメント。 Master コンテナ内にネストされるエレメントは、マスターサーバーのリソース制限を設定します。 含まれるエレメント CoreGC、CoreExitDelay MaxAge MessageCache、SmallMemPool、LargeMemPool および SegmentsPool の各コンテナに格納されています。 このエレメントは、キャッシュユニットを開放するまでの最大再使用数を定義します。デフォルト数は 1,000,000 です。 例 <MaxAge>1000000</MaxAge> MaxAggMsgSize(playback) 集約メッセージの最大サイズをキロバイト単位で指定します。デフォルト値は 64 です。 注意:この設定は、MP4 または F4V ファイルの再生にのみ適用されます。 関連項目 Playback MaxAggMsgSize(raw) 集約メッセージのバイト単位の最大サイズ。任意の正の整数を使用できます。 デフォルト値は 65536 です。 例 <MaxAggMsgSize>65536</MaxAggMsgSize> 関連項目 Raw 最終更新日 2010/9/8 191 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxAudioSampleDescriptions Recording コンテナに格納されています。 コンテンツの種類に対するコーデックの変更には、それぞれサンプルの説明が含まれています。例えば、2 つの異なるオー ディオコーデックには、それぞれ独自のサンプルの説明が存在します。サーバーは、ファイルを作成するときにサンプルの 説明の容量を割り当てます。コーデックの種類の変更が、利用可能な説明の数よりも多い場合、サーバーは記録を中止しま す。ただし、あまりに多くの説明を追加すると、サーバーが記録するすべてのファイルで不要な容量が消費されることにな ります。 デフォルト値は 20 です。 注意:この設定は、MP4 または F4V ファイルの記録にのみ適用されます。 MaxCacheSize MessageCache、SmallMemPool、LargeMemPool および SegmentsPool の各コンテナに格納されています。 このエレメントは、キャッシュの最大サイズをメガバイト単位で指定します。デフォルトは 100 です。 例 <MaxCacheSize>100</MaxCacheSize> MaxCacheUnits MessageCache、SmallMemPool、LargeMemPool および SegmentsPool の各コンテナに格納されています。 このエレメントは、キャッシュの最大空きユニット数を定義します。MaxCacheSize の値が制限に達している場合、空きユ ニット数は最大数より少なくなる場合があることに注意してください。 デフォルトは 4,096 ユニットです。 例 <MaxCacheUnits>4096</MaxCacheUnits> MaxConnectionQueueSize HTTP コンテナに格納されています。 保留にしておくことができる最大接続要求数を指定します。この制限を超過すると、接続要求は拒否されます。 デフォルトの保留要求数は 1,000 です。デフォルトを使用するには、-1 を指定します。 例 <MaxConnectionQueueSize>-1</MaxConnectionQueueSize> MaxConnectionRate RTMP(Protocol) コンテナと Edge コンテナに格納されています。 サーバーのソケットリスナーが 1 秒間に許可する、外部からの接続の最大数を指定します。最大接続レートは、12.5 のよう に小数点以下まで設定することができます。値を 0 または -1 にすると、この機能は無効になります。 最終更新日 2010/9/8 192 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 これは、すべてのソケットリスナーに対するグローバル設定です。このエレメントで 1 秒間の接続が 10 に設定されている 場合、リスナーごとの 1 秒間の接続数は 10 に制限されます。リスナーが 3 つあり、MaxConnectionRate が 10 に設定されて いる場合、サーバーは最大接続レートとしてこれを合計した値を適用するため、1 秒あたりの接続数は 30 となります。ソ ケットリスナーは、HostPortList コンテナエレメントの下の HostPort エレメントを使用して、Adaptor.xml 設定ファイルで 設定します。 このエレメントで指定した値を超えるレートで要求された接続は TCP/IP ソケットキューに残り、キューが長くなると、オ ペレーティングシステムによって警告なしに破棄されます。 例 <MaxConnectionRate>100</MaxConnectionRate> MaxConnectionThreads HTTP コンテナと RTMP(Connector) コンテナに格納されています。 接続要求を処理するために使用される最大スレッド数を指定します。HTTP の場合、デフォルト数は 10 です。デフォルト を使用するには、0 を指定します。RTMP の場合、デフォルト数は 5 です。デフォルトを使用するには、0 を指定します。 ただし、サーバーが接続を処理するために長い時間がかかっている場合には、HTTP/MaxConnectionThreads の値を 20 に増 やします。 MaxDataSampleDescriptions Recording コンテナに格納されています。 コンテンツの種類に対するコーデックの変更には、それぞれサンプルの説明が含まれています。例えば、2 つの異なるデー タエンコード形式には、それぞれ独自のサンプルの説明が存在します。サーバーは、ファイルを作成するときにサンプルの 説明の容量を割り当てます。エンコード形式の種類の変更が、利用可能な説明の数よりも多い場合、サーバーは記録を中止 します。ただし、あまりに多くの説明を追加すると、サーバーが記録するすべてのファイルで不要な容量が消費されること になります。デフォルト値は 10 です。 注意:この設定は、MP4 または F4V ファイルの記録にのみ適用されます。 MaxELSTEntries Recording コンテナに格納されています。 記録に含まれる ELST エントリの最大数。サーバーは、コンテンツにギャップが存在するときに ELST エントリを使用しま す。ギャップは、ファイルに追加を行うとき、またはビデオ、オーディオまたはデータコンテンツが終了したにもかかわら ず、他のコンテンツが継続しているときに発生します。MaxELSTEntries タグで指定された値よりも多くのギャップまたは追 加が発生した場合、記録は終了します。ただし、この値をあまりに大きく設定すると、記録されるファイルごとに不要な容 量が消費されることになります。デフォルト値は 100 です。 注意:この設定は、MP4 または F4V ファイルの記録にのみ適用されます。 MaxEventQueueThreads Edge(ResourceLimits) コンテナに格納されています。 スケジューラーキュー当たりのスレッドの最大数。デフォルト値は -2 です。 最終更新日 2010/9/8 193 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxFailures ユーザーが再度許可されるまで待つ必要がある状態になる前にログインを試行できる最大回数。待機時間は RecoveryTime エレメントによって定義されます。 デフォルト値は 3 です。失敗したログイン試行回数が LockoutLimit の値に等しくなっている場合は、ユーザーは再度ログイ ンを試行できるようにするために admin サーバーを再起動する必要があります。 例 <MaxFailures>3</MaxFailures> 関連項目 LogInLimits、LockoutLimit、RecoveryTime MaxFlushSize RecBuffer コンテナに格納されています。 記録バッファーを消去するまでに累積される最大 KB 数。デフォルト値は 256 です。最小値は 32 です。 MaxFlushTime RecBuffer コンテナに格納されています。 記録バッファーを消去するまでに待機する最大秒数。デフォルト値は 5 です。最小値は 1 です。 MaxIdleTime AutoCloseIdleClients コンテナに格納されています。 クライアントが切断されるまでの最大アイドル時間を秒単位で指定します。デフォルト値は 3600 秒(60 分)です。60 以下 の値を設定すると、サーバーは 1200 秒(20 分)を使用します。 小さい値を設定すると、不必要に接続が切断されてしまう場合があります。このエレメントを設定するときは、サーバー上 で実行されているアプリケーションの種類を考慮してください。例えば、ユーザーが短いビデオクリップを見るためのアプ リケーションがある場合、ユーザーはそのウィンドウをアイドル状態のままにしておく可能性があります。 MaxInitDelay SWF ファイルの処理に必要な最大秒数。デフォルト値は 5 秒です。このエレメントは SWF ファイルの検証に使用します。 例 <MaxInitDelay>5</MaxInitDelay> 関連項目 SWFVerification MaxIOThreads RTMP(Connector)、Edge、Core、Admin、ECCP および ACCP コンテナに格納されています。 I/O 処理のために作成することができる最大スレッド数を指定します。 最終更新日 2010/9/8 194 FLASH MEDIA SERVER 4.0 設定および管理ガイド 195 XML 設定ファイルの参照 次の情報を使用して、すべての I/O および接続スレッド処理を設定します。 • 値が 0 の場合、デフォルトのスレッド数(10)を割り当てます。 • 値が 0 より大きい場合、指定されたスレッド数を割り当てます。 • 値が 0 より小さい場合、次のように、接続スレッド数をプロセッサー数(N)に関連付けます。 • -1 は 1 x N のスレッド数を示します。 • -2 は 2 x N のスレッド数を示します。-3 以降もこのルールに則ったスレッド数になります。 Flash Media Server は、様々なプロトコルで接続を受け付けます。このエレメントのデフォルト値は、どのコンテナのプロ トコル内にネストされているかによって変わります。 Container デフォルト値 説明 ACCP 10 デフォルト値に設定するには、0 にします。 admin 10 デフォルト値に設定するには、0 にします。 Core 10 デフォルト値に設定するには、0 にします。 ECCP 10 デフォルト値に設定するには、0 にします。 Edge 10 デフォルト値に設定するには、0 にします。 RTMP 32 デフォルト値に設定するには、-1 にします。 例 <RTMP> <MaxIOThreads>32</MaxIOThreads> </RTMP> MaxKeyframeCacheSize FLVCache コンテナに格納されています。 記録されたメディアファイルごとのキャッシュ内の最大キーフレーム数を指定します。デフォルト値は 2000 です。 拡張シークが有効になっている場合、サーバーはキャッシュに保存されるキーフレームを生成します(詳細については、 Application.xml ファイルの EnhancedSeek を参照してください)。MaxKeyframeCacheSize を小さくすると、キャッシュで使 用されるメモリは少なくなります。アプリケーションでサイズの大きな記録されたメディアファイルを多数使用する場合は、 この値を小さくします。 例 <MaxKeyframeCacheSize>0</MaxKeyframeCacheSize> MaxNumberOfRequests File プラグインに対する保留要求の最大数を指定します。デフォルト値は 0 で、要求の数に制限がないことを示します。 プラグインがサーバーからの要求に応答しない場合、保留要求の数は最大で MaxNumberofRequests の値まで増えます。 MaxNumberofRequests に達すると、以降の要求は拒否されます。 デフォルトでは、Flash Media Server は、File プラグインに対する要求の数または File プラグインから返される応答の数を カウントしません。必要に応じて、この値を使用して、File プラグインの問題を特定することができます。通常はデフォル ト値の 0 のままにすることをお勧めします。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxQueueSize GlobalQueue、EdgeCore および Services の各コンテナに格納されています。 キューに含めることができる保留中の IPC メッセージの最大数を指定します。実行中ではないプロセスに送信されたメッ セージは、そのプロセスの保留キューに格納される場合があります。プロセスが再び開始すると、メッセージを取得します。 MaxQueueSize エレメントは、保留キューに保持されるメッセージの数を制限するために使用します。メッセージを制限す ると、プロセスが開始しない場合に共有メモリを節約できます。値はキロバイト単位で指定します。デフォルトサイズは 100 KB です。 MaxSampleSize F4V/MP4 ファイルのサンプルに許可される最大サイズをキロバイト単位で指定します。ファイルにより大きなサンプルが 含まれる場合、この値を 4GB まで増やすことができます。デフォルト値は 16,777,216(16MB)です。 関連項目 Playback MaxSize(FLVCache) FLVCache コンテナに格納されています。 記録されたメディアキャッシュの最大サイズ(メガバイト)を指定します。デフォルト値は 500 です。この値は、実行中の プロセスとメモリを共有し、それぞれ 32 ビット構成の Windows では 2 GB、Linux では 3 GB に制限されています。64 ビット構成では、プロセスが使用できるファイルメモリは、RAM の容量によってのみ制限されます。 サーバーがパブリッシュできる一意のストリームの数は、キャッシュのサイズによって制限されます。要求されたストリー ムが記録済みメディアのキャッシュ内に見つかる可能性を高めるには、MaxSize の値を大きくします。サーバープロセスが 使用するメモリ容量を減らすには、MaxSize の値を小さくします。ファイルキャッシュのサイズを増やし過ぎると、実質的 にシステムのパフォーマンスが悪化することがあります。 MaxSize(HandleCache) HandleCache コンテナに格納されています。 キャッシュするハンドルの最大数を指定します。最小値は 0 で、ハンドルはキャッシュされません。最大値はありません。 オペレーティングシステムでサポートできるハンドルの最大数が最大値になります。デフォルト値は 100 です。 例 <MaxSize>100</MaxSize> MaxSize(RecBuffer) RecBuffer コンテナに格納されています。 メッセージがファイルにコミットされるまでにバッファーが拡大できる最大サイズを指定します。デフォルト値は 200、最 小値は 0 です。この値を大きくすると、データがディスクに書き込まれるまでバッファー内に保持される期間が長くなりま す。 アプリケーションに DVR 機能を追加すると、記録バッファーのサイズが記録同時再生のパフォーマンスに影響を与えます。 バッファーが短いと、リアルタイムから再生までの待ち時間が短くなりますが、パフォーマンスが低下します。 例 <MaxSize>5120</MaxSize> 最終更新日 2010/9/8 196 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxTimestampSkew RecBuffer コンテナに格納されています。 メッセージのタイムスタンプとリアルタイムを比較するときの、2 つの隣接するメッセージ間の最大ギャップをミリ秒単位 で指定します。2 つの隣接するメッセージ間のタイムスタンプが、実際の差異と MaxTimestampSkew に対してここで設定し た値を足した値よりも大きい場合、サーバーは警告をログに記録します。このエレメントはデフォルトでは無効になってい ます。このエレメントを有効にするには、正の数値を設定します。 例 <MaxTimestampSkew>2</MaxTimestampSkew> MaxTracks Playback コンテナに格納されています。 ファイルに許可されるトラックの最大数を指定します。再生できるビデオ、オーディオおよびデータトラックは 1 つだけで すが、この数までのトラック数のファイルを同時に解析できます。この数を超えた場合、ファイルエラーが発生します。デ フォルト値は 64 です。 MaxUnitSize MessageCache、SmallMemPool、LargeMemPool および SegmentsPool の各コンテナに格納されています。 メモリプールで許可されるメモリブロックの最大サイズをキロバイト単位で指定します。デフォルトサイズは 16 KB です。 Flash Media Server には、メモリをブロック単位で保持するいくつかのメモリプール(記録されたメディアキャッシュとは 異なります)が存在します。この設定により、MaxUnitSize より大きいブロックを、プール内に保持するのではなくシステ ムメモリにリリースして、大きいメモリブロックを使用できるようにします。 例えば、このタグが MessageCache タグの下にある場合、サーバーは MaxUnitSize より大きいメッセージをキャッシュしませ ん。 例 <MessageCache> <MaxUnitSize>16</MaxUnitSize> </MessageCache> MaxUrlLength RTMP および SWF ファイルの URL の許容最大長をバイト単位で定義します。ほとんどの最新ブラウザでは、URL の長さ を 64 KB までサポートしています。デフォルト値は 32 KB です。最大許容値は 1000 KB です。 このエレメントを使用して、外部からの要求の URL の長さを制限します。SSAS からの送信 NetConnection URL の長さ を制限するには、Application.xml ファイル内の MaxUrlLength エレメントを使用します。 例 <MaxUrlLength>65536</MaxUrlLength> 関連項目 Client 最終更新日 2010/9/8 197 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxVideoSampleDescriptions Recording コンテナに格納されています。 コンテンツの種類に対するコーデックの変更には、それぞれサンプルの説明が含まれています。例えば、2 つの異なるビデ オコーデックには、それぞれ独自のサンプルの説明が存在します。サーバーは、ファイルを作成するときにサンプルの説明 の容量を割り当てます。コーデックの種類の変更が、利用可能な説明の数よりも多い場合、サーバーは記録を中止します。 ただし、あまりに多くの説明を追加すると、サーバーが記録するすべてのファイルで不要な容量が消費されることになりま す。デフォルト値は 10 です。 注意:この設定は、MP4 または F4V ファイルの記録にのみ適用されます。 MessageCache コンテナエレメント。 MessageCache コンテナ内にネストされるエレメントは、Flash Media Server を実行するシステムによって使用されるメッ セージをメッセージキャッシュが取得する方法、また、それらのメッセージを返したりオペレーティングシステムから要求 したりすることなく、メモリに保管して再利用する方法を制御します。 メッセージは、Flash Media Server の基本的な通信単位です。メッセージを再使用することで、サーバーのパフォーマンス が向上します。 含まれるエレメント MaxCacheUnits、MaxCacheSize、MaxUnitSize、FreeRatio、GlobalRatio、MaxAge、UpdateInterval、FreeMemRatio MinConnectionThreads HTTP コンテナと RTMP(Connector) コンテナに格納されています。 I/O 操作のためにプールされる最小スレッド数を指定します。デフォルトは、プロセッサー数と同じ数です。デフォルトを 使用するには、0 を指定します。 例 <MinConnectionThreads>0</MinConnectionThreads> MinEventQueueThreads Edge(ResourceLimits) コンテナに格納されています。 スケジューラーキュー当たりのスレッドの最小数。デフォルト値は 2 です。 MinGoodVersion SWFVerification コンテナに格納されています。 サーバーにより許可される SWF 検証機能の最小バージョンを指定します。デフォルト値は 0 で、現行および将来のすべて のバージョンが許可されます。 例 <MinGoodVersion>0</MinGoodVersion> 最終更新日 2010/9/8 198 FLASH MEDIA SERVER 4.0 設定および管理ガイド 199 XML 設定ファイルの参照 MinIOThreads RTMP(Connector)、Edge、Core、Admin、ECCP および ACCP コンテナに格納されています。 このエレメントは、I/O 操作のために作成される最小スレッド数を指定します。 Flash Media Server は、様々なプロトコルで接続を受け付けます。このエレメントのデフォルト値は、どのコンテナのプロ トコル内にネストされているかによって変わります。 Container デフォルト値 説明 ACCP 10 デフォルト値に設定するには、0 にします。 admin 10 デフォルト値に設定するには、0 にします。 Core 10 デフォルト値に設定するには、0 にします。 ECCP 10 デフォルト値に設定するには、0 にします。 Edge 10 デフォルト値に設定するには、0 にします。 RTMP 10 デフォルト値に設定するには、-1 にします。 例 <ECCP> <MinIOThreads>0</MinIOThreads> </ECCP> Mp4 コンテナエレメント。 この Mp4 エレメントは、サーバーが MP4、F4V、MOV およびその他の MP4 ファイルタイプをどのように再生および記 録するかを設定します。 含まれるエレメント Playback および Recording MsgPoolGC サーバーがグローバルメッセージプールの内容をチェックし削除する間隔を指定します。 デフォルト設定では、60 秒ごとにチェックして削除します。 NetworkingIPv6 Internet Protocol version 6(IPv6)を有効または無効にします。これは空のタグです。 必要に応じて、IPv6 をサポートするようにオペレーティングシステムのネットワークスタックを設定する必要があります。 Flash Media Server はオペレーティングシステムの設定を自動的に検出します。このエレメントにより、IPv6 が使用可能 な場合でも IPv4 を使用するように Flash Media Server に強制できます。 例 <NetworkingIPv6 enable="false" /> 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 NumCRThreads RTMP(Connector) コンテナに格納されています。 32 ビットの Windows システムにおけるエッジサーバーの I/O 処理のための完了ルーチンのスレッド数を指定します。 例 <NumCRThreads>0</NumCRThreads> NumSchedQueues Edge(ResourceLimits) コンテナに格納されています。 スケジューラーキューの数。デフォルト値は 1 です。 Options Httpd コンテナに格納されています。 Web サーバーの起動と停止を行うコマンドライン引数用の追加スイッチを指定します。 Order AdminServer コンテナに格納されています。 Allow エレメントと Deny エレメントを評価する順序を指定します。 例 <Deny> または <Allow> のいずれにも存在しない要求を処理するには、次のように設定します。 <Order>Deny,Allow</Order> <Allow> に存在し、<Deny> に存在しない要求を処理するには、次のように設定します。 <Order>Allow, Deny</Order> OtherAutoBufferReadSize Playback コンテナに格納されています。 サーバーは F4V/MP4 ビデオ、オーディオ、その他のデータをメモリにキャッシュします。データをキャッシュすること で、サーバーによるディスク読み取りの回数が減り、パフォーマンスが向上します。各種類のデータ(オーディオ、ビデオ その他)には独自のキャッシュが存在します。各キャッシュのサイズを、配信するコンテンツの種類に応じて調整すると、 ディスクパフォーマンスを向上できます。 最低サイズは 1,024 バイトです。初期設定値は 1024 バイトです。 Playback コンテナエレメント。 この Playback エレメントは、サーバーが MP4、F4V、MOV その他の MP4 ファイルタイプをどのように再生するかを設定 します。 最終更新日 2010/9/8 200 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Contained elements VideoAutoBufferReadSize、AudioAutoBufferReadSize、OtherAutoBufferReadSize、EnableAggMsgs(playback)、 MaxAggMsgSize(playback)、MaxTracks、MaxSampleSize、AllowAnyAACProfile、AllowAnyAVCProfile Plugins コンテナエレメント。 Plugins エレメント内にネストされるエレメントは、プラグインを設定します。 含まれるエレメント FilePlugin、UserDefined Process コンテナエレメント。 Flash Media Server 用に 1 つ、Flash Media Administration Server 用に 1 つ、合計で 2 つの Process エレメントがありま す。Process エレメント内でネストされるエレメントは、すべてのサーバープロセスのための UID エレメントと GID エレメ ントを格納しています。これらのエレメントは、Linux システムで稼働するサーバーに対してのみ適用できます。セキュリ ティ上の理由から、Linux ではすべてのサーバーは、root から UID と GID に対してスイッチを処理します。UID と GID の 値を指定しない場合、サーバーは root として稼働します。 含まれるエレメント UID、gid ProcVMSizeMonitorInterval プロセスに使われる仮想メモリの監視間隔(秒)。デフォルト値は 60 です。 ProcVMSizeNominal ProcVMSizeWarn しきい値がトリガーされた後、仮想メモリがプロセスの低使用状態に戻るためのログ通知しきい値(メガ バイト)。デフォルト値は 1600 です。 ProcVMSizeWarn 仮想メモリがプロセスの高使用状態であることを通知するログ警告しきい値(メガバイト)。デフォルト値は 1800 です。 Program Httpd コンテナに格納されています。 Web サーバーの実行可能ファイルの場所。デフォルト値は bin/httpd です。 Protocol コンテナエレメント。 Flash Media Server は、様々なプロトコルで接続を受け付けます。このコンテナ内のエレメントは、これらのプロトコル、 および接続要求が受け付けられる方法を設定します。 最終更新日 2010/9/8 201 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 すべての I/O および接続スレッド処理の値を設定するには、常に、次のガイドラインに従います。 • 値が 0 の場合、デフォルトのスレッド数(10)を割り当てます。 • 値が 0 より大きい場合、指定されたスレッド数を割り当てます。 • 値が 0 より小さい場合、接続スレッド数をプロセッサー数(N)に関連付けます。 • -1 は 1 x N のスレッド数を示します。 • -2 は 2 x N のスレッド数を示します。-3 以降もこのルールに則ったスレッド数になります。 含まれるエレメント ACCP、ECCP および RTMP(Protocol) PublicIP システムが 3 つ以上のネットワークポートを備えているかどうかを指定します。このエレメントを使って、パブリック IP ア ドレスを作成します。 Raw RAW アダプターを制御するコンテナエレメント。 Flash Media Server は、どのバージョンの Flash Player にもストリーミングできる設定可能なブロックにメディアを記録す る Record and Watch(RAW)ファイル形式をサポートします。RAW ファイル形式によって、パフォーマンスの問題を 引き起こさずに、長い複数のビットレートに対応する DVR ストリームを提供できるようになります。RAW ファイル形式 を使用して、H.264 ビデオ、データのみ、オーディオのみなどを含む Flash Media Server がサポートするすべてのストリー ムを記録および再生します。RAW ファイル形式はサーバー機能です。Flash Player の任意のバージョンが RAW ストリー ムをパブリッシュまたは再生できます。ただし、複数のビットレートに対応するストリームサポート(動的ストリ−ミング とも呼ばれます)は Flash Player 10 以上を必要とします。 コンテナエレメント。 注意:RAW ファイル形式は Flash Media Server の内部にあります。この時点で、サードパーティのツールを使用してこれ らのファイルを編集したり、これらのファイルを FLV 形式または MP4 形式に変換したりすることはできません。 使用できるバージョン Flash Media Server 4 含まれるエレメント MaxAggMsgSize(raw) 関連項目 Streams ReadBufferSize サーバーが使用する I/O 読み取りバッファーの最大サイズ(キロバイト)。バッファーのサイズを大きくすると、使用状況 によってはパフォーマンスが向上します。ただしバッファーが大きくなると、メモリの使用量も多くなります。デフォルト 値は 4096 です。 最終更新日 2010/9/8 202 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 RecBuffer コンテナエレメント。 記録用のバッファーを設定するエレメントを格納しています。 アプリケーションに DVR 機能を追加すると、記録バッファーのサイズが記録同時再生のパフォーマンスに影響を与えます。 バッファーが短いと、リアルタイムから再生までの待ち時間が短くなりますが、パフォーマンスが低下します。 含まれるエレメント MaxSize(RecBuffer)、MaxTimestampSkew、MaxFlushSize、MaxFlushTime、AllowedVideoLag Recording コンテナエレメント。 Recording エレメントは、サーバーがどのように F4V/MP4 タイプのファイルを記録するかを設定します。 含まれるエレメント MaxELSTEntries、MaxAudioSampleDescriptions、MaxDataSampleDescriptions および MaxVideoSampleDescriptions RecordsNumber ログキュー内のレコード数。ログを開く試みが失敗したときに、キュー内のレコード数がこの数値以上である場合は、コア プロセスがシャットダウンされます。デフォルト値 -1 では、レコード数が無制限になります。 RecoveryTime ユーザーが MaxFailures の値に到達した後に、もう一度ログイン試行を許可するまでの秒単位の待機する時間。 デフォルト値は 30 秒です。 失敗したログイン試行回数が LockoutLimit の値に等しくなっている場合は、ユーザーは再度ログインを試行できるようにす るために admin サーバーを再起動する必要があります。 例 <RecoveryTime>30</RecoveryTime> 関連項目 LogInLimits、LockoutLimit、MaxFailures ResourceLimits コンテナエレメント。 ResourceLimits コンテナ内にネストされるエレメントは、HTTP および RTMP プロトコルを含むサーバーのリソースの制 限を指定します。 含まれるエレメント FLVCachePurge、FLVCache、RecBuffer、CPUMonitor、ThreadPoolGC、MsgPoolGC、ApplicationGC、FLVCacheSize、 SocketGC、ProcVMSizeMonitorInterval、ProcVMSizeWarn、ProcVMSizeNominal、SSLSessionCacheGC、Connector、 Protocol、IPCQueues、MessageCache、SmallMemPool、LargeMemPool、SegmentsPool、Master 最終更新日 2010/9/8 203 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 RetryNumber ログファイルの表示を再試行する回数。ログファイルの表示に失敗した場合に適用されます。デフォルト値は 0 です。 RetrySleep ログファイルの表示を再試行するまでにサーバーが待機する時間(ミリ秒)。ログファイルの表示に失敗した場合に適用され ます。デフォルト値は 100 ms です。 Root コンテナエレメント。 Root エレメントは、Server.xml ファイル内にある他のすべてのエレメントのコンテナです。 RTMP(AdminServer) コンテナエレメント。 このコンテナには、RTMP のどのバージョンを使って Administration Server を接続するかを設定するエレメントが格納 されています。RTMP は、Flash Player と Flash Media Server の間の通信のために使用されるプロトコルです。 含まれるエレメント RTMPE RTMP(Connector) コンテナエレメント。 このコンテナには、Flash Remoting と Flash Media Server 間の通信用 RTMP(Real-Time Messaging Protocol)を設定 するエレメントが格納されています。 次の表は、すべてのスレッド設定でのデフォルト値の一覧です。 デフォルト値 説明 0 デフォルトのスレッド数(10)を割り当てます。 >0 指定されたスレッド数を割り当てます。 <0 デフォルト値をプロセッサー数(N)に関連付けます。 -1 1xN のスレッド数を割り当てます。 -2 2xN のスレッド数を割り当てます。 含まれるエレメント MinIOThreads、MaxIOThreads、NumCRThreads、MinConnectionThreads、MaxConnectionThreads、 MaxConnectionQueueSize RTMP(Protocol) コンテナエレメント。 このコンテナは、RTMP(Real-Time Messaging Protocol)を設定するエレメントを格納しています。RTMP は、Flash Player と Flash Media Server の間の通信のために使用されるプロトコルです。 最終更新日 2010/9/8 204 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント Edge、Core、Admin、SocketSndBuf、SocketRcvBuff RTMPE RTMP コンテナに格納されています。 Administration Server への接続に RTMPE(暗号化された Real-Time Messaging Protocol)を使用できるかどうかを指 定します(RTMPE は RTMPTE にも対応します)。デフォルト値は true です。このエレメントを false に設定すると、 RTMPE および RTMPTE の使用が禁止されます。 Scope Logging コンテナに格納されています。 このエレメントは、各仮想ホストごとに個別のログファイルを書き込むか、またはサーバーに対して 1 つのログファイルを 書き込むかを決定します。 このエレメントの値は、server または vhost です。デフォルト設定は、server で、サーバー上のすべてのプロセスのロギング が有効になります。 Client 説明 コンテナエレメント。 このセクション内のエレメントは、サーバーセキュリティを設定します。 含まれるエレメント LogInLimits、MaxUrlLength、VirtualDirectoryForFile 使用できるバージョン Flash Media Server 4 SegmentsPool コンテナエレメント。 このセクション内のエレメントは、ビデオストリーミングのパフォーマンスを向上させ、頻繁に使用されるビデオファイル をメモリ内に保持するために、セグメントプールが Flash Media Server 内のビデオファイルのセグメントをキャッシュする 方法を設定します。 含まれるエレメント MaxCacheUnits、MaxCacheSize、MaxUnitSize、FreeRatio、GlobalRatio、MaxAge、UpdateInterval、FreeMemRatio Server コンテナエレメント。 Server エレメント内にネストされるエレメントは、サーバーを設定するエレメントを格納しています。 最終更新日 2010/9/8 205 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント NetworkingIPv6、CrossDomainPath、Plugins、SSL、Process、Mask、LicenseInfo、LicenseInfoEx、ReadBufferSize、 AdminServer、AutoCloseIdleClients、ResourceLimits、Logging、Localhost、PublicIP、SWFVerification、Streams、Httpd ServerDomain サーバーコンピューターの(ドメインを持つ)ホスト名を指定します。リモートサーバーへのネット接続を確立する場合、 サーバーはこの値を使って、参照元のヘッダータグでホスト名を設定します。このエレメントが空の場合、参照元のヘッ ダーの「hostname」フィールドも空になります。セキュリティ上の理由により、接続要求の一部としてこの情報が必要な アプリケーションサーバーもあります。このエレメントを設定しない場合、参照元のヘッダーにホスト名フィールドは提供 されません。 例 <ServerDomain>mydomain.global.mycompany.com</ServerDomain> Service Httpd コンテナに格納されています。 Windows 上でのみ、NT サービスとして Web サーバーのインストールに使用する名前を指定します。 Services コンテナエレメント。 このセクション内のエレメントは、エッジプロセスとコアプロセスの間の送受信で使用される IPC メッセージを制御しま す。 含まれるエレメント HeapSize、MaxQueueSize SmallMemPool コンテナエレメント。 このセクション内のエレメントは、小規模なメモリプールを設定します。このメモリプールは、サーバーに小さいメモリブ ロックを保存して、小規模な割り当てでのパフォーマンスを向上します。 含まれるエレメント MaxCacheUnits、MaxCacheSize、MaxUnitSize、FreeRatio、GlobalRatio、MaxAge、UpdateInterval、FreeMemRatio SocketGC AdminServer コンテナと ResourceLimits コンテナに格納されています。 サーバーがアクティブでないソケットをチェックして削除する間隔を秒単位で指定します。デフォルト値は 60 秒です。 例 <SocketGC>60</SocketGC> 最終更新日 2010/9/8 206 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 SocketOverflowBuckets Edge、Core、Admin、ECCP、ACCP の各コンテナに格納されています。 ソケットテーブル内のすべてのスロットが使用されている場合のオーバーフローバケットの数を指定します。 バケットのデフォルト数は 16 です。バケットのデフォルト数を使用するには -1 を指定します。 例 <Admin> <SocketOverflowBuckets>-1</SocketOverflowBuckets> </Admin> SocketRcvBuff クライアントソケット受信バッファーのサイズ(バイト) 。デフォルト値は 0 で、オペレーティングシステムのデフォルト値 を使用するようにサーバーに指示します。 大きなソケットバッファーを必要とする非常に広い帯域幅の接続を使用している場合にのみ、この値を明示的に設定する必 要があります。大きな値を設定すると、各クライアントにより使用されるメモリ容量が大幅に増加します。この値は明示的 に設定しないことをお勧めします。 SocketSndBuf クライアントソケット送信バッファーのサイズ(バイト) 。デフォルト値は 0 で、オペレーティングシステムのデフォルト値 を使用するようにサーバーに指示します。 大きなソケットバッファーを必要とする非常に広い帯域幅の接続を使用している場合にのみ、この値を明示的に設定する必 要があります。大きな値を設定すると、各クライアントにより使用されるメモリ容量が大幅に増加します。この値は明示的 に設定しないことをお勧めします。 SocketTableSize Edge、Core、Admin、ECCP、ACCP の各コンテナに格納されています。 迅速なルックアップのためのダイレクトアクセスソケットテーブルのサイズを指定します。デフォルトサイズは 200 です。 デフォルト値に設定するには、-1 にします。 例 <Admin> <SocketTableSize>-1</SocketTableSize> </Admin> SSL コンテナエレメント。 Server.xml ファイル内の SSL エレメントは、外部への接続をセキュアにし、サーバーが SSL 対応クライアントとして動作 するように設定します。 含まれるエレメント SSLRandomSeed、SSLSessionCacheGC、SSLClientCtx 最終更新日 2010/9/8 207 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 SSLCACertificateFile SSLClientCtx コンテナに格納されています。 PEM(Privacy Enhanced Mail)暗号形式の 1 つ以上の CA(Certificate Authority:認証機関)電子証明書を含むファイ ルの名前を指定します。 SSLCACertificatePath SSLClientCtx コンテナに格納されています。 CA 証明書を格納するディレクトリの名前を指定します。ディレクトリの各ファイルに含めることのできる CA 証明書は 1 つだけです。ファイル名は、ファイル拡張子としてハッシュが「0」である必要があります。 Win32 の場合のみ:このエレメントが空の場合、conf ディレクトリと同じレベルにある certs ディレクトリ内で CA 証明 書が検索されます。Windows 証明書ストアは、コマンドラインで FMSMaster - console - initialize を実行することにより、こ のディレクトリにインポートできます。 SSLCipherSuite SSLClientCtx コンテナに格納されています。 通信をセキュアにするためにサーバーが使用する暗号スイートを指定します。 このエレメントは、鍵交換アルゴリズム、認証方法、暗号化方法、ダイジェストタイプまたは共通グループ用の選択した数 のエイリアスの 1 つなどの暗号化リソースをコロンで区切ったリストです。暗号リストの各項目では、アルゴリズムまたは 暗号を含めるか含めないかを指定します。他に、特別なキーワードや接頭辞もあります。例えば、キーワード ALL はすべて の暗号を指定し、接頭辞 ! はリストから暗号を削除します。 デフォルトの暗号リストは、発行元不明の Diffie-Hellman 認証を使用する暗号、強度の低い暗号、エクスポート暗号およ び MD5 ハッシュをブロックし、これら以外のすべての暗号を受け付け、暗号の強度によって暗号を分類するようサーバー に指示します。 重要:デフォルトの設定を変更する場合は、事前に Adobe テクニカルサポートにお問い合わせください。 暗号リストは、1 つ以上の暗号文字列をコロンで区切ったものです。カンマまたはスペースも区切り文字として使用できま すが、通常は、コロンを使用します。 暗号文字列には、次のような異なる形式を使用できます。 • RC4-SHA などの単一の暗号スイートで構成できます。 • 特定のアルゴリズムを含む暗号スイート、または特定タイプの暗号スイートを複数セット表示することができます。 例えば、SHA1 はすべての暗号スイートがダイジェストアルゴリズム SHA1 を使用していることを、そして SSLv3 はすべ ての暗号スイートが SSL v3 アルゴリズムであることを示しています。 • 論理 and 演算としてキャラクタ + を使用することで、複数の暗号スイートを組み合わせて単一の暗号文字列にすること ができます。 例えば、SHA1+DES は、すべての暗号スイートに SHA1 および DES アルゴリズムが含まれることを示します。 • 各暗号文字列の先頭に、キャラクタ !、- または + を使用することもできます。 • ! を使用すると、暗号はリストから恒久的に削除されます。削除された暗号は、明示的に記述されていてもリストに再度 表示されることはありません。 • - を使用すると、暗号はリストから削除されますが、後で暗号の一部または全体を再追加することができます。 • + を使用すると、暗号はリストの最後に移動されます。このオプションによって新しい暗号が追加されることはありませ ん。該当する既存の暗号文を移動するだけです。 最終更新日 2010/9/8 208 FLASH MEDIA SERVER 4.0 設定および管理ガイド 209 XML 設定ファイルの参照 • これらのキャラクタのいずれもない場合、その文字列は単なる暗号リストと見なされ、現在の優先リストに追加されま す。 • 既に存在する暗号がリストに含まれる場合、サーバーはそれらを評価しません。 • 暗号文字列 @STRENGTH は、現在の暗号リストを暗号アルゴリズムの鍵長順に分類します。 各コンポーネントを適切な接尾辞と組み合わせて、サーバーが受け付けることのできる暗号のみを含む暗号リストを優先順 に作成します。 例 上記の暗号文字列は、発行元不明または 1 回限りの Diffie-Hellman 鍵交換アルゴリズムを使用する暗号を除くすべての暗 号を受け付けるようサーバーに指示しています。 <SSLCipherSuite>ALL:!ADH:!EDH</SSLCipherSuite> これらの暗号文字列は、RSA 鍵交換アルゴリズムのみを受け付け、エクスポート暗号またはヌル暗号化を拒否するようサー バーに指示しています。サーバーは、両方の文字列を同等と評価します。 <SSLCipherSuite>RSA:!NULL!EXP</SSLCipherSuite> <SSLCipherSuite>RSA:LOW:MEDIUM:HIGH</SSLCipherSuite> 上記の暗号リストは、すべての暗号を受け付け、強度の高い順に並べるようサーバーに指示しています。このシーケンスに より、クライアントは、クライアントとサーバーの双方で受け付けることのできる強度が最高の暗号をネゴシエートできま す。 <SSLCipherSuite>ALL:+HIGH:+MEDIUM:+LOW:+EXP:+NULL</SSLCipherSuite> 上記の文字列は、強度が高または中の暗号のみを、強度が高を優先して受け付け、エクスポート強度の暗号を拒否するよう サーバーに指示しています。 <SSLCipherSuite>ALL:+HIGH:!LOW:!EXP:!NULL</SSLCipherSuite> 上記の文字列は、すべての暗号を受け付け、SSLv2 暗号を SSLv3 暗号の後に配置するようサーバーに指示しています。 <SSLCipherSuite>ALL:+SSLv2</SSLCipherSuite> 次の表は、サーバーが評価することのできるコンポーネントの完全なリストです。 鍵交換アルゴリズム 説明 kRSA 鍵交換 kDHr RSA 鍵による Diffie-Hellman 鍵交換 kDHd DSA 鍵による Diffie-Hellman 鍵交換 -RSA[1024-RSA] 1 回限りの Diffie-Hellman 鍵交換 DH RSA 鍵交換 EDH 1 回限りの Diffie-Hellman 鍵交換 ADH 匿名の Diffie-Hellman 鍵交換 認証方法 説明 aNULL 認証なし aRSA RSA 認証 aDSS DSS 認証 aDH Diffie-Hellman 認証 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 210 XML 設定ファイルの参照 暗号化方法 説明 eNULL エンコーディングなし DES DES エンコーディング 3DES トリプル DES エンコーディング RC4 RC4 エンコーディング RC2 RC2 エンコーディング IDEA IDEA エンコーディング NULL 暗号化なし EXP すべてのエクスポート暗号(40 ビットの暗号化) LOW 強度が低い暗号(エクスポート、DES ではないもの) MEDIUM 128 ビット暗号化 [AES-CBC 128 びっとあんごうか ] HIGH トリプル DES エンコーディング ダイジェストタイプ 説明 MD MD5 ハッシュ関数 SHA1 SHA1 ハッシュ関数 SHA SHA ハッシュ関数 その他のエイリアス 説明 All すべての暗号 SSLv2 すべての SSL バージョン 2.0 の暗号 SSLv3 すべての SSL バージョン 3.0 の暗号 DSS DSS 認証を使用しているすべての暗号 SSLClientCtx コンテナエレメント。 外部への接続をセキュアにし、サーバーが SSL 対応クライアントとして動作するように設定します。 含まれるエレメント SSLVerifyCertificate、SSLCACertificatePath、SSLCACertificateFile、SSLVerifyDepth、SSLCipherSuite SSLRandomSeed SSL コンテナに格納されています。 PRNG をシードするために使用するエントロピーのバイト数を指定します。8 バイト未満の値は指定できません。デフォル トは 16 です。エントロピーは乱数の尺度です。エントロピーが大きくなるほど、PRNG の乱数も多くなります。 例 <SSLRandomSeed>16</SSLRandomSeed> 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 SSLSessionCacheGC SSL コンテナに格納されています。 サーバーサイドのセッションキャッシュから期限切れのセッションをチェックして削除する間隔を指定します。 例 <SSLSessionCacheGC>5</SSLSessionCacheGC> SSLVerifyCertificate SSLClientCtx コンテナに格納されています。 サーバーにより返された証明書を検証するかどうかを指定します。証明書の確認は、デフォルトでは有効になっています。 証明書の確認を無効にするには、false を指定します。 注意:証明書検証を無効にすると、セキュリティに関する問題が生じる可能性があります。 例 <SSLVerifyCertificate>true</SSLVerifyCertificate> SSLVerifyDepth SSLClientCtx コンテナに格納されています。 受け入れる証明書チェーンの最大深度を指定します。自己署名されたルート証明書がこの深さで見つからない場合は、証明 書の確認に失敗します。デフォルト値は 9 です。 例 <SSLVerifyDepth>9</SSLVerifyDepth> StreamAdaptors ストリームの接頭辞に基づいて、特定のストリームに対してどのライブラリをロードするかを指定します。これは、各スト リームタイプに対するサーバーによってロードできるライブラリのホワイトリストを効率的に定義します。 ストリームを再生するときに、接頭辞を指定します。接頭辞は、どのようなストリームであるかを示します。次の例は、ス トリームが MP3 タイプであることを示す接頭辞を示しています。 play("mp3:mystream.mp3"); 接頭辞は必ずしもファイルタイプに一致しないことに注意してください。例えば、MP4 に対して、次のものを指定できま す。 play("mp4:mystream.f4v"); この場合、MP4 はエンコーディングであり、ファイルタイプではありません。このため、mp4:mystream.mov、 mp4:mystream.mp4 などを使用できます。 特定のストリームに対するライブラリを指定するには、次のシンタックスを使用してサブエレメントを追加します。 <prefix lib="library_name"/> サポートされるストリームは次のとおりです。 • FLV(flv サブエレメントによって指定されたライブラリによって処理されます) • F4F (f4f サブエレメントによって指定されたライブラリによって処理されます) • ID3(id3 サブエレメントによって指定されたライブラリによって処理されます) 最終更新日 2010/9/8 211 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 • MP3(mp3 サブエレメントによって指定されたライブラリによって処理されます) • MP4(mp4 サブエレメントによって指定されたライブラリによって処理されます) • RAW(raw サブエレメントによって指定されたライブラリによって処理されます ) FLV ストリームには、次のように、接頭辞または拡張子を指定しません。 play("mystream"); この場合は、FLV ファイルに対して定義するアダプターは、接頭辞と一致しません(存在しないため)。flv サブエレメント によって定義されたライブラリは、ストリームを処理するためにどのライブラリを使用するかを決定するために、Flash Media Server によって内部で照合されます。 例 <flv <f4f <mp3 <mp4 <raw <id3 lib="libflv"/> lib="libf4f"/> lib="libmp3"/> lib="libmp4"/> lib="libraw"/> lib="libid3"/> 関連項目 Streams StreamLogLevel すべてのストリームアダプター(FLV、MP4 および RAW)ログレベルを制御します。使用できる値は、verbose、warning および error です。 デフォルト値は warning です。 例 <StreamLogLevel>warning</StreamLogLevel> 関連項目 Streams Streams コンテナエレメント。 Streams エレメントは、サーバーが MP4、F4V、MOV その他の MP4 ファイルタイプをどのように再生および記録するか を設定します。 含まれるエレメント Mp4、StreamLogLevel、StreamAdaptors SWFFolder SWFVerification コンテナに格納されています。 このサーバー上のいずれかのアプリケーションに接続するための検証済み SWF ファイルを格納しているフォルダーを指定 します。複数のディレクトリはセミコロンで区切ります。 最終更新日 2010/9/8 212 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 次の例では、C ディレクトリまたは D ディレクトリのいずれかの SWF ファイルを認証することを許可します。 <SWFFolder>C:\SWFs;D:\SWFs</SWFFolder> SWFVerification コンテナエレメント。 アプリケーションへの SWF ファイルの接続の検証方法を設定するエレメントを格納しています。 含まれるエレメント SWFFolder、DirLevelSWFScan、MaxInitDelay、MinGoodVersion、Cache TerminatingCharacters Logging コンテナに格納されています。 ログファイル内の各ログ項目の最後のキャラクタを指定します。デフォルトは CRLF(復帰と改行)です。 例 <TerminatingCharacters>CRLF</TerminatingCharacters> ThreadPoolGC ResourceLimits コンテナに格納されています。 Flash Media Server が、使用されていない I/O スレッドをチェックして削除する間隔を分単位で指定します。 デフォルトの間隔は 20 分です。20 分未満を指定することはできません。 例 <ThreadPoolGC>25</ThreadPoolGC> Time Logging コンテナに格納されています。 ログファイルの time フィールドを指定します。 ログファイルの time フィールドは、UMT(GMT、標準時間)または現地時間で指定します。デフォルト設定は、false で す。 例 <Time>local</Time> TrimSize HandleCache コンテナに格納されています。 削除するキャッシュ済みハンドルの比率を指定します。0% ∼ 100% に対応する 0 ∼ 1 の数値を指定できます。デフォルト 値は 0.2(20%)です。 最終更新日 2010/9/8 213 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <TrimSize>0.2</TrimSize> TTL Cache コンテナに格納されています。 各 SWF ファイルが SWF 検証データキャッシュ内に存続する時間を分単位で指定します。デフォルト値は 1,440 分(24 時 間)です。 UID Process コンテナに格納されています。 このエレメントには、サーバープロセスのユーザー ID が格納されています。 UID または GID を指定しない場合、サーバーまたは Administration Server が root として稼働します。このエレメントは、 Linux システムで稼働する Flash Media Server に対してのみ適用できます。 関連項目 gid UpdateInterval スレッド統計が収集される頻度を指定します。デフォルトでは、1,024 メッセージごとです。 例 <UpdateInterval>1024</UpdateInterval> UpdateInterval(Cache) Cache コンテナに格納されています。 キャッシュにミスがあるときに、サーバーが SWF フォルダーをスキャンして更新がないかどうかチェックするまでの最大 待機時間を分単位で指定します。デフォルト値は 5 分です。 UserDefined コンテナエレメント。 UserDefined エレメント内のエレメントトを定義して、File プラグインと Authorization プラグインを取得できるデータを 格納します。詳細については、www.adobe.com/go/learn_fms_pluginapi_jp にある『Flash Media Server プラグイン API リファレンス』の「getConfig() メソッド」を参照してください。 VirtualDirectoryForFile File オブジェクトの仮想ディレクトリマッピングを有効にします。デフォルトは無効です。 Application.xml ファイル内の File オブジェクトをマップする際に、Server.xml ファイル内で機能を有効にしていない場 合、次のメッセージがログに表示されます。 "Virtual directories for file objects is not supported due to the Server level security setting." このログメッセージが表示されないようにするには、VirtualDirectoryForFile を有効にします。詳細については、38 ページ の「サーバーサイドの File オブジェクト向け仮想ディレクトリマッピングの有効化」を参照してください。 最終更新日 2010/9/8 214 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <VirtualDirectoryForFile enable="false"></VirtualDirectoryForFile> 関連項目 Client 使用できるバージョン Flash Media Server 4 VideoAutoBufferReadSize Playback コンテナに格納されています。 サーバーは F4V/MP4 ビデオ、オーディオ、その他のデータをメモリにキャッシュします。データをキャッシュすること で、サーバーによるディスク読み取りの回数が減り、パフォーマンスが向上します。各種類のデータ(オーディオ、ビデオ、 その他)には独自のキャッシュが存在します。各キャッシュのサイズを、配信するコンテンツの種類に応じて調整すると、 ディスクパフォーマンスを向上できます。例えば、オーディオコンテンツのみを配信する場合、AudioAutoBufferReadSize バッファーを増やし、VideoAutoBufferReadSize バッファーを減らします。 最低サイズは 1,024 バイトです。初期設定値は 153,600 バイトです。 Users.xml ファイル Users.xml ファイルは、RootInstall/conf ディレクトリの root レベルにあります。このファイルを編集すると、Flash Media Server 管理者を識別し、アクセス権限を設定できます。また、このファイルを編集すると、Flash Media Administration Server への Administration API 呼び出しの権限を設定できます。 エレメントの構造とデフォルト値を参照するには、Flash Media Server の RootInstall/conf/ ディレクトリにインストール されている Users.xml ファイルを確認します。 AdminServer コンテナエレメント。 AdminServer コンテナ内にネストされる HttpCommands コンテナは、Flash Media Administration Server へのアクセスレ ベルを設定します。 Administration Service は、Flash Media Server から分離しています。管理者が Administration Console を使って Flash Media Server に接続するとき、実際には Flash Media Administration Server に接続され、次に Administration Server が Flash Media Server と接続します。 含まれるエレメント HTTPCommands Allow(HTTPCommands) 管理者が HTTP を使用してアクセス可能な Flash Media Administration Server コマンドのリストを示します。コマンド をカンマで区切ったリストを作成することで、管理者に複数の HTTP コマンドの使用を許可できます。値 All を指定する と、すべての HTTP コマンドの使用を管理者に許可することになります。ただし、セキュリティリスクが生じるため、この 値の使用は推奨されません。 最終更新日 2010/9/8 215 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <Allow>foo.yourcompany.com,adobe.com,10.60.1.133,10.60</Allow> 関連項目 Enable、Deny (HTTPCommands) および Order(HTTPCommands) Allow (User) 管理者が Flash Media Administration Server への接続のために使用できる特定のホストのリストを定義します。管理者 は、この Allow エレメントで指定したホストからのみサーバーに接続できます。管理者のアクセスを許可するには、アクセ ス可能なホスト名またはドメイン名、および IP アドレスの全体または一部(または、いずれか一方)をカンマで区切ったリ ストを作成します。接続要求を処理する際のサーバーのパフォーマンスを向上させるため、Allow エレメントでは可能な限 り IP アドレスを使用します。 例 <Allow>foo.yourcompany.com, adobe.com, 10.60.1.133, 10.60</Allow> 関連項目 Password、Deny(User)、Order(User) Deny (HTTPCommands) Flash Media Server は、Deny という名前の 2 つのエレメントを使用します。User コンテナ内の Deny エレメントと HTTPCommands コンテナ内の Deny エレメントです。 この Deny エレメントは、HTTP を介して管理者が使用できない Flash Media Administration Server コマンドのリストを 示します。 Administration Service へのアクセスのために管理者が複数の HTTP コマンドを使用できないようにするには、その HTTP コマンドをカンマで区切ったリストを作成します。 例 <Deny>Deny,Allow</Deny> 関連項目 Enable、Allow(HTTPCommands)、Order(HTTPCommands) Deny(User) Flash Media Server は、Deny という名前の 2 つのエレメントを使用します。User コンテナ内の Deny エレメントと HTTPCommands コンテナ内の Deny エレメントです。 このエレメントは、Flash Media Administration Server への接続のために管理者が接続することを許可されていないホス トのリストを示します。管理者のアクセスを制限するには、ホスト名またはドメイン名、および IP アドレスの一部または全 体(または、いずれか一方)をカンマで区切ったリストを作成します。 例 この例は、Flash Media Administration Server が受け付けない接続要求を送信するコンピューターのリストを示していま す。 <Deny>foo.yourcompany.com,adobe.com,10.60.1.133,10.60</Deny> 最終更新日 2010/9/8 216 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 Password、Allow (User)、Order(User) Enable このエレメントは、管理コマンドを実行する HTTP 要求の使用を有効または無効にします。 このエレメントを設定すると、HTTP 要求は管理コマンドを実行できます。HTTP 要求の使用による管理アクセスを無効 にするためには、このエレメントを設定しないでください。 例 <Enable>true</Enable> 関連項目 Allow(HTTPCommands)、Deny (HTTPCommands)、Order(HTTPCommands) HTTPCommands コンテナエレメント。 このセクションには、HTTP を使用してアクセス可能な Flash Media Administration Server コマンドの設定が格納されて います。デフォルト値は true です。HTTP 経由で呼び出すことができる各 Administration API をカンマで区切ったリスト で指定します。完了する場合、サーバーを再起動します。 含まれるエレメント Enable、Allow(HTTPCommands)、Deny (HTTPCommands)、Order(HTTPCommands) Order(HTTPCommands) Flash Media Server は、Order という名前の 2 つのエレメントを使用します。1 つは HTTPCommands コンテナで、もう 1 つは User コンテナで使用します。 Deny コマンドと Allow コマンドを評価する順序を指定します。 例 シーケンス Deny, Allow は、HTTP コマンドが Allow リストにあるか Deny リストにない場合に許可されることを示します。 <Order>Deny,Allow</Order> シーケンス Allow, Deny は、HTTP コマンドが Allow リストにある上に、Deny リストにない場合に許可されることを示しま す。 <Order>Allow,Deny</Order> 関連項目 Enable、Allow(HTTPCommands)、Deny (HTTPCommands) Order(User) Flash Media Server は、Order という名前の 2 つのエレメントを使用します。1 つは HTTPCommands コンテナで、もう 1 つは User コンテナで使用します。 管理者のために Flash Media Server が Allow エレメントと Deny エレメントを評価する順序を指定します。 最終更新日 2010/9/8 217 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 デフォルトシーケンス Allow, Deny は、ユーザーがコマンドの Allow リストに指定されていて、かつ Deny リストに指定され ていない場合に、管理アクセスが許可されることを示します。 <Order>Allow,Deny</Order> もう一方のシーケンス Deny, Allow は、ユーザーがコマンドの Deny リストに指定されていて、かつ Allow リストには指定さ れていない場合を除いて、管理アクセスは許可されることを示します。 <Order>Deny,Allow</Order> 関連項目 Password、Allow (User)、Deny(User) Password vhost 管理者のためのパスワードを指定します。 パスワードを空白("")にすることはできません。パスワードは、通常、暗号化されます。次の例では、encrypt 属性はサー バーに対して、パスワードを暗号化するように指示しています。encrypt 属性を true に設定すると、ファイルで表示されるパ スワードは暗号化され、エンコードされた文字列と見なされます。 例 <Password encryt="true"></password> 関連項目 Allow (User)、Deny(User)、Order(User) Root コンテナエレメント。 Root エレメントは、他のすべてのエレメントのコンテナになります。(仮想ホストの管理者を定義するための)Users.xml ファイルが仮想ホストの下に存在する場合、このタグの name 属性をその仮想ホストの名前に設定する必要があります。 例 <Root name="_defaultVHost_"> User このエレメントは、サーバーの管理者を特定します。 1 つの仮想ホストの複数の管理者を特定するには、各管理者のプロファイルを作成します。 例 name 属性を使用して、Flash Media Server 管理者のログイン名を特定します。 <User name="jsmith"></User> 関連項目 UserList 最終更新日 2010/9/8 218 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 UserList コンテナエレメント。 UserList エレメントは、サーバー管理者に関する情報を定義および保持します。 含まれるエレメント User、Password、Allow (User)、Deny(User)、Order(User) Vhost.xml ファイル Vhost.xml 設定ファイルは、各仮想ホストを定義します。サーバー上の各仮想ホストディレクトリには、それぞれの Vhost.xml ファイルがあります。 Vhost.xml ファイルには、その仮想ホストの設定を定義するエレメントが格納されています。これらの設定項目には、仮想 ホストのエイリアス、仮想ホストのアプリケーションディレクトリの場所、仮想ホストが使用できるリソースの限度および その他のパラメーターがあります。 各仮想ホスト専用のディレクトリが、アダプターディレクトリ内にあります。そのディレクトリの名前は、 streaming.adobe.com のように、仮想ホストの実際の名前にする必要があります。定義した各仮想ホストは、サーバーコ ンピューターの IP アドレスを指定する DNS(domain name server)エントリ、または WINS アドレスや hosts ファイル などによる名前の解決でマッピングする必要があります。 各アダプターには、ユーザーが定義したカスタム仮想ホストに加え、_defaultVHost_ ディレクトリを含める必要がありま す。クライアントアプリケーションが存在しない仮想ホストに接続しようとすると、サーバーはそのアプリケーションと _defaultVHost_ の接続を試行します。仮想ホストを持つアダプターのためにセキュアポートを使用している場合、アダプ ターに対して定義できる仮想ホストは、_defaultVHost_ ほか 1 つのみです。 Vhost.xml ファイル内のエレメントの構造とデフォルト値を参照するには、Flash Media Server の RootInstall/conf/_defaultRoot_/_defaultVhost_ ディレクトリにインストールされている Vhost.xml ファイルを確認し ます。 Access コンテナエレメント。 Access コンテナ内にネストされるエレメントは、アクセスログ設定を指定します。アクセスログは、RootInstall\logs ディ レクトリに格納されます。 含まれるエレメント Checkpoints AggregateMessages 仮想ホストがエッジサーバーとして設定されている場合に、エッジキャッシュから集約メッセージを配信するかどうかを決 定します。デフォルト値は false です。 この設定を無効にした場合、エッジサーバーが発信元から集約メッセージを受信すると、メッセージはキャッシュされる前 に分割されます。 最終更新日 2010/9/8 219 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 <AggregateMessages enabled="true" <MaxAggMsgSize>65536</MaxAggMsgSize>> </AggregateMessages> 関連項目 EdgeAutoDiscovery、RouteEntry Alias Alias エレメントは、仮想ホストのエイリアス名(複数可)を指定します。 エイリアスは、仮想ホストへの接続時に使用する短い別名です。Alias エレメントでは、この仮想ホストに接続するための代 替名(複数可)を指定できます。長いホスト名を短くする場合や、異なる名前で仮想ホストに接続する必要がある場合に、 Alias エレメントを使用します。 例 <Alias name="abc">abc.adobe.com</Alias> この仮想ホストの名前が「abc.adobe.com」で、「abc」と簡単に指定して接続したい場合には、エイリアスを abc と指定し ます。abc は、必ず「abc.adobe.com」と同じ IP アドレスにマッピングする必要があります。 同一アダプターで複数の仮想ホストが同じエイリアスで定義された場合は、最初に合致したものがサーバーによって使用さ れます。予測されない動作を避けるため、各仮想ホストには一意のエイリアスを指定するようにします。 関連項目 AliasList AliasList コンテナエレメント。 このセクション内にネストされるエレメントは、この仮想ホストの 1 つ以上のエイリアスのリストを示します。Alias エレメ ントを追加することで、いくつでもエイリアスを指定できます。各 Alias は、その仮想ホストの IP アドレスにマップする必 要があります。 含まれるエレメント AggregateMessages Allow このエレメントは、この仮想ホストへの接続が許可されているドメインをカンマで区切ったリストです。デフォルト値は true です。Allow エレメントが空の場合、同じドメインからの接続のみが許可されます。 例 <Allow>adobe.com,yourcompany.com</Allow> 上記の例は、ドメイン adobe.com および yourcompany.com からの接続のみを許可しています。 <Allow>localhost</Allow> 上記の例は、localhost 接続のみを許可しています。 <Allow>all</Allow> 最終更新日 2010/9/8 220 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 上記の例は、すべてのドメインからの接続を許可しています。セキュリティリスクを生じる可能性があるため、all の使用は 推奨されません。 関連項目 Anonymous AllowOverride rtmpd プロトコルを指定することにより、エッジの自動検出の上書きを許可するかどうかを指定します。有効にした場合、 エッジの自動検出がデフォルトで実行されます。 例 <AllowOverride>true</AllowOverride> 関連項目 Enabled、WaitTime Anonymous 仮想ホストを匿名プロキシ(暗黙プロキシまたは透過プロキシとも呼ばれます)または明示プロキシとして設定します。デ フォルト値は false です。このエレメントを true に設定すると、到着する URI をインターセプトする暗黙プロキシが作成さ れます。 匿名プロキシと明示プロキシはどちらも、オリジンサーバーに接続するためのクライアントの要求をインターセプトし、集 約します。匿名プロキシと明示プロキシの主な違いには、次の点があります。 • 匿名サーバーの ID(IP アドレスとポート番号)は、クライアントからわからないようになっています。 • 匿名プロキシは、クライアントをオリジンサーバーに接続する前に、到着する URI に含まれるルーティング情報を変更 または修正することはありません。 • 明示プロキシの URI は、オリジンサーバーへの接続要求をインターセプトするエッジサーバーを指定します。 URI でこれらのエッジサーバーを指定することで、プロキシのチェーンを作成できます。 • チェーン内の匿名プロキシは、URI のルーティング情報を修正することなく、チェーン内の次のエッジサーバーに渡し ます。 • 明示プロキシチェーンの URI に含まれるルーティング情報は、オリジンサーバーへの接続要求をインターセプトするた めに互いにチェーン化されているエッジサーバーを指定します。 • • 明示プロキシのチェーンの URI に含まれるルーティング情報は、チェーン内のエッジサーバーの配列まで特定します。 明示プロキシチェーンの URI は、オリジンサーバーへの接続を行う前に、すべてのクライアントの接続要求を、一連の エッジサーバーに順番にダイレクトします。 • 明示プロキシは、チェーン内の次のサーバーに URI を渡す前に、URI に含まれるトークンまたは識別子を削除して、 URI 内のルーティング情報を変更します。 例 <Anonymous>false</Anonymous> 関連項目 Mode、CacheDir、LocalAddress、RouteTable、EdgeAutoDiscovery、AggregateMessages 最終更新日 2010/9/8 221 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 AppInstanceGC アプリケーションインスタンスの使用されていないリソース(共有オブジェクト、ストリーム、スクリプトエンジンなど) をチェックして削除する間隔を指定します。 デフォルトの間隔は 1 分です。 例 <AppInstanceGC>1</AppInstanceGC> 関連項目 MaxConnections、MaxEdgeConnections、MaxAppInstances、MaxStreams、MaxSharedObjects AppsDir この仮想ホストのアプリケーションディレクトリを指定します。 アプリケーションディレクトリは、この仮想ホストのためのすべてのアプリケーションが定義されているベースディレクト リです。アプリケーション名のサブディレクトリを作成して、アプリケーションを定義します。 • Windows では、AppsDir のデフォルトの格納場所は C:\Program Files\Adobe\Flash Media Server 4\applications で す。 • Linux では、デフォルトの格納場所は /opt/adobe/fms/applications です。 注意:このタグを使用してネットワークドライブにマッピングする場合、詳細については 46 ページの「ネットワークドラ イブへのディレクトリのマッピング」を参照してください。 例 <AppsDir>C:\MyApps;D:\NewApps</AppsDir> 複数のアプリケーションディレクトリを指定する場合は、場所をセミコロン(;)で区切ります。アプリケーションサブディ レクトリをそれぞれ持つ 2 つの場所を指定できます。AppsDir エレメントのデフォルトの格納場所を変更する場合は、必ず、 各ディレクトリ内に admin という名前のディレクトリを含めるようにしてください。こうすることで、Administration Console(fms_adminConsole.swf)が仮想ホストに接続できるようになります。 このエレメントで場所を指定していない場合、アプリケーションディレクトリは vhost ディレクトリにあると見なされます。 例 次の例は、ネットワークドライブへのマッピングを示しています。 <AppsDir>\\myNetworkDrive\share\fmsapps</AppsDir> 関連項目 AliasList、ResourceLimits、VirtualKeys AutoCloseIdleClients コンテナエレメント。 アイドル状態のクライアントを自動的に閉じるかどうかを確定します。 アイドル状態のクライアントを閉じるには、enable 属性を true に設定します。enable 属性を省略するか、false に設定した場 合、この機能は無効になります。デフォルト値は false です。 最終更新日 2010/9/8 222 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 データを送受信しているクライアントはアクティブなクライアントです。AutoCloseIdleClients を使用して、クライアントが アイドル状態かどうかをサーバーがチェックする頻度を指定します。クライアントが最大アイドル時間(デフォルトは 60 秒)より長い間アイドル状態になっている場合、サーバーは NetConnection オブジェクト(クライアント)にステータス メッセージを送信します。サーバーは、サーバーへのクライアント接続を閉じて、メッセージをアクセスログに書き込みま す。また、「クライアント x は y 秒間アイドル状態です」などのメッセージをコアおよびイベントログに書き込みます。 アイドル状態の接続の終了について設定するには、Server.xml ファイル内でこの機能を有効にする必要があります。 Server.xml ファイル内でこの機能を有効にすると、Vhost.xml ファイル内で個々の仮想ホスト機能を、または Application.xml 内で個々のアプリケーション機能を無効にすることができます。Application.xml ファイルで値が定義さ れていなければ、Vhost に接続されているすべてのクライアントに対して、Vhost.xml 設定ファイルで定義された値が適用 されます。Application.xml の値は Vhost.xml の値より優先されます(以降は、Vhost.xml ファイルで値が定義されてい なければ、サーバーに接続されているすべてのクライアントに対して、Server.xml 設定ファイルで定義された値が適用され ます。Vhost.xml の値は Server.xml の値より優先されます)。 例 <AutoCloseIdleClients enable="false"> <MaxIdleTime>600</MaxIdleTime> </AutoCloseIdleClients> 関連項目 AppsDir、MaxIdleTime CacheDir コンテナエレメント。 このエレメントは、記録されたストリームのディスクへの書き込みを有効または無効にします。キャッシュの動作を制御す るには、エッジサーバーまたは中間オリジンサーバーでこのエレメントを設定します。キャッシュ変更のコンテンツ。この エレメントは、メモリにキャッシュされたストリームをさらにディスクにも書き込むかどうかを制御します。 エッジサーバーは、特に VOD(ビデオオンデマンド)アプリケーションについて、ローカルでコンテンツをキャッシュし てパフォーマンス向上を図ります。静止コンテンツをキャッシュすると、オリジンサーバーの全体的な負荷が削減されます。 enabled 属性のデフォルト値は false です。useAppDir 属性により、キャッシュサブディレクトリをアプリケーションごとに 分けるかどうかが決まります。デフォルト値は true です。 サーバーに複数の仮想ホストがある場合、各仮想ホストは自身のキャッシュディレクトリをポイントしている必要がありま す。 含まれるエレメント Mode、Anonymous、LocalAddress、RouteTable、Path、MaxSize 関連項目 RequestTimeout Checkpoints チェックポイントイベントの記録を有効にします。チェックポイントイベントは、イベントの開始から終了までの間、定期 的に数バイトをログ出力します。チェックポイントイベントとして使用できるのは、connect-continue、play-continue および publish-continue です。 このエレメントには enable 属性が含まれており、true または false に設定できます。enable 属性を true に設定すると、ログ でチェックポイントイベントが有効になります。デフォルト値は false です。 最終更新日 2010/9/8 223 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 チェックポイントイベントは、Server.xml ファイルでサーバーレベルで有効にする必要があります。Vhost.xml および Application.xml ファイルで、仮想ホストまたはアプリケーションレベルでチェックポイントを無効にすることができます。 ログアウトの間隔を、仮想ホストおよびアプリケーションレベルで変更することもできます。 含まれるエレメント CheckInterval、LogInterval DNSSuffix この仮想ホストのプライマリ DNS 接尾辞を指定します。 DNS 逆引き参照でホスト名の一部としてドメイン名を返せなかった場合は、このエレメントがドメイン接尾辞として使用 されます。 関連項目 AliasList、AppsDir、ResourceLimits、VirtualKeys、VirtualDirectory EdgeAutoDiscovery コンテナエレメント。 エッジの自動検出を設定するエレメントを格納しています。エッジサーバーは、クラスタの一部である別のサーバーに接続 する場合があります。この場合、エッジサーバーは、接続すべきクラスタ内のサーバーの確定を試みます(URL で指定され たサーバーである場合と、そうでない場合があります)。 例 <EdgeAutoDiscovery> <Enabled>false</Enabled> <AllowOverride>true</AllowOverride> <WaitTime>1000</WaitTime> </EdgeAutoDiscovery> 関連項目 Enabled、AllowOverride、WaitTime Enabled エッジの自動検出を有効にするかどうかを指定します。Enabled が true に設定されている場合、エッジサーバーは接続すべ きクラスタ内のサーバーの確定を試みます。デフォルト値は false です。 例 <Enabled>false</Enabled> 関連項目 AllowOverride、WaitTime Key Flash Player が Flash Media Server に接続するときに、プラットフォームとバージョンの情報を含む文字列をサーバーに送 信します。Flash Player の情報をキーにマッピングする Key エレメントを追加できます。キーには、任意の英数字の値を使 用できます。次の例では、キーは A および B です。 最終更新日 2010/9/8 224 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 <VirtualKeys> <Key from="WIN <Key from="WIN <Key from="MAC <Key from="MAC </VirtualKeys> 8,0,0,0" 6,0,0,0" 8,0,0,0" 6,0,0,0" to="WIN to="WIN to="MAC to="MAC 9,0,45,0">A</Key> 7,9,9,9">B</Key> 9,0,45,0">A</Key> 7,9,9,9">B</Key> VirtualDirectory エレメントでは、URL で使用されている仮想ディレクトリを、ストリームを含む物理ディレクトリにマッ ピングします。次の例では、キー A を持つクライアントが URL NetStream.play("vod/someMovie") のストリームを要求した 場合、ストリーム c:\on2\someMovie.flv が提供されます。キー B を持つクライアントが URL NetStream.play("vod/someMovie") のストリームを要求した場合、ストリーム c:\sorenson\someMovie.flv が提供されます。 <VirtualDirectory> <Streams key="A">vod;c:\on2</Streams> <Streams key="B">vod;c:\sorenson</Streams> </VirtualDirectory> 注意:サーバーサイドスクリプトでこれらの値を設定することもできます。詳細については、『サーバーサイド ActionScript リファレンスガイド』の「Client.virtualKey」と「Stream.setVirtualPath()」を参照してください。 詳細については、www.adobe.com/go/learn_fms_content_jp の『設定および管理ガイド』の「コンテンツの格納場所の 設定」の節を参照してください。 関連項目 VirtualKeys LocalAddress このエレメントは、外部へのエッジ接続を特定のローカル IP アドレスにバインドします。 LocalAddress エレメントを使用して、外部からの接続と外部への接続を異なるネットワークインターフェイスに割り当てる ことができます。この方法は、要求や応答を透過的に渡すか、またはインターセプトするようにエッジを設定する場合に役 立ちます。 LocalAddress エレメントを指定しない場合は、外部への接続は Windows システムの変数 INADDR_ANY の値にバインドさ れます。 関連項目 Proxy Logging コンテナエレメント。 ロギングを制御するエレメントが格納されています。 含まれるエレメント LogInterval チェックポイントを記録する頻度を秒単位で指定します。この値は、CheckInterval の値より大きくする必要があります。値 が小さい場合、チェック間隔ごとにチェックポイントが記録されます。デフォルト値は 3600 秒(60 分)です。 最終更新日 2010/9/8 225 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 MaxAggMsgSize エッジキャッシュから返される集約メッセージのサイズをバイト単位で指定します(集約メッセージを有効にする必要があ ります)。デフォルトサイズは 65,536 です。 この設定は、ディスクキャッシュから取得されたメッセージにのみ適用されます。オリジンサーバーから直接受信された集 約メッセージは、現状のまま返されます。また、そのサイズは集約メッセージのサイズに対するオリジンサーバーの設定に より決定されます。 例 <MaxAggMsgSize>66536</MaxAggMsgSize> 関連項目 AggregateMessages MaxAppInstances 仮想ホストにロードすることができるアプリケーションインスタンスの最大数を指定します。 例えば、チャットアプリケーションでは、複数のインスタンスを必要とする場合があります。これは、各チャットルームが サーバー上のアプリケーションの異なるインスタンスによって作成されるためです。デフォルトのアプリケーションインス タンス数は 15,000 です。 Flash の SWF ファイルでは、接続しようとするアプリケーションインスタンスを、ActionScript の connect 呼び出しで使 用するパラメーターによって定義します。 例 <MaxAppInstances>15000</MaxAppInstances> 関連項目 MaxConnections、MaxEdgeConnections、MaxStreams、MaxSharedObjects、AppInstanceGC MaxConnections この仮想ホストに接続することができる最大クライアント数を指定します。 許可される接続の最大数は、ライセンスファイルに定義されています。指定した制限を超過すると、その仮想ホストへの新 規接続は拒否されます。デフォルト数は -1 で、その仮想ホストへの接続数に制限がないことを示します。 例 <MaxConnections>-1</MaxConnections> 関連項目 MaxAppInstances、MaxEdgeConnections、MaxStreams、MaxSharedObjects、AppInstanceGC MaxEdgeConnections この仮想ホストにリモートで接続することができる最大接続数を指定します。この数値には、ライセンスキーの制限が強制 的に適用されます。 例 <MaxEdgeConnections>1</MaxEdgeConnections> 最終更新日 2010/9/8 226 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 関連項目 MaxConnections、MaxAppInstances、MaxStreams、MaxSharedObjects、AppInstanceGC MaxIdleTime クライアントが切断されるまでの最大アイドル時間を秒単位で指定します。 デフォルトのアイドル時間は 3600 秒(60 分)です。60 秒未満の値を設定すると、サーバーは 1200 秒(20 分)を使用しま す。 仮想ホストごとに異なる値を設定できます。Vhost.xml でこのエレメントに値が設定されていない場合は、Server.xml ファイルで設定されている値を使用します。Vhost.xml ファイルの MaxIdleTime エレメントの値は、Server.xml ファイル の MaxIdleTime エレメントの値より優先されます。 例 <MaxIdleTime>3600</MaxIdleTime> 関連項目 AutoCloseIdleClients MaxSharedObjects 作成することができる最大共有オブジェクト数を指定します。共有オブジェクトのデフォルト数は 50,000 です。 例 <MaxSharedObjects>50000</MaxSharedObjects> 関連項目 MaxConnections、MaxEdgeConnections、MaxAppInstances、MaxStreams、AppInstanceGC MaxSize ディスクキャッシュの許容される最大サイズを GB 単位で指定します。サーバーは、キャッシュの LRU(Least Recently Used)クリーンアップを使用して、キャッシュを最大サイズを超えないようにします。デフォルト値は 32 GB です。値が 0 の場合は、ディスクキャッシュが無効になります。値が -1 の場合は、最大サイズが指定されません。 関連項目 NumBuckets、NumBucketsAtRisk MaxStreams 作成することができる最大ストリーム数を指定します。デフォルトのストリーム数は 250,000 です。 例 <MaxStreams>250000</MaxStreams> 関連項目 MaxConnections、MaxAppInstances、MaxSharedObjects、AppInstanceGC 最終更新日 2010/9/8 227 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Mode Mode エレメントは、サーバーがオリジンサーバーとエッジサーバーのどちらとして稼動するのかを設定します。 Mode エレメントは、local または remote に指定します。デフォルト設定は、false です。 • Mode エレメントを local に設定すると、Flash Media Server はアプリケーションをローカルで実行します。これは、オ リジンサーバーと呼ばれます。 • Mode エレメントを remote に設定すると、サーバーはエッジサーバーとして動作して、オリジンサーバーで実行されて いるアプリケーションに接続します。 • Mode エレメントを指定していないと、仮想ホストはデフォルトの仮想ホストのエイリアスと評価され、その設定が適用 されます。 例 <Mode>local</Mode> 関連項目 Anonymous、CacheDir、LocalAddress、RouteTable、EdgeAutoDiscovery NumBuckets キャッシュを分割するバケット数を指定します。キャッシュサイズの合計は、MaxSize によって定義します。2 ∼ 128 の値 を指定でき、デフォルト値は 8 です。バケット数を増加すると、一度に削除されるディスクコンテンツの量が少なくなるだ けではなく、ファイルを新しいバケットに移動する頻度が増加します。このため、ディスクの利用率が増加し、パフォーマ ンスが低下します。 NumBucketsAtRisk で移動できるコンテンツを含むバケットの数を定義できます。 例 <NumBuckets>10</NumBuckets> 関連項目 MaxSize、NumBucketsAtRisk NumBucketsAtRisk 削除の「可能性がある」と見なされるバケット数を指定します。0 ∼ NumBuckets - 1 の値を指定でき、デフォルトは NumBuckets/2 です。過度に頻繁にファイルを移動することでディスクのパフォーマンスを犠牲にすることがないように、 最も古い NumBucketsAtRisk バケット内にあるセグメントだけがアクセス時に最新のバケットに移動されます。値が 0 の場 合、元の場所から取り出されたセグメントは新しいバケットには移動されず、結果的にキャッシュは LRU(Least Recently Used)キャッシュに変換されます。 値がデフォルトの NumBuckets/2 である場合、コンテンツの「古い方の半分」にあるセグメントだけが移動されます。コン テンツの「新しい方の半分」にあるセグメントは、削除される前に再度アクセスされる可能性が高いので、これらのセグメ ントを移動することはあまり重要なことではありません。 例 <NumBucketsAtRisk>1</NumBucketsAtRisk> 関連項目 MaxSize、NumBuckets 最終更新日 2010/9/8 228 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 Path プロキシキャッシュの物理的な場所を指定します。デフォルトでは、場所は RootInstall/cache/ です。値は、絶対パスに する必要があります。相対パスは無視され、サーバーはデフォルトフォルダーを使用します。 関連項目 Proxy コンテナエレメント。 このセクション内にネストされるエレメントは、この仮想ホストを、あるリモートサーバー上で実行されるアプリケーショ ンからの接続要求を別のサーバーに転送するエッジサーバーとして設定します。 注意:エッジサーバーとして設定された仮想ホストは、常に、リモートサーバーとしてローカルで動作します。 この仮想ホストを remote モードで稼動するよう設定していて、アップストリームサーバーへの SSL 接続のプロパティを設 定したい場合、アップストリームサーバーへの SSL 接続は、Server.xml ファイルの SSL セクションで指定されるデフォルト 設定を使用します。 含まれるエレメント Mode、Anonymous、CacheDir、LocalAddress、RouteTable、EdgeAutoDiscovery、SSL、AggregateMessages、RequestTimeout RequestTimeout アップストリームサーバーからの要求への応答をサーバーが待機する最大時間(秒)。要求は、メタデータ、コンテンツなど の要求です。この値が -1 の場合は、無制限の時間(タイムアウトなし)が指定されます。デフォルト値は 2 秒です。 関連項目 CacheDir ResourceLimits コンテナエレメント。 このセクション内のエレメントは、この仮想ホストのリソース制限を指定します。 含まれるエレメント MaxConnections、MaxEdgeConnections、MaxAppInstances、MaxStreams、MaxSharedObjects、AppInstanceGC RouteEntry あるサーバーの IP アドレスおよびポート番号 [host:port] への接続要求を別の IP アドレスおよびポート番号に転送するよ うにエッジサーバーに指示します。 エッジサーバーは、RouteEntry エレメントで、接続を別の宛先にダイレクトするように設定されます。RouteTable エレメン トは、エッジサーバーが要求をどこに再ルーティングするかを制御する RouteEntry エレメントを格納しています。 または、各 RouteEntry エレメントに protocol 属性を追加して、エッジサーバーが要求を再ルーティングする方法を指定する こともできます。ただし、プロトコルが指定されていない場合は、Flash Media Server は RouteTable エレメントで指定され るプロトコルを適用します。暗黙プロキシは、ルーティング情報をクライアントから隠します。 次の例に示されるように、このエレメントの接続シンタックスは柔軟です。 最終更新日 2010/9/8 229 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 例 上記の例は、ホスト foo へのすべての接続をホスト bar にルーティングするエッジを設定する方法を示しています。 <Proxy> <RouteTable protocol=""> <RouteEntry>foo:1935;bar:80</RouteEntry> </RouteTable> </Proxy> ワイルドカードキャラクタ * を使用すると、どのホストやどのポートでもよいことを意味します。上記の例は、宛先がどの ポート上のどのホストであっても、その接続をホスト foo 上のポート 1935 にルーティングする方法を示しています。 <RouteEntry>*:*;foo:1935</RouteEntry> 上記の例は、宛先がどのポート上のどのホストであっても、その接続をポート 1936 上の指定したホストにルーティングす るようサーバーに指示しています。例えば、foo:1935 への接続は、foo:1936 にルーティングされます。 <RouteEntry>*:*;*:1936</RouteEntry> 上記の例は、左側のホストとポートの値を右側のホストとポートの値として使用するように指示しています。つまり、宛先 がどのポート上のどのホストであっても、その接続をポート 80 上の元の宛先と同じホストにルーティングするようサーバー に指示しています。 <RouteEntry>*:*;*:80</RouteEntry> 上記の例は、ある host:port の組み合わせを null にルーティングするようサーバーに指示しています。この例では、宛先が foo:80 であるすべての接続は拒否されます。 <RouteEntry>foo:80;null</RouteEntry> 関連項目 RouteTable RouteTable コンテナエレメント。 <RouteTable protocol="rtmp"> または <RouteTable protocol="rtmps"> RouteTable エレメントの下にネストされる RouteEntry エレメントは、エッジサーバーのルーティング情報を指定します。管 理者はこれらのエレメントを使用して、接続の宛先を指定します。RouteTable エレメントは、空のままにすることも、1 つ 以上の RouteEntry エレメントを含めることもできます。 protocol 属性は、外部への接続のために使用するプロトコルを指定します。この属性は ""(空の文字列)に設定され、セ キュアでない接続では rtmp、セキュアな接続では rtmps になります。 • ""(空の文字列)を指定すると、外部からの接続のセキュリティステータスをそのまま引き継ぎます。 • 外部からの接続がセキュアな場合は、外部への接続もセキュアになります。 • 外部からの接続がセキュアでない場合は、外部への接続がセキュアになりません。 • rtmp を指定すると、外部からの接続がセキュアな場合も、外部への接続をセキュアでないようにするようエッジに指示 します。 • rtmps を指定すると、外部からの接続がセキュアでない場合も、外部への接続はセキュアにするようエッジに指示しま す。 最終更新日 2010/9/8 230 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 接続マッピングのセキュリティステータスを変更するには、RouteEntry エレメントの protocol 属性を指定します。デフォル トでは、特定の RouteEntry エレメントのためのマッピングで属性が変更されない限り、Flash Media Server は RouteTable リストで設定されたプロトコルを適用します。 含まれるエレメント RouteEntry SSL コンテナエレメント。 この仮想ホストがエッジサーバーとして remote モードで稼動しており、アップストリームサーバーへの SSL 接続のプロパ ティを設定する必要がある場合は、このセクションを有効にしてその SSL エレメントを適切に設定する必要があります。 Flash Media Server がクライアントとして動作して外部への SSL 接続を行う場合のイベントシーケンスは次のとおりです。 • Vhost.xml ファイルの SSL エレメントを最初に評価します。 • Vhost.xml ファイルの SSL エレメントで Server.xml ファイルの SSL エレメントが無効になっている場合、Flash Media Server は Vhost.xml ファイルの SSL エレメントを使用して接続を設定します。 • Vhost.xml ファイルの SSL エレメントが Server.xml ファイルの SSL エレメントと一致する場合、Flash Media Server は Server.xml ファイルの SSL のデフォルト値を使用して接続を設定します。 • エッジの Vhost.xml ファイルの SSL エレメントが存在しない場合、Flash Media Server は Server.xml の SSL セクショ ンで指定されるデフォルト値を使用して、アップストリームサーバーへの SSL 接続を設定します。 注意:Flash Media Server がオリジンサーバーとして local モードで稼動している場合、Vhost.xml ファイルの SSL 情報は 評価されません。 また、Server.xml 内の SSL エレメントを、Vhost.xml ファイルの対応する SSL セクションにコピーして、Vhost.xml の各 仮想ホストの外部への SSL 接続の設定を更新することもできます。 Server.xml の SSL エレメントの詳細については、「SSL」を参照してください。 含まれるエレメント SSLCACertificateFile、SSLCACertificatePath、SSLCipherSuite、SSLVerifyCertificate、SSLVerifyDepth SSLCACertificateFile PEM(Privacy Enhanced Mail)暗号形式の 1 つ以上の CA(Certificate Authority:認証機関)電子証明書を含むファイ ルの名前を指定します。 SSLCACertificatePath CA 証明書を格納するディレクトリの名前を指定します。ディレクトリの各ファイルに含めることのできる CA 証明書は 1 つだけです。ファイル名は、ファイル拡張子としてハッシュが「0」である必要があります。 Win32 の場合のみ:このエレメントが空の場合、conf ディレクトリと同じレベルにある certs ディレクトリ内で CA 証明 書が検索されます。Windows 証明書ストアは、コマンドラインで FMSMaster - console - initialize を実行することにより、こ のディレクトリにインポートできます。 SSLCipherSuite 通信をセキュアにするためにサーバーが使用する暗号スイートを指定します。 最終更新日 2010/9/8 231 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 このエレメントは、鍵交換アルゴリズム、認証方法、暗号化方法、ダイジェストタイプまたは共通グループ用の選択した数 のエイリアスの 1 つなどの暗号化リソースをコロンで区切ったリストです。暗号リストの各項目では、アルゴリズムまたは 暗号を含めるか含めないかを指定します。他に、特別なキーワードや接頭辞もあります。例えば、キーワード ALL はすべて の暗号を指定し、接頭辞 ! はリストから暗号を削除します。 デフォルトの暗号リストは、発行元不明の Diffie-Hellman 認証を使用する暗号、強度の低い暗号、エクスポート暗号およ び MD5 ハッシュをブロックし、これら以外のすべての暗号を受け付け、暗号の強度によって暗号を分類するようサーバー に指示します。 重要:デフォルトの設定を変更する場合は、事前に Adobe テクニカルサポートにお問い合わせください。 暗号リストは、1 つ以上の暗号文字列をコロンで区切ったものです。カンマまたはスペースも区切り文字として使用できま すが、通常は、コロンを使用します。 暗号文字列には、次のような異なる形式を使用できます。 • RC4-SHA などの単一の暗号スイートで構成できます。 • 特定のアルゴリズムを含む暗号スイート、または特定タイプの暗号スイートを複数セット表示することができます。 例えば、SHA1 はすべての暗号スイートがダイジェストアルゴリズム SHA1 を使用していることを、そして SSLv3 はすべ ての暗号スイートが SSL v3 アルゴリズムであることを示しています。 • 論理 and 演算としてキャラクタ + を使用することで、複数の暗号スイートを組み合わせて単一の暗号文字列にすること ができます。 例えば、SHA1+DES は、すべての暗号スイートに SHA1 および DES アルゴリズムが含まれることを示します。 • 各暗号文字列の先頭に、キャラクタ !、- または + を使用することもできます。 • ! を使用すると、暗号はリストから恒久的に削除されます。削除された暗号は、明示的に記述されていてもリストに再度 表示されることはありません。 • - を使用すると、暗号はリストから削除されますが、後で暗号の一部または全体を再追加することができます。 • + を使用すると、暗号はリストの最後に移動されます。このオプションによって新しい暗号が追加されることはありませ ん。該当する既存の暗号文を移動するだけです。 • これらのキャラクタのいずれもない場合、その文字列は単なる暗号リストと見なされ、現在の優先リストに追加されま す。 • 既に存在する暗号がリストに含まれる場合、サーバーはそれらを評価しません。 • 暗号文字列 @STRENGTH は、現在の暗号リストを暗号アルゴリズムの鍵長順に分類します。 各コンポーネントを適切な接尾辞と組み合わせて、サーバーが受け付けることのできる暗号のみを含む暗号リストを優先順 に作成します。 例 上記の暗号文字列は、発行元不明または 1 回限りの Diffie-Hellman 鍵交換アルゴリズムを使用する暗号を除くすべての暗 号を受け付けるようサーバーに指示しています。 <SSLCipherSuite>ALL:!ADH:!EDH</SSLCipherSuite> これらの暗号文字列は、RSA 鍵交換アルゴリズムのみを受け付け、エクスポート暗号またはヌル暗号化を拒否するようサー バーに指示しています。サーバーは、両方の文字列を同等と評価します。 <SSLCipherSuite>RSA:!NULL!EXP</SSLCipherSuite> <SSLCipherSuite>RSA:LOW:MEDIUM:HIGH</SSLCipherSuite> 上記の暗号リストは、すべての暗号を受け付け、強度の高い順に並べるようサーバーに指示しています。このシーケンスに より、クライアントは、クライアントとサーバーの双方で受け付けることのできる強度が最高の暗号をネゴシエートできま す。 最終更新日 2010/9/8 232 FLASH MEDIA SERVER 4.0 設定および管理ガイド 233 XML 設定ファイルの参照 <SSLCipherSuite>ALL:+HIGH:+MEDIUM:+LOW:+EXP:+NULL</SSLCipherSuite> 上記の文字列は、強度が高または中の暗号のみを、強度が高を優先して受け付け、エクスポート強度の暗号を拒否するよう サーバーに指示しています。 <SSLCipherSuite>ALL:+HIGH:!LOW:!EXP:!NULL</SSLCipherSuite> 上記の文字列は、すべての暗号を受け付け、SSLv2 暗号を SSLv3 暗号の後に配置するようサーバーに指示しています。 <SSLCipherSuite>ALL:+SSLv2</SSLCipherSuite> 次の表は、サーバーが評価することのできるコンポーネントの完全なリストです。 鍵交換アルゴリズム 説明 kRSA 鍵交換 kDHr RSA 鍵による Diffie-Hellman 鍵交換 kDHd DSA 鍵による Diffie-Hellman 鍵交換 -RSA[1024-RSA] 1 回限りの Diffie-Hellman 鍵交換 DH RSA 鍵交換 EDH 1 回限りの Diffie-Hellman 鍵交換 ADH 匿名の Diffie-Hellman 鍵交換 認証方法 説明 aNULL 認証なし aRSA RSA 認証 aDSS DSS 認証 aDH Diffie-Hellman 認証 暗号化方法 説明 eNULL エンコーディングなし DES DES エンコーディング 3DES トリプル DES エンコーディング RC4 RC4 エンコーディング RC2 RC2 エンコーディング IDEA IDEA エンコーディング NULL 暗号化なし EXP すべてのエクスポート暗号(40 ビットの暗号化) LOW 強度が低い暗号(エクスポート、DES ではないもの) MEDIUM 128 ビット暗号化 [AES-CBC 128 びっとあんごうか ] HIGH トリプル DES エンコーディング 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド 234 XML 設定ファイルの参照 ダイジェストタイプ 説明 MD MD5 ハッシュ関数 SHA1 SHA1 ハッシュ関数 SHA SHA ハッシュ関数 その他のエイリアス 説明 All すべての暗号 SSLv2 すべての SSL バージョン 2.0 の暗号 SSLv3 すべての SSL バージョン 3.0 の暗号 DSS DSS 認証を使用しているすべての暗号 SSLVerifyCertificate サーバーにより返された証明書を検証するかどうかを指定します。証明書の確認は、デフォルトでは有効になっています。 証明書の確認を無効にするには、false を指定します。 注意:証明書検証を無効にすると、セキュリティに関する問題が生じる可能性があります。 SSLVerifyDepth 受け入れる証明書チェーンの最大深度を指定します。自己署名されたルート証明書がこの深さで見つからない場合は、証明 書の確認に失敗します。デフォルト値は 9 です。 例 <SSLVerifyDepth>9</SSLVerifyDepth> Streams 記録されたストリームのための仮想ディレクトリのマッピングを指定します。Streams エレメントでは、複数のアプリケー ションが使用する格納されたストリームリソースのための仮想ディレクトリを指定できます。仮想ディレクトリを使用して、 複数のアプリケーションがアクセス可能な共有ディレクトリを指す相対パスを指定します。 ストリームに対して複数の仮想ディレクトリマッピングを指定するには、各仮想ディレクトリマッピングで Streams エレメ ントを追加します。 詳細については、www.adobe.com/go/learn_fms_content_jp の『設定および管理ガイド』の「コンテンツの格納場所の 設定」の節を参照してください。 例 上記の設定では、名前が foo/ で始まるすべてのストリームを物理ディレクトリ c:\data にマッピングしています。foo/bar と いう名前のストリームは、物理ファイル c:\data\bar.flv にマッピングされることになります。 <Streams>foo;c:\data</Streams> ストリームの名前が foo/bar/x であれば、サーバーは foo/bar の仮想ディレクトリマッピングを探します。foo/bar のための仮 想ディレクトリがない場合は、次に foo の仮想ディレクトリマッピングをチェックします。foo のための仮想ディレクトリマッピン グは存在するため、ストリーム foo.bar はファイル c:\data\bar\x.flv にマッピングされます。 注意:指定した仮想ディレクトリの最後が「\」でない場合は、サーバーによって追加されます。 最終更新日 2010/9/8 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 次の設定では、パスが common/ で始まるストリームが、C:\flashmediaserver\myapplications\shared\resources フォル ダーにマッピングされます。 <Streams>common;C:\flashmediaserver\myapplications\shared\resources\</Streams> アプリケーション videoConference が項目 common/video/recorded/june5 を参照し、アプリケーション collaboration が common/video/recorded/june5 を参照する場合、これらはどちらも同じ項目 C:\flashmediaserver\myapplications\shared\resources\video\recorded\june5\ を参照しています。 関連項目 VirtualDirectory VirtualDirectory 記録されたストリームなどのリソースのための仮想ディレクトリマッピングを指定します。 仮想ディレクトリによって、アプリケーション間でリソースを共有できます。リソースの URI の開始部分が仮想ディレクト リに一致する場合、Flash Media Server はその物理ディレクトリからリソースを提供します。仮想ディレクトリのマッピン グの詳細については、47 ページの「仮想ディレクトリと物理ディレクトリ間のマッピング」を参照してください。 Flash Player のバージョン情報に基づいてコンテンツを提供するために、VirtualKeys エレメントと共に VirtualDirectory エ レメントを使用できます。詳細については、VirtualKeys を参照してください。 注意:仮想ディレクトリを別のコンピューター上のドライブにマッピングする場合は、Flash Media Server を稼動するコン ピューターがその別のコンピューターにアクセスするために必要な権限を持つことを確認してください。詳細については、 46 ページの「ネットワークドライブへのディレクトリのマッピング」を参照してください。 例 例えば、次の VirtualDirectory XML を使用すると、クライアントが NetStream.play("vod/myVideo") を呼び出した場合、サー バーはファイル d:\sharedStreams\myVideo.flv を再生します。 <VirtualDirectory> <Streams>vod;d:\sharedStreams</Streams> </VirtualDirectory> 含まれるエレメント Streams 関連項目 VirtualKeys VirtualHost Vhost.xml ファイルのルートエレメント。 このエレメントは、Vhost.xml ファイルのすべての設定エレメントを格納しています。 VirtualKeys Flash Player のバージョンをキーにマッピングできます。このキーは、サーバー上の物理的な場所に URL をマッピングす るために、VirtualDirectory エレメントで使用されます。これらのエレメントは、Flash Player のバージョンに基づいてクラ イアントにストリームを配信する場合に使用します。 最終更新日 2010/9/8 235 FLASH MEDIA SERVER 4.0 設定および管理ガイド XML 設定ファイルの参照 含まれるエレメント Key WaitTime エッジの自動検出まで待機する時間をミリ秒単位で指定します。この数値には、TCP 接続の確立、UDP ブロードキャスト の実行、UDP 応答の収集および XML 応答の返信を行うための十分な大きさを設定する必要があります。小さすぎる値は設 定しないでください。 例 <WaitTime>1000</WaitTime> 関連項目 Enabled、AllowOverride 最終更新日 2010/9/8 236
© Copyright 2024 Paperzz