プライマリ・コンテンツに移動
Oracle® Fusion Middleware DockerでのOracle WebLogic Server 12.2.1の実行
12c (12.2.1)
E72550-01
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

1 はじめに

この項では、Dockerコンテナ内で稼働するようにOracle WebLogic Server 12.2.1を構成する方法について説明します。DockerはLinuxベースのコンテナ・テクノロジーで、単一のホストOSまたは仮想マシン上に、開発または本番環境の、クラスタ化または非クラスタ化された、軽量のWebLogic Serverドメイン構成を短時間で作成できます。

内容は次のとおりです。

Dockerについて

Dockerは、ユーザーが分散アプリケーションをビルド、パッケージ、出荷および稼働することができるプラットホームです。Dockerのユーザーは、開発したアプリケーションおよびアプリケーションに依存するすべてのライブラリおよびファイルをひとつのDockerイメージにパッケージできます。

Dockerイメージは、様々なLinux環境に配布できる移植可能なアーチファクトです。配布されたイメージを使用してコンテナをインスタンス化し、同一のオペレーティング・システム上の別のコンテナで稼働中のアプリケーションから独立して、アプリケーションを稼働することができます。

DockerでのWebLogic Serverイメージについて

証明書の一部として、オラクル社では、WebLogic ServerでイメージをビルドするDockerfileおよびサポートス・クリプトをGitHubでリリースしています。これらのイメージは、既存のOracle Linuxイメージの拡張としてビルドされます。GitHubで公開されているDockerfileおよびサポート・スクリプトを使用して開始すると、WebLogic Server Dockerイメージの作成および稼働を容易になります。詳細は、「GitHubのDockerfileおよびスクリプトについて」を参照してください。

Dockerイメージ作成をサポートするために、オラクル社では、WebLogic Server 12.2.1をJDKバージョン、Oracle LinuxおよびRed Hat Linux OSバージョン、KernelバージョンおよびDockerバージョンとの様々な組合せを使用して動作保証しています。サポートされているWebLogic Server Dockerイメージの動作保証の詳細は、http://www.oracle.com/technetwork/middleware/ias/oracleas-supported-virtualization-089265.htmlを参照してください。

WebLogic Server Dockerカスタム・イメージ

独自のWebLogic Server Dockerイメージを作成することができます。この作業を容易にするために、オラクル社では、開始の際にサンプルとして使用できるDockerfileおよびスクリプトをGitHubで公開しています。

カスタムのWebLogic Server Dockerイメージを作成する前提条件は、次の通りです。

  • サポートされているOracle LinuxまたはRed Hat Linuxベース・イメージ

  • GitHubから入手したDockerfileおよびスクリプト

  • Oracle WebLogic Server 12c (12.2.1) GenericインストーラまたはDeveloperインストーラ

  • 対応するサポートされているJDK

GitHubのDockerfileおよびスクリプトについて

WebLogic Server Dockerイメージのビルドおよび稼働を容易にするために、GitHubでDockerfileおよびサポート・スクリプトが公開されています。ディレクトリ全体をダウンロードして、Oracle WebLogic Serverイメージをビルドし、コンテナを開始してください。これらのファイルにアクセスするには、https://github.com/oracle/docker/tree/master/OracleWebLogic/へ移動します。

これらのDockerfileおよびスクリプトを使用すると、開発したイメージを拡張して、単一のホスト・オペレーティング・システムまたは仮想マシンで稼働する開発環境および本番環境を含むクラスタ化および非クラスタ化のWebLogic Serverドメイン構成を作成できます。GitHubのDockerfileおよびスクリプトは、独自のDockerfileを記述しWebLogic Serverイメージをビルドするためのサンプルとして使用することのみを目的としています。


注意:

OracleではWebLogic ServerでのRed Hat Linuxイメージを動作保証していますが、GitHubでのDockerfileはOracle Linuxイメージのみを拡張するために書き込まれます。WebLogic Serverイメージを作成して、Red Hat Linuxイメージを拡張するには、これらのDockerfileを変更する必要があります。

