2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

検証環境としての Management Console インストール・フリー構築法 ~ 超簡単 ~

Last updated at Posted at 2023-05-15

はじめに

前回までに紹介した Tomcat9 と MySQL8 構築を前提にして、今回は BizRobo! 11.3.0.2 の Management Console(以降、MC) を構築していきます。

本ブログは、BizRobo! v11.3.0.2 の利用を前提に解説します。

環境の準備

MCの構築に必要なファイルやリソースを準備します。細かい調達方法は省略します。

MC構築のための調達リソース

# リソース 準備方法
1 mc.war BizRobo!のインストールフォルダ配下の📁WebApps から ManagementConsole.war をコピーし、ファイル名を mc.war に変更
2 mc.xml ファイルを新規作成
3 mysql-connector-java-8.0.22.jar 公式サイト」から 検証用のバージョンの Platform Independent ZIP をダウンロードします。1

環境構築におけるパラメータ一覧

以下を前提として構築作業を実行

パラメータ 設定値
DBのホスト名 localhost
DB接続ポート 3306
接続先DB bizrobo_mc
接続ユーザー名 bizrobo
接続パスワード brpassword

構築する環境のサーバー構成

ちょっとした検証作業用に、単体のPCへ一式セットアップします。すべてローカルでのアクセス前提なので、通信ポートの解放など細かいことについては考えません。

image.png

構築環境のフォルダ構成

📁 apache-tomcat-9.0.x
 ├─ 📁 conf        # Tomcatの設定ファイルが格納されています。
 │  └─ 📁 Catalina
 │      └─ 📁 localhost
 │          └─ 📄 mc.xml 
 ├─ 📁 lib         # Tomcatが必要とするライブラリやクラスが格納されています。
 │  └─ 📄 mysql-connector-java-8.0.22.jar
 ├─ 📁 webapps     # TomcatにデプロイするWebアプリケーションが格納されています。
 │  ├─ 📁 mc
 │  └─ 📄 mc.war
 :

環境構築の流れ

細かい設定・調整をし始めるときりがないですが、最低限動くものを構築するには以下の4ステップで完了です。

  1. アプリケーションで利用するデータベースとユーザーの作成
  2. アプリケーションで利用するコンテキストファイルの作成(主にDBへの接続設定)
  3. アプリケーションファイルのサーバへの配置
  4. JDBCコネクターのサーバへの配置

構築手順

サーバ状態の確認

環境セットアップに先駆けて以下を確認します。

  • MySQL8 サーバーが起動していること
  • Tomcat9 サーバーが停止していること

1.MySQL8 へのデータベースの作成

root ユーザで MySQL8 サーバにログインし、以下の SQL を実行します。

DBとユーザの一括作成
CREATE DATABASE bizrobo_mc CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER 'bizrobo'@'localhost' IDENTIFIED BY 'brpassword';
GRANT ALL PRIVILEGES ON bizrobo_mc.* TO 'bizrobo'@'localhost';
  • bizrobo_mc という名前のデータベースを作成
  • localhost からのみアクセス可能な bizoro というユーザを作成
  • bizoro_mc データベースに対してすべての権限を付与

2.Tomcat コンテキストファイルの作成

📁 conf\Catalina\localhost 配下に 📄 mc.xml という名前でファイルを生成し、テキストエディタで以下記述します。(UTF-8で保存)

BOM なし保存が必須。2

mc.xml
<?xml version='1.0' encoding='utf-8'?>
<Context useHttpOnly="true" mapperContextRootRedirectEnabled="true">
  <!-- Default set of monitored resources -->
  <WatchedResource>WEB-INF/web.xml</WatchedResource>
  <Resource name="jdbc/kapow/platform" auth="Container" 
    type="javax.sql.DataSource" 
    maxTotal="100" maxIdle="30" maxWaitMillis="-1" 
    factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" 
    validationQuery="/* ping */" testOnBorrow="true"
    username="bizrobo" password="brpassword" 
    driverClassName="com.mysql.cj.jdbc.Driver" 
    url="jdbc:mysql://localhost:3306/bizrobo_mc?useUnicode=yes&amp;characterEncoding=UTF-8&amp;rewriteBatchedStatements=true&amp;serverTimezone=GMT%2B9&amp;useSSL=false&amp;allowPublicKeyRetrieval=true"
  />
</Context>
  • useUnicode=yes&amp;characterEncoding=UTF-8:データベースとの通信にUnicodeを使用し、UTF-8でエンコーディングします。3
  • useSSL=false&amp;allowPublicKeyRetrieval=true:MySQL8 で推奨の caching_sha2_password という認証プラグインを使用する場合に必要な設定です。useSSL については本番環境では true にする必要がありますが、サッと作る検証環境では、false でいいでしょう。

3.Web Application aRchive(war)ファイルの配置

📁 webapps 配下に 📄 mc.war を配置します。


4.jdbc ドライバーの配置

📁 lib 配下に 📄 mysql-connector-java-8.0.22.jar を配置します。


Tomcat の開始

Tomcat を起動して Management Console へアクセスします。以下のログイン画面が表示されれば完了です。

image.png


その後、MCの設定

MC の起動を確認したら、ログイン画面から admin でログインし、ライセンスの登録、ログデータベースの設定、その他もろもろ検証に必要な他サーバとの連携や各種設定を MC で実施します。

本項では省略しますが、必要に応じて利用者が判断して実施ください。

インストール・フリー な MC を使った開発・検証

現場や客先で発生した事象の再現を行う際に、バージョンのそれぞれ異なる MC、RS、DAS などを組み合わせて実行するときなど、手軽に特定バージョンの環境が要素ごとに手早く構築できると便利ですね。

ん?構成自体もインシデントが発生した環境と合わせないと意味がないのではないか?と?
それは、アプリの機能レベルで再現できなかった時の話で、初動で事象と製品の機能的な挙動を確認するのであれば、同一構成の準備に拘って時間を掛けるよりも、インストール・フリーな環境を手早く起動して本来やるべきことに集中した方がいい派です。

まとめ

事象の確認とその後の調査・対応を別のメンバーが実施するような場合、ポータブルな環境で再現させたうえで、その環境(ファイル)一式を後続ステップのメンバーに渡してあげると、連係プレーで調査が捗りそうですね。

  1. 以下が画面のイメージ。下段のZIPをダウンロードします。
    image.png

  2. https://uxmilk.jp/48923

  3. characterEncoding を指定しない場合にはデータベースサーバーの character_set_server システム変数の値に依存するようです。厳密には JDBCコネクターのバージョンによっても異なるようですが。。MySQL8では、デフォルトの文字エンコーディングは utf8mb4 で、MySQL5.7 では latin1 のようです。併せて、JDBCのバージョンごとに色々と 「文字セットとユニコードの使用」には書かれており、結局環境に依存してわけわからなくなってしまいそうなので、いろんな環境で検証的に手軽に使うためには、明示的にパラメータとして設定しておくのがよさそうです。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?