Red Hat Training

A Red Hat training course is available for Red Hat JBoss Operations Network

6.3. rhq-server.properties での JBoss ON Server 設定の編集

JBoss ON サーバー設定プロパティーは、serverRoot/jon-server-3.3.0.GA/bin ディレクトリー内の rhq-server.properties 設定ファイルまたは JBoss ON データベースのいずれかに保存されます。設定ファイルには、リッスンする TCP/IP ポートやホスト名や IP アドレスなど、JBoss ON サーバーの基本情報の多くが含まれています。
サーバーの起動時に JBoss ON サーバー設定が rhq-server.properties ファイルからロードされます。初期設定は、JBoss ON プログラムの設定時にインストーラーによって定義されます。
注記
JBoss ON サーバーの起動 rhq-server.properties 時に設定プロパティーがロードされるため、新しい設定がロードされるように、設定ファイルの変更後に JBoss ON サーバーを再起動する必要があります。

6.3.1. インストール時のプロパティー設定

サーバー名、ポート、使用するデータベースなどのサーバープロパティーを定義する方法は、サーバーインスタンスの設定時に設定されます。
データベースプロパティーの変更については、を参照してください 8章JBoss ON に関連付けられたデータベースの管理

title

データベースタイプ
これにより、JBoss ON サーバーで使用されるデータベースのタイプまたはベンダーが設定されます。PostgreSQL または Oracle のいずれかになります。
データベース接続 URL
これにより、データベースへの接続時に JBoss ON サーバーが使用する JDBC URL(例: jdbc:postgresql://localhost:5432/rhq、jdbc: oracle:oci:@localhost:1521:orcl)が提供されます
データベース JDBC ドライバークラス
これにより、JBoss ON サーバーがデータベースとの通信に使用する JDBC ドライバーの完全修飾クラス名(例: oracle.jdbc.driver.OracleDriver )が提供されます。
データベース XA データソースクラス
これにより、JBoss ON サーバーがデータベースとの通信に使用する JDBC ドライバーの完全修飾クラス名(例: org.postgresql.xa.PGXADataSource または oracle.jdbc.xa.client.OracleXADatasource)が提供されます
データベースユーザー名
これにより、データベースにログインする際に JBoss ON サーバーが使用するユーザーの名前が指定されます。このユーザーはすでにデータベースに存在している必要があります。基本的なインストール手順によると、これは特別に作成された rhqadmin ユーザーです(JBoss ON のスーパーユーザーには関連しません)。
データベースのパスワード
これにより、データベースにログインする際に JBoss ON サーバーによって使用されるデータベースユーザーのパスワードが提供されます。このパスワードは、rhq-server.properties ファイルのハッシュに保存されます。データベースにパスワードを変更すると、手動でパスワードをハッシュして rhq-server.properties ファイルにコピーする必要があります。これは、で説明してい 「データベースパスワードの変更」 ます。
サーバー名
これにより、JBoss ON サーバーの一意の名前が設定されます。デフォルトはシステムのホスト名ですが、JBoss ON サーバークラウド内で一意である限り、任意の文字列にすることができます。
注記
他のサーバープロパティーとは異なり、これは JBoss ON UI でのみ管理され、その rhq-server.properties ファイルには管理されません。
サーバーのパブリックアドレス
これにより、サーバーに使用するパブリック IP アドレスが提供されます。このアドレスは、このサーバーへのアクセスを必要とするすべてのエージェントによって認識される必要があるアドレスです。デフォルトでは、ローカルホストのパブリック IP アドレスの値です。パブリック IP アドレスは HTTP/HTTPS ポートとともに使用され、エージェントの高可用性エンドポイントを提供します。
注記
他のサーバープロパティーとは異なり、これは JBoss ON UI でのみ管理され、その rhq-server.properties ファイルには管理されません。
HTTP ポート
これにより、JBoss ON GUI がセキュアでない HTTP リクエストをリッスンするポートが設定されます。これは、JBoss ON GUI URL のポート番号です(例: http :// localhost : 7080 )。これは、高可用性のエンドポイントとして使用されるセキュアでないポートでもあります。
セキュアな HTTPS ポート
これにより、JBoss ON GUI がセキュアな HTTPS リクエストに対してリッスンするポートが設定されます。これは、JBoss ON GUI URL で使用されるポート番号です(例: https :// localhost : 7443 )。これは、高可用性のエンドポイントとして使用されるセキュアなポートでもあります。
サーバーバインドアドレス
これにより、JBoss ON GUI コンソールの IP アドレス(他のサービスなど)がバインドされます。これは、のような JBoss ON GUI URL のホストです server.example.com http://server.example.com:7080
Email SMTP ホスト名
これにより、JBoss ON サーバーによって使用される SMTP サーバーのホスト名が設定されます。電子メールは、主にアラート通知のために送信されます。
アドレスからのメール
これは、JBoss ON サーバーが送信したすべてのメールの From ヘッダーに使用するアドレスを設定します。

6.3.2. 通信の設定

JBoss ON サーバーは、サーバーおよびエージェントが接続する方法を定義して特定し、他のクライアント(JBoss ON GUI にアクセスするユーザーなど)がサーバーに接続できる方法を定義して、エージェントと通信するように設定されます。これらの通信エンドポイントには、サーバーのホスト名または IP アドレスの特定、異なる種類のメッセージに対してサーバーがリッスンするポート、サーバーへのアクセスに使用するプロトコルが含まれます。ユーザー設定可能なサーバー接続パラメーターはすべて、サーバープロパティー一覧に記載されています。
サーバーの接続またはトランスポートメソッドは、サーブレット(HTTP および HTTPS)またはソケット(HTTPS)を介して実装されます。servlet (HTTP)および sslservlet (HTTPS)は、JBoss ON サーバーに組み込まれた Tomcat サーバー経由でトラフィックを転送します。
重要
サーバーがトランスポートを使用している場合 servlet または sslservlet、エージェントの通信は Tomcat コネクター上で行われます。これ rhq.communications.connector.bind-port は無視され、Tomcat コネクターポートを使用してエージェントからサーバーにメッセージを送信します。デフォルトでは、Tomcat コネクターポートは 7080(サーブレット)または 7443(sslservlet)です。
注記
サーブレットベースのトランスポートは、Tomcat コネクターインフラストラクチャーを活用して、エージェントと GUI リクエストの両方を処理します。ただし、サーブレットを使用すると、エージェントと GUI クライアントが同じ接続メソッドを使用するように制限されます。証明書ベースの SSL 接続の場合、サーブレットでは、保存されたブラウザー証明書を使用してユーザーが GUI に対して認証する必要があります。SSL の場合は、エージェントと GUI セッションに異なる認証方法を可能にするソケット接続を使用することが推奨されます。
SSL ソケット 「サーバーおよびエージェント間のクライアント認証の設定」 の設定については、を参照してください。
一般的な設定では、ユーザーがサーバーにアクセスするのに使用できるポート番号を設定します。
# General Properties
rhq.server.startup.web.http.port=7080
rhq.server.startup.web.https.port=7443
その他の接続設定を追加して、サーバーへの受信接続(エージェントからサーバーへのメッセージ)とアウトバウンド接続(サーバーからエージェントへのメッセージ)の SSL 接続を設定できます。例:
rhq.server.tomcat.security.client-auth-mode=true
rhq.server.tomcat.security.secure-socket-protocol=TLSv1,TLSv1.1,TLSv1.2
rhq.server.tomcat.security.algorithm=SunX509
rhq.server.tomcat.security.keystore.alias=RHQ
rhq.server.tomcat.security.keystore.file=conf/rhq.keystore
rhq.server.tomcat.security.keystore.password=RHQManagement
rhq.server.tomcat.security.keystore.type=JKS
rhq.server.tomcat.security.truststore.file=conf/rhq.truststore
rhq.server.tomcat.security.truststore.password=RHQManagement
rhq.server.tomcat.security.truststore.type=JKS
JBoss ON サーバー通信の 3 番目の部分では、相互との通信に使用する JBoss ON サーバーおよびエージェントの接続エンドポイントの情報に対する制御が強化されます。これらはサーバーの トランスポート パラメーターです。JBoss ON エージェントとポートはどちらも URL に似た呼び出し文字列を使用して、同じリモーティングフレームワークを使用します。これらの接続文字列の形式は以下のとおりです。
protocol://server:port/transportParm1=value1&transportParam2=value2
重要
ほとんどの通信では、JBoss ON サーバーはサーブレットプロトコルまたは sslservlet プロトコルを使用する必要があります。ソケットがトランスポートパラメーターを渡すことができる唯一のインスタンス。それ以外の場合は、ソケットおよび sslsocket はサポートされません。
トランスポート設定では、最初にサーバーとエージェントが通信に共同で定義し、使用するコネクター( エンドポイントと呼ばれる)を設定します。つまり、同じ情報がサーバーとエージェントの設定ファイルにある必要があります。リモーティング URL の各部分は、個別のサーバー設定パラメーターを使用して構築されます。
標準サーバー設定には、トランスポートメソッド、サーバー IP アドレス、エージェントポート、URL に追加するパラメーターの 4 つの部分があります。例:
rhq.communications.connector.transport=servlet
rhq.communications.connector.bind-address=192.168.1.2
rhq.communications.connector.bind-port=16163
rhq.communications.connector.transport-params=/jboss-remoting-servlet-invoker/ServerInvokerServlet
この標準設定はマージされ、この URL を作成します。
servlet://192.168.1.2:16163/jboss-remoting-servlet-invoker/ServerInvokerServlet
登録の送信や可用性レポートなど、サーバーとの通信を送信する方法を認識できるように、同じエンドポイント定義を持つ対応するエントリーもエージェント設定に一覧表示されます。
RHQ Server IP Address=192.168.1.2
RHQ Server Port=16163
RHQ Server Transport Protocol=servlet
RHQ Server Transport Parameters=/jboss-remoting-servlet-invoker/ServerInvokerServlet

例6.1 基本的なサーバーエージェントトランスポートの例

IP アドレスが指定されたサーバー 192.168.0.10 は、16163 の標準エージェントポートを介してエージェントに接続します。サーバー設定には、サーバーアドレス(rhq.communications.connector.bind-address)、エージェント通信ポート()、および接続プロトコル(rhq.communications.connector.bind-portrhq.communications.connector.transport)を定義するために、以下の設定があります。
rhq.communications.connector.transport=servlet
rhq.communications.connector.bind-address=192.168.0.10 
rhq.communications.connector.bind-port=16163 
rhq.communications.connector.transport-params=enableTcpNoDelay=true&backlog=200
コネクション URL は以下のようになります。
servlet://192.169.0.10:16163/enableTcpNoDelay=true&backlog=200
JBoss ON エージェント設定には、サーバー設定に一致する対応するエントリーが含まれます。
RHQ Server IP Address=192.168.0.10 
RHQ Server Port=16163 
RHQ Server Transport Protocol=socket 
RHQ Server Transport Parameters=enableTcpNoDelay=true&backlog=200
JBoss ON サーバーがメッセージを処理する方法により、トランスポートパラメーターは受信メッセージと送信メッセージの両方の関連情報を渡できます。これらのトランスポートパラメーターは、標準の Web URL パラメーターと同様に、ampersands(&)とともに strung になります。
server および client トランスポートパラメーターはどちらも同じ URL に渡されます。JBoss ON サーバーは、現在の操作に関連するパラメーターのみを処理します。たとえば 例6.1「基本的なサーバーエージェントトランスポートの例」、設定は 2 つのトランスポートパラメーター enableTcpNoDelay (クライアント)と backlog (サーバー)を設定します。JBoss ON サーバーがメッセージを受信した場合(通信サーバーとして機能する場合)、backlog パラメーターを使用し、ignore enableTcpNoDelay は送信(クライアント)メッセージにのみ実行される enableTcpNoDelay ため無視します。

rhq-server.properties の一般的なサーバー接続パラメーター

jboss.bind.address [1][2]
バインドする JBoss ON GUI コンソールの IP アドレス(他のサービスなど)を指定します。これは、のような JBoss ON GUI URL のホストです server.example.com http://server.example.com:7080
rhq.server.startup.web.http.port [1][2]
JBoss ON GUI がセキュアでない HTTP リクエストをリッスンするポートを指定します。これは、JBoss ON GUI URL のポート番号です(例: http :// localhost : 7080 )。これは、高可用性のエンドポイントとして使用されるセキュアでないポートでもあります。
rhq.server.startup.web.https.port [1][2]
JBoss ON GUI がセキュアな HTTPS リクエストをリッスンするポートを提供します。これは、JBoss ON GUI URL のポート番号です(例: https :// localhost : 7443 )。これは、高可用性のエンドポイントとして使用されるセキュアなポートでもあります。
rhq.server.startup.keystore.filename [2]
JBoss ON GUI は HTTPS 経由のブラウザーリクエストを受け入れることができます。JBoss ON GUI をリモートブラウザーに認証する場合は、SSL 証明書をキーストアファイルに配置する必要があります。この設定はキーストアファイルの場所を参照します。このファイル名は、<JBoss ON server Install Dir>/jbossas/standalone/configuration ディレクトリーに対する相対パスである必要があることに注意してください。JBoss ON サーバーには、デフォルトのキーストアファイルに自己署名証明書が同梱されます。
rhq.server.startup.keystore.password [2]
キーストアファイルのパスワード。これは、JBoss ON GUI がキーストアファイルにアクセスして、証明書をブラウザークライアントに提供できるようにするためです。
rhq.server.startup.keystore.sslprotocol [2]
ブラウザーが JBoss ON GUI との通信に使用するプロトコル。
rhq.server.maintenance-mode-at-start
サーバーをメンテナンスモード(true)で起動するか、またはシャットダウン時(false)モードでサーバーを起動するかどうかを設定します。デフォルトは false です。

rhq-server.properties SSL サーバー接続パラメーター

rhq.communications.connector.security.secure-socket-protocol(エージェントからサーバーへ) , rhq.server.client.security.secure-socket-protocol(サーバーからエージェント)
この JBoss ON サーバーと通信する際にエージェントが使用する安全なプロトコル。
rhq.communications.connector.security.keystore.file(agent to server) , rhq.server.client.security.keystore.file(サーバーからエージェント)
JBoss ON サーバーをエージェントに対して認証する証明書が含まれるキーストアファイル。
rhq.communications.connector.security.keystore.algorithm (agent to server) , rhq.server.client.security.keystore.algorithm (server to agent)
rhq.communications.connector.security.keystore.type (agent to server) , rhq.server.client.security.keystore.type (server to agent)
keystore.para のファイル形式
rhq.communications.connector.security.keystore.password (agent to server) , rhq.server.client.security.keystore.password (server to agent)
キーストアファイルへのアクセスに使用されるパスワード。
rhq.communications.connector.security.keystore.key-password (agent to server) , rhq.server.client.security.keystore.key-password (server to agent)
キーストア内のキーへのアクセスを取得するために使用されるパスワード。
rhq.communications.connector.security.keystore.alias (agent to server) , rhq.server.client.security.keystore.alias (server to agent)
キーストア内の JBoss ON サーバーのキーを識別するエイリアス。
rhq.communications.connector.security.truststore.file(サーバーにエージェント) , rhq.server.client.security.truststore.file(エージェントへのサーバー)
この JBoss ON サーバーが信頼する証明書が含まれるトラストストアファイル。JBoss ON サーバーが JBoss ON エージェントを認証する必要がある場合、これを設定する必要があります。それ以外の場合は不要です。このトラストストアには、この JBoss ON サーバーと通信する必要があるすべての JBoss ON エージェントの証明書が含まれます。『着信クライアント認証モードを参照してください』。
rhq.communications.connector.security.truststore.algorithm (agent to server) , rhq.server.client.security.truststore.algorithm(エージェントへのサーバー)
rhq.communications.connector.security.truststore.type (agent to server) , rhq.server.client.security.truststore.type (server to agent)
トラストストアファイルのファイル形式。
rhq.communications.connector.security.truststore.password (agent to server) , rhq.server.client.security.truststore.password (server to agent)
トラストストアファイルへのアクセスに使用されるパスワード。
rhq.communications.connector.security.client-auth-mode(エージェントからサーバーへ) , rhq.server.client.security.server-auth-mode-enabled(エージェントへのサーバー)
JBoss ON サーバーがメッセージを送信する JBoss ON エージェントを認証する必要があるかどうかを示します。サーバーがセキュアな接続を使用し、トラストストアのすべての JBoss ON エージェントの信頼済み証明書がない場合、これを none に設定します。有効な値は、true またはです false
  • rhq.communications.connector.security.client-auth-mode: nonewant または need
  • rhq.server.client.security.server-auth-mode-enabled: true または false

rhq-server.properties トランスポート接続サーバーのパラメーター

rhq.communications.connector.transport
JBoss ON エージェントがメッセージを JBoss ON サーバーに転送する方法を定義します。許可される値は servlet または sslservlet です。エージェントリクエストは JBoss ON サーバー Web アプリケーション層(セキュアな Tomcat Connector など)を経由します。sslservlet では、エージェントが web アプリケーションレイヤーを通過するルートだけでなく、セキュアな Tomcat Connector 経由でセキュア化されます。受信エージェントメッセージ認証に使用されるキーストアは、で設定したものと同じです rhq.communications.connector.security.keystore.file
注記
このトランスポート設定は、エージェントがその接続方法のみを超えることを制限し ませ ん。デフォルトでは、JBoss ON サーバーはサーブレットトラフィックと sslservlet トラフィックの両方を許可する通信コネクターを常にデプロイします。この設定では、サーバーにメッセージを送信するときに使用するトランスポートを決定するようエージェントに指示します。サーバーがトランスポートをサーブレットに設定し、エージェントが sslservlet 経由でサーバーと通信するよう設定されている場合、エージェントが送信するメッセージは sslservlet 経由で行われます。
rhq.communications.connector.bind-address
これは、サーバーの JBoss/Remoting ロケーター URL に配置されるアドレスです。これは、JBoss ON サーバーがそのコネクターをバインドするエンドポイントを定義します。また、すべてのエージェントがサーバーへの接続に使用できるパブリックエンドポイントアドレスも表しています。
rhq.communications.connector.bind-port
JBoss ON サーバーがバインドするエンドポイントと、すべてのエージェントがサーバーへの接続に使用できるパブリックアドレスを定義します。これはインストーラーのビューからは表示されなくなりますが、これは rhq-server.properties ファイルに表示されます。この値は空白にすることができます。サーバーに設定されたトランスポートに応じて、サーバーは HTTP または HTTPS ポートのいずれかに設定します。
rhq.communications.connector.transport-params
追加のトランスポートパラメーターを定義します。JBoss ON サーバーは、JBoss ON エージェントからの受信メッセージを受け入れるコネクターに設定されます。可能なトランスポートパラメーターはすべてに記載されてい 表6.1「トランスポートパラメーター」 ます。
rhq.communications.multicast-detector.enabled
true の場合、JBoss ON サーバーは JBoss ON エージェントの自動検出を試行し、マルチキャスト検出を使用してオフラインに移行します。これを機能させるには、ネットワークがマルチキャストトラフィックをサポートする必要があります。
rhq.communications.multicast-detector.bind-address
マルチキャスト検出が直接バインドするアドレス。マルチキャスト検出を有効にしていない場合は、これは使用されません。
rhq.communications.multicast-detector.multicast-address
マルチキャスト検出がメッセージをブロードキャストするアドレス。マルチキャスト検出を有効にしていない場合は、これは使用されません。
rhq.communications.multicast-detector.port
マルチキャスト検出がメッセージをブロードキャストするポート。マルチキャスト検出を有効にしていない場合は、これは使用されません。

表6.1 トランスポートパラメーター

トランスポートパラメーター description 着信メッセージまたは出力メッセージの場合
serverBindAddress サーバーソケットがリクエストをリッスンするアドレス。デフォルトは空の値で、サーバーのソケットが InvokerLocator URL(ホスト)が提供するホストにバインドされることを示します。 incoming
serverBindPort 要求をリッスンするポート。 incoming
timeout ソケットのタイムアウト値。サーバー側のデフォルトは 60000(1 分)です。timeout パラメーターを設定すると、その値はクライアント側にも渡されます(下記参照)。 incoming
backlog 指定のタイミングで許可される未承認着信接続の優先数。実際の数は指定されたバックログよりも大きくなる可能性があります。キューが満杯になると、追加の接続リクエストが拒否されます。0 よりも大きい正の値である必要があります。0 以下の値が渡された場合、デフォルト値が想定されます。デフォルト値は 200 です。 incoming
numAcceptThreads クライアント接続を受け入れるために存在するスレッドの数。デフォルトは 1 です。 incoming
maxPoolSize クライアント要求を処理するサーバースレッドの数。デフォルトは 300 です。 incoming
socket.check_connection クライアントからサーバーに単一のバイト ping を送信し、サーバーから接続を再度使用する前に、呼び出し元が接続の確認を試みるかどうかを示します。この設定は、クライアントとサーバーの両方で設定する必要があります。デフォルト値は false です。 incoming
clientConnectAddress クライアントがサーバー側のソケットへの接続に使用する IP アドレスまたはホスト名。これは、クライアントが外部から別の IP アドレスまたはホスト名に送信されるルーターを通過する場合に必要です。clientConnectAddress または serverBindAddress が指定されていない場合は、ローカルホストのアドレスが使用されます。 送信
clientConnectPort クライアントがサーバー側のソケットへの接続に使用するポート。これは、クライアントが外部に送信されたリクエストを内部的に異なるポートに転送するルーターを通過する場合に必要です。 送信
timeout ソケットのタイムアウト値。クライアント側のデフォルトは 1800000(または 30 分)です。 送信
enableTcpNoDelay クライアントソケットの TCP_NODELAY をオンまたはオフにするかを示します。TCP_NODELAY は特定の目的で使用されており、Nagle バッファーアルゴリズムを無効にします。これは、即時に応答を取らずに頻繁に発生する情報バーストルメントを送信するアプリケーションに対してのみ設定する必要があります。デフォルトは false です。 送信
clientMaxPoolSize クライアント側の最大ソケット接続数。これは基本的に、ソケットクライアントインボーダーから実行できる同時クライアント呼び出しの最大数と同じです。デフォルトは 50 です。 送信
numberOfRetries プールからソケットを取得する再試行回数。これは基本的に、タイムアウトが発生する前に、プールからクライアントソケット接続を取得するまでクライアントが待機する秒数と一致します。最大再試行に到達すると、CannotConnectException がスローされます。デフォルトは 30 です。 送信
numberOfCallRetries 呼び出しの再試行回数。numberOfRetries には関連性がありません。これは、プールからクライアントソケット接続をすでに受け取った後にこのプレイに関連します。ただし、プール内で待機中にソケット接続がタイムアウトになる可能性があります。接続チェックはデフォルトでは行われないため、接続が切断され、新しい接続の取得が試行されます。これは、numberOfCallRetries が多数ある場合に発生します(デフォルトは 3 に設定されます)。ただし、(numberOfCallsRetries - 2)に到達すると、接続プール全体がプールのすべての接続がタイムアウトし、無効であることが前提でフラッシュされ、新しい接続を作成して開始します。これに失敗すると、MarshalException がスローされます。 送信
socket.check_connection クライアントからサーバーに単一のバイト ping を送信し、サーバーから接続を再度使用する前に、呼び出し元が接続の確認を試みるかどうかを示します。この設定は、クライアントとサーバーの両方で設定する必要があります。デフォルトでは false の場合に使用します。 送信

6.3.3. コンカレンシー制限の設定

JBoss ON は、多数のエージェントを処理できます(おそらく 100 個)。多くのエージェントが同時にサーバーと通信しようとすると、JBoss ON サーバーがメッセージでいっぱいになる可能性があります。これは、しばらく停止した後に JBoss ON サーバーが再起動した場合に発生する可能性があります。JBoss ON エージェントが JBoss ON サーバーが復帰したことを検出すると、すべてがメッセージのバックログの送信を試みます。
JBoss ON サーバーは、一度に処理できる同時メッセージ数に設定可能な制限を課して、サーバーのフラッドリスクを軽減できます。この制限を経過したメッセージはすべてドロップされ、エージェントは後で送信するよう要求されます。
コンカレンシー関連のパラメーターはすべてに記載されてい 表6.2「rhq-server.properties Parameters for Concurrency Limits」 ます。
同時実行制限は、エージェント接続の数を制限するだけでなく、GUI およびその他の Web 接続への接続数も制限します。コンカレンシー制限を制御する主なパラメーターは 3 つあります。
  • サーバーへの受信メッセージの合計数に対するグローバル制限rhq.communications.global-concurrency-limit
    許可されるエージェント接続の合計数です。特定のメッセージタイプには、その他の同時実行制限があります。これは、コンテンツのダウンロード、インベントリーの同期、その他のリソース集約型または再帰的なエージェント操作のパフォーマンスの調整に役立ちます。この同時実行制限は特定のメッセージタイプにのみ適用され、これらの制限は互いに独立して評価されます。グローバル同時実行制限は、すべて のエージェント接続の合計上限です。これは、他の同時実行制限の合計がより高い場合でも、効果的な同時実行制限です。
  • 許可される同時 Web 接続の合計数の制限(rhq.server.startup.web.max-connections)。
    これにより、HTTP または HTTPS 接続を使用して JBoss ON サーバーに接続するクライアント接続がカウントされます。これには、当然ながら Web GUI 接続が含まれますが、(デフォルト) servlet または ssslservlet トランスポートを使用するすべてのエージェント接続も含まれます。
    Web 接続の制限は、セキュアでない HTTP リクエストと HTTPS リクエストの両方で同じですが、異なるプールに対して HTTP および HTTPS 接続数がカウントされるように、制限は加算されます。許可される最大接続の 合計 は、の rhq.server.startup.web.max-connections 値に関係なく実際には 2 倍になります。たとえば、300 を設定すると、合計 600 の同時 Web 接続に対して HTTP リクエストが許可され、300 HTTPS リクエストが許可されます。
  • エージェント(rhq.server.agent-downloads-limit)および他のクライアント(rhq.server.client-downloads-limit)からダウンロードする回数に制限されます。

例6.2 コンカレンシー制限

rhq.server.startup.web.max-connections=200
rhq.server.agent-downloads-limit=45
rhq.server.client-downloads-limit=5
rhq.communications.global-concurrency-limit=30

表6.2 rhq-server.properties Parameters for Concurrency Limits

パラメーター description
rhq.server.startup.web.max-connections
GUI への接続とエージェントによる接続の両方を含め、同時に作成できる Web 接続の数に制限を設定します。
注記
エージェント要求が Web 接続上でルーティングされる場合、rhq.communications.global-concurrency-limit 値が Web 接続の制限よりも若干小さいことを確認してください。それ以外の場合は、エージェントの負荷が高い場合に、GUI ユーザーが JBoss ON UI へのアクセスをブロックする可能性がありました。
Web 接続の制限は HTTP および HTTPS(セキュア)リクエストの両方で同じであるため、許可される最大接続の 合計 は、この設定とは 2 回になります。たとえば、最大 Web 接続が 300 に設定されている場合、合計 600 の同時 Web 接続に対して 300 の HTTP リクエストが許可され、300 の HTTPS リクエストが許可されます。
rhq.communications.global-concurrency-limit
サーバーに送信されるエージェントメッセージの合計数を設定します。これは、GUI 要求ではなく、影響を受ける受信エージェントメッセージのみに影響します。このグローバル同時実行制限を 300 に設定すると、メッセージの種類に関係なく、一度に 300 を超えるエージェントメッセージを処理できます。
他の同時実行制限の合計がこのグローバル制限よりも大きい場合でも、グローバル制限よりも多くのメッセージが処理されないため、このグローバル制限に制限されます。
この値は、許可されている Web 接続の数よりも若干小さい値である必要があります。これにより、エージェントの負荷が高い場合に GUI への Web 接続がブロックされないようにします。
rhq.server.concurrency-limit.inventory-report インベントリーレポートは、エージェントが起動するとエージェントから送信され、定期的に送信されます。エージェントマシンのリソース数によっては、インベントリーレポートが大きくなる可能性があります。
rhq.server.concurrency-limit.availability-report 可用性レポートは、通常 60 秒ごとにエージェントから定期的に送信されます。通常、可用性レポートは非常に小さくなりますが、送信頻度が高くなるため、大量の生じます。
rhq.server.concurrency-limit.inventory-sync インベントリーの同期は、エージェントがサーバーのインベントリーを同期する必要がある場合に発生します。通常、エージェントは起動時に同期します。エージェントによって管理されるリソースの数により、通常、インベントリーの同期の一部としてフローされるトラフィックは、大きくなります。
rhq.server.concurrency-limit.content-report コンテンツレポートは、検出されたコンテンツ(ソフトウェアのインストールパッケージなど)に関する情報が含まれている場合を除き、インベントリーレポートと似ています。このレポートは、エージェントが検出し、管理しているインストール済みのソフトウェアの数によって大きくなります。
rhq.server.concurrency-limit.content-download コンテンツダウンロードは、エージェントのリソースで、通常はパッケージをインストールするためにパッケージバージョンのコンテンツを要求する必要がある場合に発生します。
rhq.server.concurrency-limit.measurement-report エージェントが測定収集を完了すると、測定レポートが定期的にサーバーに送信されます。測定レポートの数とサイズは、収集される測定の数と頻度によって異なります。エージェントが収集する必要のあるスケジュール測定値が大きくなり、より頻繁に測定レポートが送信されるため、レポートが大きくなるほど増加します。
rhq.server.concurrency-limit.measurement-schedule-request インベントリーの同期と同様に、測定スケジュールリクエストはサーバーに対して最新の測定スケジュールのセットを要求するエージェントに送信されます。

6.3.4. メール通知の SMTP サーバーの設定

各 JBoss ON サーバーは特定の SMTP サーバーと通信します。SMTP サーバーは rhq-server.properties ファイルに定義されます。デフォルトの設定は、ローカルの JBoss ON サーバーホストを参照します。
# Email
rhq.server.email.smtp-host=localhost
rhq.server.email.smtp-port=25
rhq.server.email.from-address=rhqadmin@localhost
これらの設定を編集して、異なる SMTP サーバーまたはメールアカウントを使用できます。
注記
SMTP 設定が正しく、サーバーが電子メールを正常に送信できることを確認するには、にあるテストメールページに移動し http://server/portal/admin/test/email.jspます。

表6.3 rhq-server.properties パラメーター for SMTP

パラメーター description
rhq.server.email.smtp-host JBoss ON サーバーによって使用される SMTP サーバーのホスト名を設定します。
rhq.server.email.smtp-port JBoss ON サーバーによって使用される SMTP サーバーのポートを設定します。
rhq.server.email.from-address JBoss ON サーバーによって送信されたすべてのメールの From ヘッダーに使用するアドレスを設定します。

6.3.5. サーバーをサイレントインストール

rhq-server.properties ファイルの一部のオプションは、Web ベースのインストーラーからではなく、ファイルからサーバー設定を読み込むようにインストールプロセスに指示します。
# Auto-Install Pre-Configuration Settings
rhq.autoinstall.enabled=true
rhq.autoinstall.database=auto
rhq.autoinstall.public-endpoint-address=
重要
自動インストーラーオプションは、JBoss ON サーバーを最初にインストールした時に一度だけ評価されます。この初期設定後、自動インストーラーが無効になります。これらのプロパティーはサーバーのセットアップ後に無視され、既存のインスタンスの再インストールには使用できません。
サーバーを再インストールするには、最初にサーバーインストールディレクトリーを削除してから、元の JBoss ON サーバーアーカイブを展開し、新規であるかのようにサーバーをインストールします。

表6.4 rhq-server.properties パラメーターのサイレントインストール

パラメーター description
rhq.autoinstall.enabled rhq-server.properties ファイル(true)から設定を読み込むかどうか、または Web ベースのインストーラー(false)から設定を読み込むかどうかをインストールプロセスに指示します。
rhq.autoinstall.database
データベーススキーマを読み込んだり、追加する方法をインストールプロセスに指示します。以下の 3 つのオプションがあります。
  • auto データを上書きすることなく、新規インストールまたは既存のスキーマのアップグレード用に新しいスキーマを作成します。
  • overwrite データベースを上書きし、新しい空のスキーマを作成します。
  • skip データベースの作成や更新が行われないように、データベースプロセス全体をスキップします。
rhq.autoinstall.public-endpoint-address サーバーに使用する IP アドレスまたはホスト名を設定します。値の指定がない場合、サーバーは起動時に独自の値を検出し、設定します。

6.3.6. サーバー設定における機密情報の保護

重要
デフォルトでは、サーバー設定ファイルのすべてのパスワードは、アップグレードおよびインストール時に保護されます。このプロセスは、ユーザーが追加のプロパティーを保護する場合にのみ必要です。
JBoss ON は、サーバー設定ファイルのほぼすべてのプロパティー(特に {RHQ_SERVER_HOME}/jbossas/standalone/configuration/standalone-full.xml および {RHQ_SERVER_HOME}/bin/rhq-server.properties ファイル)をサポートします。JBoss ON は、プロパティーを難読化するための {RHQ_SERVER_HOME}/bin/ ディレクトリーに rhq-encode-value.sh および rhq-encode-value.bat スクリプトを提供します。

6.3.6.1. standalone-full.xml

たとえば standalone-full.xml、プロパティー値はパスワード vault メカニズムによりエンコードされ、すべてのパスワードはインストール時にデフォルトで保護されます。このパスワード vault メカニズムは JBoss Enterprise Application Platform 6 の機能として提供されます。また、JBoss ON は JBoss ON 内で使用するために同じパスワード vault メカニズムの変更済み実装を使用してこの機能を提供します。パスワード vault メカニズムの詳細は、JBoss Enterprise Application Platform 6 の『管理および設定ガイド』の「パスワード vaults for Sensitive Strings 」を参照してください。

6.3.6.2. rhq-server-properites

たとえば rhq-server.properties、プロパティー値は RESTRICTED:: 形式を使用してエンコードされ、すべてのパスワードはインストール時にデフォルトで保護されます。

6.3.6.3. エンコーディングでの rhq-encode-value スクリプトの使用

rhq-encode-value スクリプトを呼び出すと、必要なプロパティーと値をエンコードするように求められます。
> ./rhq-encode-value.sh
Property rhq.autoinstall.server.admin.password [y/n]: n
Property rhq.server.database.password [y/n]: n
Property: rhq.protect.property
Value: 1234
*** !!! WARNING !!!
*** Both standalone-full.xml and rhq-server.properties need to be updated if a property from rhq-server.properties is used in standalone-full.xml
*** !!! WARNING !!!
***
***
*** Encoded password for rhq-server.properties:
***    rhq.protect.property=RESTRICTED::-299a94df3b478ca8
***
*** Encoded password for standalone-full.xml with vault with password as default value:
***    ${VAULT::restricted::rhq.protect.property::-299a94df3b478ca8}
***
*** Encoded password for standalone-full.xml with vault without default:
***    ${VAULT::restricted::rhq.protect.property:: }
***
*** Encoded password for agent-configuration.xml:
***    <entry key="rhq.protect.property" value="RESTRICTED::-299a94df3b478ca8" />
***
*** Please consult the documentation for additional help.
スクリプトの実行後、から生成された値はサーバー設定ファイルにコピーされ、貼り付ける rhq-encode-value 必要があります。
重要
にある一部のプロパティー standalone-full.xml も存在し rhq-server.properitesます。両方のファイルにあるプロパティーを保護する場合は、サーバーを再起動する前に、両方の場所が同じエンコードされたバリアントで更新されていることを確認します。部分的な更新により、サーバーが使用できなくなる可能性があります。


[1] これらの設定により、JBoss ON サーバーインスタンスの特定の IP アドレスおよびポートが設定されます。ファイアウォールで異なる設定が失敗した場合は、これらのパラメーターを変更することができます。
[2] この値の変更を反映するには、JBoss ON サーバーを再起動する必要があります。