作成されるドメイン構成で実行中の各サーバーは、それぞれのDockerコンテナで稼働し、必要に応じ他のサーバーと通信できます。「DockerでのWebLogic Serverイメージのビルド」で説明するように、これ以外の構成およびアプローチも可能です。

GitHubのDockerfileについて

2種類のWebLogic Server 12c (12.2.1)用のDockerfileが、GitHubの/OracleWebLogic/dockerfiles/12.2.1サブディレクトリから入手できます。

  • Dockerfile.developer – WebLogic Server開発用インストール・イメージをビルドします。

  • Dockerfile..generic – WebLogic Server汎用ドメイン・イメージをビルドします。

WebLogic Serverインストール・イメージのDockerfile

WebLogic Serverインストール・イメージを作成するDockerfileは、次の機能を実行します。

  • Oracle Linuxベース・イメージを拡張します。

  • JDKをインストールします。

  • GenericまたはDeveloperインストーラのいずれかを(選択するDockerfileに応じて)使用して、WebLogic Serverをインストールします。

WebLogic Serverインストール・イメージを作成した後に、それらを拡張してWebLogic Serverのベース・ドメインを構成することができます。

WebLogic Serverドメイン・イメージのDockerfile

WebLogic Serverドメイン・イメージを作成するDockerfileは、次の機能を実行します。

  • WebLogic Serverインストール・イメージを拡張します。

  • WLSTスクリプトを呼び出して、WebLogic Serverドメインを構成します。ドメインには、管理サーバー、JMSサーバーおよびデータ・ソースが1つずつあり、JPA 2.1およびJAX-RS 2.0が有効化されます。

図1-1に、WebLogic Serverドメイン・イメージを示します。

図1-1 WebLogic Serverドメイン・イメージ

図1-1の説明が続きます
「図1-1 WebLogic Serverドメイン・イメージ」の説明'

Oracle WebLogic Serverドメイン・イメージを使用して、次の2つのタイプのコンテナを作成できます。

GitHubのスクリプトについて

サポート・スクリプトは、WebLogic Server 12c (12.2.1) Dockerイメージの作成を助け、WebLogic Serverドメインの構成でイメージを拡張するサンプルとして使用されます。スクリプトは、/OracleWebLogic/dockerfiles/OracleWebLogic/samplesおよび/OracleWebLogic/samples/12c-domain/container-scriptsサブディレクトリにあります。

表1-1に示すスクリプトは、WebLogic Serverインストール・イメージの作成およびDockerコンテナ内でのWebLogic Serverの開始の際に使用します。

表1-1 GitHubでサポートされているDockerのWebLogic Serverスクリプト

スクリプト 機能

buildDockerImage.sh

WebLogic ServerインストールDockerfileの手順を使用してイメージをビルドします。

add-machine.py

管理対象サーバー・コンテナ名を使用してマシンを作成するWLSTスクリプト。

add-server.py

管理サーバーを作成するWLSTスクリプト。

commEnv.sh

JPA 2.1のサポートを有効にします。

create-wls-domain.py

1つの管理サーバー、LMSサーバー、JSPサーバーおよびデータ・ソースのあるベース・ドメインを構成するWLSTスクリプト。

createMachine.sh

コンテナのノード・マネージャを起動し、addMachine.shを呼び出して、ノード・マネージャの起動およびノード・マネージャ・マシンの追加を実行します。

createServer.sh

コンテナのノード・マネージャを起動し、add-server.pyを呼び出して、add-machine.pyで作成されたマシン内に管理対象サーバーを構成します。

jaxrs2-template.jar

JAX-RSを構成するテンプレート。

rm_containers.sh

稼働中のすべてのコンテナを削除します。

clean-up-docker.sh

すべてのゴースト・コンテナおよびゴースト・イメージを削除します。


DockerコンテナでのWebLogic Serverのクラスタ化

