Changes between Version 7 and Version 8 of epics/Archiver Appliance インストールメモ
- Timestamp:
- 10/02/18 15:09:43 (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
epics/Archiver Appliance インストールメモ
v7 v8 23 23 * バイナリ 24 24 {{{ 25 % wget https://github.com/slacmshankar/epicsarchiverap/releases/download/v0.0.1_SNAPSHOT_2 0-Sept-2016/archappl_v0.0.1_SNAPSHOT_20-September-2016T13-50-17.tar.gz25 % wget https://github.com/slacmshankar/epicsarchiverap/releases/download/v0.0.1_SNAPSHOT_27-Nov-2017/archappl_v0.0.1_SNAPSHOT_27-November-2017T16-32-40.tar.gz 26 26 }}} 27 27 * ソースコード … … 31 31 32 32 == Apache Tomcat == 33 AAを走らせるにはApache Tomcat 7.0.61以降が必要。[http://tomcat.apache.org/download-80.cgi Apache Tomcat配布元]から8.5. 16をダウンロードした。33 AAを走らせるにはApache Tomcat 7.0.61以降が必要。[http://tomcat.apache.org/download-80.cgi Apache Tomcat配布元]から8.5.28をダウンロードした。 34 34 35 35 == MySQL == … … 45 45 という構成にしたが、MySQLサーバはAAとは独立したマシンにした方がよかったかもしれない。 46 46 47 Raspbian stretchでは、mariadb 10.1.23を用いた 48 {{{ 49 # apt install mariadb-server mariadb-client 50 }}} 51 47 52 == MySQL クライアント jar == 48 53 mysql-connector-javaを[http://dev.mysql.com/downloads/connector/j/ MySQL本家]からダウンロードする。 49 54 SL6標準のrpmパッケージは依存するライブラリを多数インストールするのでやめておく。 55 以下のクライアントで動いた: 56 * mysql-connector-java-5.1.45-bin.jar 57 * mysql-connector-java-5.1.47.jar 58 * mysql-connector-java-8.0.12.jar 59 AAのインストール後に、インストール先ディレクトリのapache-tomcat-8.5.xx/libに置いてあるjarを差し替えることで、javaクライアントを入れ替えることができる。 60 61 以下のクライアントではAAがエラーを吐いて動作しなかった: 62 * mariadb-java-client-2.3.0.jar 63 {{{ 64 重大: Unable to create initial connections of pool. 65 java.sql.SQLException: Unable to load class: com.mysql.jdbc.Driver from ClassLoader:java.net.URLClassLoader@18025c;ClassLoader:ParallelWebappClassLoader 66 }}} 67 * ${TOMCAT_HOME}/conf/context.xml (後述) を次のように書き換えても動作しない。どこかでhard codingされている可能性がある 68 {{{ 69 driverClassName="org.mariadb.jdbc.Driver" 70 }}} 50 71 51 72 == JDK 1.8 == 52 制御計算機にはすでにインストールしてあるので省略。 73 制御計算機ではOracleのjdk-8u181-linux-x84を用いた。 74 75 Raspbian stretchでは以下の2つのJDK8で動作確認した: 76 * oracle-java8-jdk (JAVA_HOME=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt) 77 * openjdk-8-jdk (JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-armhf) 78 Raspbianでは、AAのインストールの過程でjsvcのビルドに失敗する。apache tomcatのcommons-daemon-native.tar.gzの中のconfigureにパッチを当てるのは大変なので、 79 jdkに手をいれて対処する: 80 {{{ 81 cd $JAVA_HOME/include 82 ln -fs linux arm 83 }}} 53 84 54 85 == zenity == … … 86 117 87 118 == /etc/my.cnf == 88 MySQLの設定ファイルをリポジトリからコピーして使う。 119 * SL6の場合 120 MySQLの設定ファイルをリポジトリからコピーして使う。 89 121 {{{ 90 122 [mysqld] … … 109 141 }}} 110 142 143 * Rasibianのmariadbの場 144 /etc/mysql/mariadb.conf.d/50-server.cnfでdatadirを適宜書き換える。 145 debian由来のmariadbでは、デフォルトの文字コードがutf8mb(4-bytes unicode)になっているために767バイト制限に引っかかってテーブルを作れない。次のファイルを書き換えてutf8 (3-bytes unicode)を使うようにする。 146 * /etc/mysql/mariadb.conf.d/50-server.cnf 147 * /etc/mysql/mariadb.conf.d/50-clients.cnf 148 * /etc/mysql/mariadb.conf.d/50-mysql-clients.cnf 149 111 150 == logrotate == 112 151 /etc/logrotate.d/mysqld に手順が書いてある。後回し。 113 152 114 153 == mysqlサーバ自動起動の設定 == 154 * SL6の場合 155 MySQLをインストールしても自動起動しない。自動起動するように設定する 115 156 {{{ 116 157 # cd /etc/rd.c/ini.d … … 121 162 122 163 == MySQLサーバの起動 == 123 dbが存在しない場合は、MySQLサーバの初回起動時に、スクリプトがdbを作ってくれる。 164 * SL6のrpmパッケージでMySQLをインストールした場合 165 MySQLサーバの初回起動時に(dbが存在しなければ)dbを作ってくれる。 124 166 {{{ 125 167 # /etc/rc.d/init.d/mysqld start … … 157 199 [ OK ] 158 200 mysqld を起動中: [ OK ] 201 }}} 202 203 * Raspbianのmariadbの場合 204 datadirを標準のものから変えた場合は明示的にdbを作る必要がある。 205 {{{ 206 systemctl stop mariadb 207 mysql_install_db --user=mysql --datadir=/localdata/mysql 208 systemctl start mariadb 159 209 }}} 160 210 … … 501 551 == 起動スクリプトの修正 == 502 552 インストールスクリプトがAAの起動スクリプトsampleStartup.shを生成するので、環境に合わせて書き換える。 553 * Rasibianの場合、oracle jdk8/openjdk8のいずれもjvmにサーバーモードが存在しない。jsvcに渡す引数から-serverを削除しておく。 503 554 504 555 === アプライアンスの設定 ===