4.4 OHS構成ファイルの準備

Oracle HTTP Server (OHS)をデプロイする前に、OHS構成ファイルを準備する必要があります。

次のステップは、一般的な構成の点でのオンプレミスのOracle HTTP Serverと、Oracle WebGateの使用に精通していることを前提としています。

ノート:

管理者は、次のことに注意する必要があります:
  • 事前に構成ファイルを指定しない場合、OHSコンテナはOracle HTTP Serverのデフォルト構成でデプロイされます。
  • 次に示すディレクトリはオプションです。たとえば、WebGateをデプロイしない場合は、webgateConf およびwebgateWalletディレクトリを作成する必要はありません。同様に、ファイルをhtdocsにコピーしない場合は、htdocsディレクトリを作成する必要はありません。
  1. OHS構成ファイルを格納するディレクトリを作成します。
    mkdir -p <myohsfiles>
    次に例を示します:
    mkdir -p /OHSK8S/myOHSfiles
  2. $MYOHSFILES環境変数を次のように設定します。
    export MYOHSFILES=<myohsfiles>
    次に例を示します:
    export MYOHSFILES=/OHSK8S/myOHSfiles
  3. OHS構成用に次のディレクトリを作成します。
    mkdir -p $MYOHSFILES/ohsConfig/httpconf
    mkdir -p $MYOHSFILES/ohsConfig/moduleconf 
    mkdir -p $MYOHSFILES/ohsConfig/htdocs
    mkdir -p $MYOHSFILES/ohsConfig/htdocs/myapp
    mkdir -p $MYOHSFILES/ohsConfig/webgate/config/wallet
    mkdir -p $MYOHSFILES/ohsConfig/wallet/mywallet
    説明:
    • httpconf - 構成する構成ファイル(通常は$OHS_DOMAIN_HOME/config/fmwconfig/components/OHS/ohs1ディレクトリにあります)が含まれます。たとえば、httpd.confssl.confmod_wl_ohs.confです。webgate.confは、Oracle WebGateを使用してデプロイすると自動的に生成されるため、コピーする必要はありません。
    • moduleconf - コンテナの$OHS_DOMAIN_HOME/config/fmwconfig/components/OHS/ohs1/moduleconfフォルダにコピーする仮想ホスト構成ファイルなど、追加の構成ファイルが含まれます。
    • htdocs - コンテナの$OHS_DOMAIN_HOME/config/fmwconfig/components/OHS/ohs1/htdocsフォルダにコピーするHTMLファイル(または同様のファイル)が含まれます。
    • htdocs/myapp - myappは、htdocsの下に存在するディレクトリ名の例です。前述のhtdocsの下にあるディレクトリをコピーする必要がある場合は、必要なディレクトリを作成します。
    • webgate/config - 抽出されたOracle WebGate構成が含まれます。たとえば、Oracle Access Management (OAM)コンソールから<agent>.zipファイルをダウンロードする場合は、このディレクトリにzipファイルを抽出します。SSL経由でOAM URLにアクセスする場合、このディレクトリには、OAMエントリ・ポイントの証明書に署名した認証局のcacert.pemファイルも含まれている必要があります。たとえば、HTTPSロード・バランサURLを介してOAMにアクセスする場合、cacert.pemはロード・バランサ証明書に署名したCA証明書です。
    • webgate/config/wallet - <agent>.zipファイルから抽出されたウォレット・ディレクトリの内容が含まれます。
    • wallet/mywallet - SSLを使用するようにOHSを構成する場合、このディレクトリには事前構成済のOHS Walletファイルcwallet.ssoが含まれます。

    ノート:

    SSL用にOHSを構成する場合、管理者は次のことに注意する必要があります:
    • ウォレットには有効な証明書が含まれている必要があります。
    • auto-login-onlyウォレットのみ(cwallet.ssoのみ)がサポートされています。たとえば、auto-login-onlyオプションを使用してorapkiで作成されたウォレットです。パスワードで保護されたウォレット(ewallet.p12)はサポートされていません。
    • $MYOHSFILES/ohsConfig/httpconfssl.conf を構成し、SSLWalletのディレクトリを次のように設定する必要があります。
      SSLWallet "${ORACLE_INSTANCE}/config/fmwconfig/components/${COMPONENT_TYPE}/instances/${COMPONENT_NAME}/keystores/wallet/mywallet"
    ファイル・システムの例には、次のものを含めることができます。
    ls -R $MYOHSFILES/ohsConfig
    /OHSK8S/myOHSfiles/ohsConfig:
    htdocs  httpconf  moduleconf  wallet  webgate
    
    /OHSK8S/myOHSfiles/ohsConfig/htdocs:
    myapp  mypage.html
    
    /OHSK8S/myOHSfiles/ohsConfig/htdocs/myapp:
    index.html
    
    /OHSK8S/myOHSfiles/ohsConfig/httpconf:
    httpd.conf  mod_wl_ohs.conf  ssl.conf
    
    /OHSK8S/myOHSfiles/ohsConfig/moduleconf:
    vh.conf
    
    /OHSK8S/myOHSfiles/ohsConfig/wallet:
    mywallet
    
    /OHSK8S/myOHSfiles/ohsConfig/wallet/mywallet:
    cwallet.sso
    
    /OHSK8S/myOHSfiles/ohsConfig/webgate:
    config
    
    /OHSK8S/myOHSfiles/ohsConfig/webgate/config:
    cacert.pem  cwallet.sso  cwallet.sso.lck  ObAccessClient.xml  wallet
    
    /OHSK8S/myOHSfiles/ohsConfig/webgate/config/wallet:
    cwallet.sso  cwallet.sso.lck