WebLogic Serverでは、エージェント、Node Managerを使用した運用システムであるマシンの概念を使用します。このマシン・リソースにより、管理サーバーは、ドメインおよびまたはクラスタに管理対象サーバーを作成および割り当てることができ、ドメインおよびまたはクラスタを拡張したりアプリケーションおよびリソースを管理対象サーバーにデプロイしたりできるようになります。

コンテナ内のマシンを使用すると、新しいManaged Serverコンテナを起動することにより、動的クラスタを構成して、使用するクラスタを簡単にスケール・アップできます。WebLogic Server Scripting Tool (WLST)を使用すると、クラスタの処理能力をすばやく最適化することができます。ノード・マネージャの詳細は、「Oracle WebLogic Serverノード・マネージャの管理」、およびWLSTの使用方法の詳細は、「WebLogic Scripting Toolの理解」を参照してください。

Dockerコンテナにより、クラスタ化および非クラスタ化されたWebLogic Serverドメイン構成を、単一のLinuxホストにまたがって作成できます。ドメイン構成の各サーバーは、それぞれのDockerコンテナで稼働し、同一ホスト上の他のサーバーと通信できます。クラスタ化されたWebLogic Serversは、複数のホストにまたがってサポートされていないことに注意してください。

Dockerコンテナ内のクラスタ化されたWebLogicドメイン

ひとつのトポロジは、DockerコンテナのWebLogic Serverクラスタを単一ホストにまたがった構成です(図1-4)。

図1-4 単一ホストにまたがるDockerコンテナのWebLogicクラスタ

図1-4の説明が続きます
「図1-4 単一ホストにまたがるDockerコンテナのWebLogicクラスタ」の説明

このトポロジのメリットは、次のとおりです。

  • 従来のWebLogic Serverデプロイメント(WebLogicドメインとクラスタを持ち、各クラスタに複数のサーバーが存在)に適しています。

  • WebLogicドメイン・イメージからのコンテナのデプロイが容易です。

  • クラスタのスケール・アップ、スケール・ダウンが容易です。

  • 開発者に便利です。

  • Dockerバイナリを除き、ホスト上に何もインストールまたは構成する必要がありません。

Dockerコンテナの非クラスタ化WebLogic Server

コンテナ化されたアプリケーションとサービスのDocker方式の構成に一致する推奨トポロジは、すべてのリソース、共有ライブラリおよびデプロイメントを含むWebLogic Administration Serverのみを実行するように設計されたコンテナから構成されます。図1-5に示すように、Dockerイメージは、事前定義されたすべてのドメイン・リソース、アプリケーションおよびあらかじめデプロイされた共有ライブラリを含み、管理対象サーバーまたはクラスタは含みません。

図1-5 単一ホスト上にコンテナ化されたOracle WebLogic Serverアプリケーション

図1-5の説明が続きます
「図1-5 単一ホスト上にコンテナ化されたOracle WebLogic Serverアプリケーション」の説明

このトポロジのメリットは、次のとおりです。

  • コンテナ化されたアプリケーションとサービスを構成するために、Dockerの推奨方式を使用します。

  • コンテナは、簡単に繰返し可能です。

  • 各コンテナは、同じWebLogicドメインのインスタンスです。

コンテナはすべて、単一の物理または仮想サーバーLinuxホスト上(図1-5参照)、または、複数の物理または仮想サーバーLinuxホスト上(図1-6参照)に存在できます。

図1-6 複数ホスト上にコンテナ化されたWebLogic Serverアプリケーション

図1-6の説明が続きます
「図1-6 複数ホスト上にコンテナ化されたWebLogic Serverアプリケーション」の説明

もう1つの可能なトポロジは、リモート・ホストおよびデータベース上のWebLogic Serverインスタンスと通信する単一のLinuxホスト上の単一のコンテナ上で実行される、単一のOracle WebLogic Serverドメインです。

図1-7に、単一ホスト上のDockerコンテナのWebLogic Serverの単一ドメインを示します。

図1-7 単一ホスト上のDockerコンテナのWebLogic Serverドメイン

図1-7の説明が続きます。
「図1-7 単一ホスト上のDockerコンテナのWebLogic Serverドメイン」の説明