OpenDolphin システム構築ガイド ライフサイエンスコンピューティング(株) オープンドルフィン・ラボ はじめに OpenDolphinは JavaEE(Java Enterprise Edition)ベースのシステムである。稼働システムを構築す る方法は一通りではなく、用途やスケールに合わせていくつもの方法がある。このドキュメントは運用シス テムを構築する際の手がかりとなることを目的とし、コンパイルされたモジュールを使用して最もシンプル と思える構成方法について解説する。 「免責条項」 このドキュメントで説明するのはあくまでもOpenDolphinシステムの基礎的な部分である。実稼働にお いて必要となるチューニング、セキュリティ、冗長化、データのバックアップ等については説明しない。ま た本構成品を使用した場合に何らかの障害、損害、訴訟等が発生してもその責任は一切負わない。 1.稼働イメージ OpenDolphinは下記のように 3-tier (3層)構成になっている。 クライアント Java, iOS Application Server データベース JBoss Postgres 構築上のキーテクノロジーはクライアントとデータベースの間に位置するApplication Serverである。 OpenDolphinは伝統的にJBossを使用している。またデータベースにはPostgreSQLを使用している。 以下ではアプリケーションサーバーとデータベースサーバーを一つのマシンで構築する場合について説明 する。これを以下Dolphinサーバーと称する。これは説明を簡単にするためであり、JBoss をクラスタリン グしてスケールアウトしたり、後述するORCAも同じマシンに構成する等の、目的や規模に応じて柔軟な構 成をとることが出来る。 2.OpenDolphinサーバーの概略 21.コンポーネント サーバー(Application Server + データベース)は下記コンポーネントから構成される。 OS CentOS または Ubuntu データベース PostgreSQL Java SE jdk1.7 アプリケーションサーバー Jboss-as-71.1.1Final OpenDolphin用に構成済を使用 JBoss AS7 Postgres Java SE CentOS/Ubuntu 22.マシンアーキテクチャーについて ・32-bit, 64-bit どちらでも可(特別な理由がない限り64bit推奨) ・Java VM がインストールできること 23.ソフトウェアバージョンについて CentOSの場合 6.3.Final等(5.5以降で所属組織等がサポ ートの対象としているもの) Ubuntuの場合 ORCA 4.7以降がインストール対象とな っているバージョン PostgreSQL 8.4 以降(9.xシリーズ可) Java SE jdk1.7.0_xx (xx:はバージョン部分で、 最新のものを使用すること) 24.インストールディレクトリについて ・Postgresについては使用するディストリビューションに付属するパッケージコマンドを使用する。そ のためインストールされる場所はディストリビューションによって異なる。 ・Java と JBoss については手動にてインストールする。このドキュメントでは下記へインストールする。 java -> /usr/java/ 配下へインストール JBoss -> /usr/jboss/ 配下へインストール 25.ORCA との接続方法 OpenDolphinはORCAと連携し、診療行為の送信のみならず、点数マスターも参照している。それ故 OpenDolphinを稼働させるにはORCAが必要であり、相互の接続の仕方は下記の2通りがある。 (A)DolphinサーバとORCAを接続するケース クライ アント Dolphin Server ORCA 192.168.97.69 192.168.97.88 (B)DolphinのクライアントとORCAを接続するケース Dolphin Server 192.168.97.69 ORCA 192.168.97.88 クライ アント iPhone/iPad を用いてORCAへ診療行為を送信する場合は、(A)の方法しかできない。 どちらを採用するかは病院の環境に依存するが、新規に構築する場合は(A)を推奨する。 26.構築のための ipアドレス体系例 このドキュメントでは、説明のために次の表記でマシンの ip アドレスを示す。 Dolphinサーバー <dolphin_server_ip> 例 192.168.97.69 ORCA <orca_ip> 例 192.168.97.88 コマンドについては CentOS の場合を示す。Ubuntuの場合は対応するコマンドに置き換える事。 3.OSインストール後の事前準備 (1)/etc/hosts にDolphinサーバーのホスト名を追加する。 例)ホスト名(マシン名)がdolphinの場合 <dolphin_server_ip> dolphin <= この行を追加 (2)FireWall の 8080 TCP ポートをオープンする。 4.Postgresインストール 最初にPostgresをインストールする。 手順リスト (1)yum 等のパッケージコマンドで postgres (8.4. 以降)をインストール (2)起動確認 (3)自動起動設定 コマンド例) # yum install postgresql-server.x86_64(64bit版の場合) # service postgres stop(Postgres停止) # service postgres start (Postgres開始) # chkconfig --list postgres (自動起動状態の確認) # chkconfig postgres on (自動起動設定) (4)Postgresへのアクセス許可設定(後述) (5)Postgresのlisten port 設定(後述) (6)postgres リスタート 4ー(4) Postgresへのアクセス許可設定 vi 等で pg_hba.conf 編集する。 # vi /var/lib/pgsql/data/pg_hba.conf -------------------------------------------------------------------------------------------------- host all all 127.0.0.1/32 trust <== trust にする -------------------------------------------------------------------------------------------------- DolphinクライアントとORCAを接続するケースでは、クライアントからのアクセスも許可するように設 定する。今クライアントがネットワークアドレス: 192.168.97.0 、サブネットマスク 255.255.255.0にあ る場合、次のようになる。 -------------------------------------------------------------------------------------------------- host all all 192.168.97.0/24 trust <== 追加する -------------------------------------------------------------------------------------------------- 詳細はpostgres関係文書参照。 4(5)listen port 設定 この設定はORCAとの接続方法が(B)の場合にのみ必要で、(A)の場合はスキップする。 vi 等で postgresql.conf を編集する。 # vi /var/lib/pgsql/data/postgresql.conf ------------------------------------------------------------------------------------------------------------------------ listen_addresses = 'localhost,<dolphin_server_ip>' <== 先頭の#を外し、 Dolphinサーバのip アドレスを追加 ------------------------------------------------------------------------------------------------------------------------ 以上の設定が終了したら Postgresをリスタートする(stopし続いて startで可)。 5.dolphin データベース作成 postgres ユーザーになり、 カルテ用の dolphin データベース及びユーザーを作成する。 項目 値 ユーザー名 dolphin *1 パスワード 空白 *1 データベース名 dolphin *2 ロケール C エンコーディング UTF-8 例) # su - postgres $ createuser dolphin(質問にはyes) $ createdb -lC -EUTF-8 -Ttemplate0 dolphin *1)ユーザー名、パスワードを独自に設定する場合は、JBoss の standalone-full.xml で データソース部 分 PostgresDS のエントリを書き変える。 *2)データベース名も任意である。dolphin以外を使用する場合は、上記同様 PostgresDSのエントリを変 更する。 6.Java jdk1.7 インストール (1)Orcale サイトより最新の Linux用 Java SE7 tar.gz 版をダウンロードする。 http://www.oracle.com/technetwork/java/index.html (2)jdkへシンボリックリンク作成する。 例) jdk-7u<version>-linux-x64.tar.gz (64bit版)を /usr/java 配下へインストールする場合 # # # # # mkdir - p /usr/java mv path_to_jdk-7u<version>-linux-x64.tar.gz /usr/java/ cd /usr/java tar zxvf jdk-7u<version>-linux-x64.tar.gz ln -sf jdk1.7.0_<version> /usr/java/home 7.構成済 JBoss インストール (1)OpenDolphin用に構成済の jboss-as-7.1.1.Final.zip をダウンロードする。 URL http://www.digital-globe.co.jp/openDolphin/sys-guide/25/server/jboss-as-7.1.1.Final.zip (2)ダウンロードしたjbossを /usr/jboss 配下に展開する。 (3)シンボリックリンクを作成する。 例) # # # # # mkdir -p /usr/jboss mv path_to_jboss-as-7.1.1.Final.zip /usr/jboss/ cd /usr/jboss unzip ./jboss-as-7.1.1.Final.zip ln -sf jboss-as-7.1.1.Final /usr/jboss/home 8.環境変数設定 (1)root の 環境変数 PATH に JBossのbinを通す。 例) bashの場合 /root/.bash_profileを編集 export PATH=/usr/jboss/home/bin:$PATH <== この行を追加 (2)/usr/jboss/home/bin/standalone.confファイルの下記行を書き変える。 JAVA_HOME="/usr/java/home <== 先頭の#を外し java へのシンボリックリンクを設定 (3)/usr/jboss/home/bin/jboss-cli.sh の先頭に下記二つのエントリ(行)を追加する。 export PATH=/usr/jboss/home/bin:$PATH:$HOME/bin <== 追加 export JAVA_HOME=/usr/java/home <== 追加 9.設定ファイル編集 91 DolphinサーバーとORCAを接続するケース (1)/usr/jboss/home/custom.properties を編集する。 項目 説明 dolphin.facilityId=1.3.6.1.4.1.9414.70.1 固定 jamri.code=123456789012 納入医療機関の JMARI コード (JPN 部を除く12桁) useAsPVTServer=true 固定 pvt.listen.bindIP=<dolphin_server_ip> Dolphinサーバーの ipアドレス pvt.listen.port=5002 固定 pvt.listen.encoding=UTF-8 固定 claim.conn=server 固定 claim.host=<orca_ip> ORCAマシンのip アドレス claim.send.port=8210 固定 claim.send.encoding=UTF-8 固定 rp.default.inout=out 納入医療機関のデフォルトの処方 院内の時in 院外の時out claim.jdbc.url=jdbc:postgresql:// <orca_ip>:5432/orca <orca_ip>部分がORCAのipアドレス、他は固定 claim.user=orca ORCAのPostgresデータベースユーザー名 *1 claim.password= ORCAのPostgresデータベースパスワード *1 *1 )ORCAのPostgresデータベースに設定したユーザー名とパスワード。デフォルトでは上記のようになっ ている。変更している場合は書き変えること。 (2)/usr/jboss/home/standalone/configuration/standalone-full.xml を編集する。 -------------------------------------------------------------------------------------------------------------------------<interfaces> <interface name="management"> <inet-address value="127.0.0.1"/> <== セキュリティ上 強く推奨 </interface> <interface name="public"> <inet-address value="<dolphin_server_ip>"/> <== Dolphinサーバーのipアドレス </interface> <interface name="unsecure"> <inet-address value="127.0.0.1"/> <== セキュリティ上 強く推奨 </interface> </interfaces> 92 DolphinクライアントとORCAを接続するケース (1)/usr/jboss/home/custom.properties を編集する。 項目 説明 dolphin.facilityId=1.3.6.1.4.1.9414.70.1 固定 jamri.code=123456789012 納入医療機関の JMARI コード (JPN 部を除く12桁) useAsPVTServer=false 固定 pvt.listen.bindIP=<dolphin_server_ip> Dolphinサーバーの ipアドレス pvt.listen.port=5002 固定 pvt.listen.encoding=UTF-8 固定 claim.conn=client 固定 claim.host=<orca_ip> ORCAマシンのip アドレス claim.send.port=8210 固定 claim.send.encoding=UTF-8 固定 rp.default.inout=out 納入医療機関のデフォルトの処方 院内の時in 院外の時out (2)/usr/jboss/home/standalone/configuration/standalone-full.xml を編集 -------------------------------------------------------------------------------------------------------------------------............. <interfaces> <interface name="management"> <inet-address value="127.0.0.1"/> <== セキュリティ上 強く推奨 </interface> <interface name="public"> <inet-address value="<dolphin_server_ip>"/> <== Dolphinサーバーのipアドレス </interface> <interface name="unsecure"> <inet-address value="127.0.0.1"/> <== セキュリティ上 強く推奨 </interface> </interfaces> 10.JBoss の起動と停止 設定ファイルを編集後、JBossを起動する。 (1)JBoss を起動コマンド(webプロフィールの standalone-full.xml を指定する) # standalone.sh -c standalone-full.xml & (2)停止 下記コマンドで停止も確認しておく。 # jboss-cli.sh -c --command=":shutdown" 12.クライアントインストール クライアントに使用するマシンは、Windows、Mac 等、サーバーとは異なるものを使用する。これには 最新のJava実行環境(jre-8u<最新バージョン>)がインストールさtれていること。 (1)OpenDolphinクライアントダウンロード URL http://www.digital-globe.co.jp/opendolphin/sys-guide/25/client/OpenDolphin.zip (2)クライアント起動 ・ダウンロードしたファイルを適当な場所へ解凍する ・解凍して出来たOpenDolphinフォルダ内の OpenDolphin.jar をダブルクリックする (2)ー1.共通 ログイン画面の「設定」ボタン押下し、「サーバータブ」に下記値を入力 ・医療機関ID : 1.3.6.1.4.1.9414.70.1 ・ユーザーID: admin ・ベースURI: http://<dolphin_server_ip>:8080(Dolphinサーバipアドレス:8080) -------------------------------------------------・ログイン時のパスワード: admin (2)ー2.DolphinサーバーとORCAを接続するケース(A) レセコンタブを押下 ・「診療行為送信」:(*1) ・医療機関コード(JMARI): ORCAに登録した12桁の医療機関コード ・ レセコンとの接続: サーバーを選択 (2)ー3.DolphinクライアントとORCAを接続するケース (B) レセコンタブを押下 ・「診療行為送信」: (*1) ・医療機関コード(JMARI): ORCAに登録した12桁の医療機関コード ・レセコンとの接続: クライアントを選択 ・IPアドレス: ORCAのipアドレス ・このマシンでORCAからの受付情報を受信する:(*2) *1) ・利用者が医師で診療行為をORCAに送信する場合: 送信するを選択 ・利用者が事務等で診療行為の送信をしない場合: 送信しないを選択 *2) ・複数のDolphinクライアント端末がある場合、どれか1台にチェックを入れる。 (残りの端末はチェックしない。またORCA側のCLAIM設定でチェックした端末に受付情報を送信するよ うに設定する。) 13.ORCA 受付情報送信先設定 (1)ORCAメニューの「91 マスタ登録」->「101 システム管理マスタ」から 「9000 CLAIM接続情報」を選択 (2)下記のように設定 CLAIM 接続 送信用コード 送信用アドレス ポート受付 請求 1 する 3 UTF8 *1 5002 5004 *1) (A)DolphinサーバとORCAを接続するケース 送信用アドレス ==> <dolphin_server_ip>(Dolphinサーバのipアドレス) (B) DolphinクライアントとORCAを接続するケース 送信用アドレス ==> 受付情報を受信するクライアントのipアドレス (ぜんこう12の *2 でチェックを入れたクライアントマシンのipアドレス) 参 考 R-1. OpenDolphin用に構成済のJBoss について ・JBoss バージョン: jbsoo-as-7.1.1.Final ・postgres ドライバを module として組み込み: modules -> org -> postgresql ・プローフィール: stanadlone/configuration/standalone-full.xml ----------------------上記プロフィールの構成内容--------------------------- ・logger、PostgresDS、jms-destinations:dolphinQueue、 subsystem xmlns="urn:jboss:domain:web:1.1"のenable-welcome-root ==>"false"、 ・interfacesの各 inet-address」 -------------------------------------------------------------------------------------- ・custom.properties (Dolphinサーバーの個別設定ファイル) ・templates内の .vm ファイアル(CLAIM送信に使用) ・init-dolphin-utf8.txt (初期アカウント登録用 sql) ・openDolphin-server-2.xx.war (OpenDolphinサーバプログラム warファイル) ・openDolphin-server-2.xx.war.deployed (deploy 指示ファイル) R-2. サーバメンテナンス用の cron 設定例 -------------------------------------------------------------------------------------------------------------------------0 3 * * * /usr/jboss/home/bin/jboss-cli.sh -c --command=":shutdown"; 5 3 * * * find /usr/jboss/home/standalone/log/ -type f -mtime +180 -exec rm {} \; 10 3 * * * /usr/jboss/home/bin/standalone.sh -c standalone-full.xml & -------------------------------------------------------------------------------------------------------------------------上から順番に、jboss 停止、180日以前のログ削除、jboss起動 他に Postgresのvacuum, reindex (月に一度等)を設定するとよい。 R-3. JBoss 文献 (1)公式ページ: http://www.jboss.org (2)eBook: JBoss AS 7 Configuration, Deployment and Administration Francesco Marchioni 著 Packt Publishing, 12月 2011 履歴 ・2012-10-20 初版 ・2012-11-26 インストール手順から Java SE 6 を削除。(EOL) ・2013-09-24 説明補足、章立て変更、表記方法改善 ・2015-01-15 構成、ダンロード場所、モジュールの更新 以上
© Copyright 2024