WLDNSRefreshIntervalおよびWebLogicClusterディレクティブの設定

OHSデプロイメントがOracle WebLogic Serverと通信するように構成されている場合は、OHS構成ファイルで WLDNSRefreshIntervalおよびWebLogicClusterディレクティブを適切に設定する必要があります。

WLS場所ディレクティブが存在するファイルで、次を設定する必要があります。
<IfModule weblogic_module>
WLDNSRefreshInterval 10
</IfModule>
WebLogicClusterの場合、設定する値は、WLSのデプロイ先がオンプレミスであるか、OHSと同じKubernetesクラスタであるか、OHSとは異なるKubernetesクラスタであるかによって異なります。次の各項では、各ケースの値を設定する方法について説明します。
オンプレミス構成
OHSがオンプレミス構成(Kubernetes以外)にデプロイされたWebLogic Serverに接続している場合は、次のように設定します。
WebLogicCluster <APPHOST1>:<PORT>,<APPHOST2>:<PORT>
たとえば、WebLogic Server管理サーバー・ポートに接続している場合:
<Location /console>
   WLSRequest ON
   DynamicServerList OFF
   WLProxySSL ON
   WLProxySSLPassThrough ON
   WLCookieName OAMJSESSIONID
   WebLogicCluster APPHOST1.example.com:7001,APPHOST2.example.com:7001
 </Location>
共有Kubernetesクラスタ上のOracle HTTP Server
OHSが、同じKubernetesクラスタにデプロイされたWebLogic Serverに接続している場合は、環境に応じて次のように設定します。
WebLogicHost <service_name>.<namespace>.svc.cluster.local
WebLogicPort <port>
または:
WebLogicCluster <service_name>.<namespace>.svc.cluster.local:<port>

ノート:

Kubernetesクラスタでkubectl get svc -n <namespace>を実行することで、<service_name>および<port>を取得できます。
次に、Oracle Access Management (OAM)管理対象サーバー・クラスタ・サービスおよびポートに接続する場合の例を示します。
<Location /oam>
WLSRequest ON
DynamicServerList OFF
WLProxySSL ON
WLProxySSLPassThrough ON
WLCookieName OAMJSESSIONID
WebLogicCluster accessdomain-cluster-oam-cluster.oamns.svc.cluster.local:14100
独立したKubernetesクラスタ上のOracle HTTP Server
OHSが、別のKubernetesクラスタにデプロイされたWebLogic Serverに接続している場合は、次のように設定します。
WebLogicCluster <K8S_WORKER_HOST1>:30777,<K8S_WORKER_HOST2>:30777,<K8S_WORKER_HOST3>:30777
ここで、<K8S_WORKER_HOSTX>はKubernetesワーカー・ノードhostname.domain、30777はイングレス・コントローラのHTTPポートです。
次に例を示します:
<Location /console>
   WLSRequest ON
   DynamicServerList OFF
   WLProxySSL ON
   WLProxySSLPassThrough ON
   WLCookieName OAMJSESSIONID
   WebLogicCluster K8_WORKER_HOST1.example.com:30777,K8_WORKER_HOST2.example.com:30777,K8_WORKER_HOST3.example.com:30777
 </Location>