RapidMiner Goのインストール
システム要件
RapidMiner Goをインストールするマシンには以下のソフトウェアが事前にインストールされており、実行中である必要があります:
- Docker (v18.09以上)
- docker-compose (1.23以上)
dockerとdocker-composeのインストール方法に関しては以下のページをご参照ください:
- Docker https://docs.docker.com/install/
- Docker ComposeはDocker Desktopにバンドルされていますが、 必要に応じてこちらもご参照ください。: https://docs.docker.com/compose/install/
Docker Engineには少なくとも8GiBのメモリを割り当ててください。
Dockerイメージ
アプリケーションは複数のイメージで構成されています。:
- rapidminer-automodel-routing : Routing NGINXリバースプロキシ
- rapidminer-automodel-rmid : RMID – 認証/認可サービス
- rapidminer-automodeler : RapidMiner Go – 自動モデリング予測サービス
- rapidminer-automodel-job-container : Job Container – RapidMiner Goのバックエンド実行
- rapidminer-ui-event-tracking : EventTracking – 分析サービス
docker-compose-services.ymlへ環境変数を設定する事で各サービスのカスタマイズが可能です。
設定オプションに関しては各サービスのサブページをご参照ください。
各サービスのイメージはDocker Hubで提供されています。
Docker-compose
Dockerファイルをここからダウンロードして解凍してください
フルスタックは2つのファイルで構成されます。:
- docker-compose-infra.yml : アプリケーションスタックのインフラに必要な物がすべて含まれます。
- docker-compose-services.yml : 設定済みの全てのサービスが含まれます。
以下の手順でフルスタックを開始してください。:
- licenses/rapidminer-go-on-premディレクトリにホストのRapidMiner Goライセンスをコピーします。
- 拡張子が.licであればファイル名は任意の名前で問題ありません。
- .envファイルを開き、環境に合わせて以下の設定値を変更します。:
AUTH_SECRET=your_base64_encoded_secret
BASE_URL=http://localhost:30000
- IMAGE_TAGはcomposeに利用するビルドバージョンを示します。
- AUTH_SECRETはアプリケーションが利用する認証トークンのサインと検証に使用されるsecretです。 — Base64でエンコードされた文字列である必要があります。
- BASE_URLはフロントエンドから確認可能な外部ベースURLです。例. http://localhost:30000
Dockerベースのリソースの上限
.envファイルにはデフォルトのメモリも設定されています。これらは8GBのRAMに対して最適な値が設定されており、4GBはJobContainerに割り当てられています。複数のJobContainerを利用する場合はそれぞれに4GBのメモリを割り当てるようにしてください。
JOB_CONTAINERS=1
MEMORY_PER_JOB_CONTAINER=4G
MEMORY_AM=1560M
MEMORY_DB=256M
MEMORY_MQ=512M
MEMORY_ROUTING=64M
MEMORY_RMID=512M
MEMORY_ET=320M
これらの値はdocker-composeファイル内で各サービスのmemory-limitフィールドに設定する事ができます。docker-composeファイルではcpusフィールドでサービスが利用するcpu数を制限する事も可能です。
IMAGEタグでは利用するイメージのバージョンを指定します。
IMAGE_TAG_ROUTING=2.4.1
IMAGE_TAG_RMID=2.4.1
IMAGE_TAG_AM=2.4.1
IMAGE_TAG_JC=2.4.1
IMAGE_TAG_ET=2.4.0
重要: データベースとAMQブローカーはデフォルトパスワードを使用するので、商用環境での利用は推奨されません。ガイドの手順に沿ってデフォルトパスワードを変更してください。
- 以前のバージョンのRapidMiner Goがインストールされている場合は、次のステップに進む前に実行中のコンテナを停止/削除し、過去バージョンのdockerイメージを削除してください。
- docker-compose -f docker-compose-infra.yml up -dを実行します。
- docker-compose -f docker-compose-services.yml up -dを実行します。
- 全てのサービスが利用出来るようになるまで2〜3分待ちます。
各アプリケーションのログを確認するには:
- docker-compose -f docker-compose-STACK.yml logs SERVICE_NAME を実行します。STACKはymlファイル名の最後のパート(infraまたはservice)、SERVICE_NAMEは表示するサービスの名称です。(compose ymlのサービス名を使用してください。サービスノードの子です。 例: rapidminer-automodeler)
フルスタックをシャットダウンするには:
- 最初にdocker-compose -f docker-compose-services.yml downを実行してサービスをシャットダウンします。
- 次にdocker-compose -f docker-compose-infra.yml downを実行してインフラをシャットダウンします。
Try
- https://localhost:30000にアクセスしてアプリケーションを開きます。
- 自己署名証明書を利用している為、サイトが安全でないとブラウザの警告が発生しますがテスト時にはこのサイトを例外に追加してください。HTTPを利用する場合は本ドキュメンの最下部のインストラクションを参照してください。
- ユーザーに admin、パスワードにchangeitと入力します。
- ユーザーの追加はRMID docsを参照してください
デフォルトパスワードを変更
docker-entrypoint-initdb.d/init-user-db.shを編集してrmidユーザーとcookieユーザーのデフォルトパスワードを変更します。 :
CREATE USER cookie WITH ENCRYPTED PASSWORD 'automodel_db_password';
...
CREATE USER rmid WITH ENCRYPTED PASSWORD 'rmid_db_password';
docker-compose-services.ymlにも同じパスワードを設定します:
rapidminer-automodeler:
image: rapidminer/rapidminer-automodeler:${IMAGE_TAG}
environment:
...
DB_PASSWORD: <automodel_db_password>
...
rapidminer-automodel-rmid:
image: rapidminer/rapidminer-automodel-rmid:${IMAGE_TAG}
environment:
...
DB_PASSWORD: <rmid_db_password>
...
rapidminer-ui-event-tracking:
image: rapidminer/rapidminer-ui-event-tracking:${IMAGE_TAG}
environment:
...
DB_PASSWORD: <automodel_db_password>
...
デフォルトデータベースはlocalhostの5432ポートが設定されたPostgreSQL 9.6です。データベースコンソールやpgAdmin等のツールから直接接続する事ができます。
rapidminer-automodel-db:
image: postgres:9.6.6
volumes:
- rapidminer_automodel_dbdata:/var/lib/postgresql/data
- ./docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
environment:
POSTGRES_PASSWORD: cookiepass
POSTGRES_USER: cookie
ports:
- "5432:5432"
docker-entrypoint-initdb.d/init-user-db.shでActiveMQのパスワードを変更します。:
rapidminer-automodel-activemq:
image: webcenter/activemq:5.13.1
environment:
...
ACTIVEMQ_ADMIN_LOGIN: admin
ACTIVEMQ_ADMIN_PASSWORD: admin
ACTIVEMQ_OWNER_PASSWORD: <amq_password>
...
ports:
- "8161:8161"
docker-compose-services.ymにも同じパスワードを設定します。:
rapidminer-automodeler:
...
AMQ_PASSWORD: <amq_password>
...
rapidminer-automodel-job-container:
...
AMQ_PASSWORD: <amq_password>
...
管理コンソールはActiveMQにも開放されているので、ブラウザからActiveMQの管理モニタリングツール(http://localhost:8161/admin/queues.jsp)にアクセスする際にはACTIVEMQ_ADMINの接続情報をご使用ください。
HTTPSの利用
デフォルト設定ではlocalhost用に発行された自己署名証明書でHTTPSを利用します。
認証局が発行した証明書の利用
証明書を既にお持ちの場合は、
- crtファイルをssl/certs/go.crtにコピーします。
- プライベートキーファイルをssl/private/go.keyにコピーします。
ファイル名とパスは上記と同じでないといけません。sslフォルダはルーティングサービスコンテナのファイルシステムにマウントする必要があります。
rapidminer-automodel-routingサービスのdocker-compose-servicesのSERVER_NAMEに証明書の’Common name’と同じ値を設定します。
オプションでRapidMiner Goがリッスンするポート番号を変更します。 — デフォルトのポートマッピングは30000:443です。
最後に利用するドメインに合わせて.envファイルのBASE_URLの値を変更します。 – 例: https://go.mydomain.com:30000
自己署名証明書の作成
テスト用に自身で自己署名証明書を作成する事も可能です。
以下のコマンドを実行し、’Common name’に’localhost’と入力します。
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ssl/private/go.key -out ssl/certs/go.crt
以下のコマンドを使用してdhparamsファイルを生成します。:
sudo openssl dhparam -out ssl/certs/dhparam.pem 2048
最後にlocalhostにSERVER_NAMEを設定します。
HTTPの利用
HTTPを利用する場合は以下の手順で設定してください。: docker-compose-services.ymlでrapidminer-automodel-routingサービスの以下の行を変更します。
- PORTS: ポートマッピングを30000:80に変更します。
- PROTOCOL: HTTPに設定します。
- SERVER_NAME: localhostに設定します。
最後に.envファイルでBASE_URLをhttp://localhost:30000に変更します。
ブランディング
OEMブランディングを使用する為にRapidMiner Goをカスタマイズする事ができます。バージョン2.4.1からは以下のプロパティのカスタマイズがサポートされています。
1.RapidMiner Automodeler
- Appヘッダーカラー
- ロゴ
- ファビコン
- アプリケーション名: 「Go」を任意のapp名に変更
- プロファイルメニュー: 完全に隠すかメニューアイテムをカスタマイズ
- ヘルプメニュー: 完全に隠すかメニューアイテムをカスタマイズ
2.RapidMiner Identity (RMID)
- Appヘッダーカラー
- ロゴ
- ファビコン
- アプリケーション名
アプリケーションのカスタマイズ手順
1.docker-compose-services.ymlでbrandingプロファイルが有効に設定されている事を確認します。
- Automodeler: SPRING_PROFILES_ACTIVE: on-prem,db-postgresql,branding
- RMID: SPRING_PROFILES_ACTIVE: on-prem,db-postgresql,is-db,branding
2.イメージとbranding/amとbranding/rmid内のapplication-branding.ymlファイルを編集します。
- application-branding.yml カラー、メニューアイテム、app名を定義します。
- imagesフォルダにはロゴとファビコンの資源が含まれます。
- ロゴディメンションは700×100
- ファビコンは16×16ピクセル以上
3.再度docker-compose -f docker-compose-services.yml up -dを実行します。
ブランディングを無効にするにはSPRING_PROFILES_ACTIVEからbrandingプロファイルを削除します。 – アプリケーションはデフォルトのRapidMinerブランディングを表示します。
重要: ファイル名、フォルダ名、イメージ名は変更しないでください。
アップグレード
RapidMiner Go 2.5.7へアップグレードするにはインストール後のステップが必要です。 最初にインストールします。:
- docker-composeスクリプトを実行してRapidMiner Go 2.5.7をインストールします。
- adminユーザーでログインします。
- adminユーザーを利用したくない場合は代わりにam:admin権限を持つ他のユーザーを利用しても問題ありません。
- /rmid/admin/loginにアクセスするとRMID adminコンソールでユーザーへアクセス権を付与する事ができます。 – 詳細はRMIDドキュメントをご参照ください。
次にアップグレードします。:
- ログインしたブラウザを使用してアップグレードエンドポイントを呼び出します
{BASE_URL}/am/api/data/update-all-data
- rapidminer-automodelerサービスのログを確認します。アップグレードが完了すると以下のメッセージが出力されます。
c.rapidminer.cookie.service.DataService : Finished updating all dataEntities