2018年01月01日
母さんの味 USBメモリー
USBメモリー元気ハツラツぅ?
こだわりのUSBメモリー
前回の続きです。
Tomcatのログを見ると、オプションのMaxPermSize=256mが8.0から除かれているとのこと。
Java JDK7の最終バージョンをインストールしてみたいと思います。
JDK8のアンインストール
参考ページ
Yukun's Blog 「Java: Linux (CentOS)からJDK (RPM PKG版)をアンインストールする方法」
Javaが入っていることを確認する
# java -version
Javacのバージョンも確認
# javac -version
インストールデータの確認
# which java
/bin/java 登録されている環境によって異なる
インストールデータの確認
# ls -l /bin/java
lrwxrwxrwx. 1 root root 22 Dec 2 02:22 /bin/java -> /etc/alternatives/java
アンインストールするJDKのパッケージ名を確認
# rpm -qa | grep jdk
jdk1.8.0_112-1.8.0_112-fcs.x86_64
JDKのアンインストール
# rpm -e jdk1.8.0_112-1.8.0_112-fcs.x86_64
アンインストール結果確認
# java
-bash: /bin/java: No such file or directory
# javac
-bash: javac: command not found
# ls /etc/alternatives/
Javaのファイルが削除されていることを確認する
JDK7のインストール
ダウンロード
から「Java SE 7」を選びます。
「Java SE Development Kit 7u80」の「Accept License Agreement」にチェックを付けて
「jdk-7u80-linux-x64.rpm」にカーソルを合わせるとウインドウの下にアドレスが表示されるのでメモしておきます。
# wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie"
"http://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-i586.rpm" -O jdk-7u80-linux-i586.rpm
インストール
# rpm -ivh jdk-7u80-linux-i586.rpm
error: ... :No such file or directory
ダウンロード出来ていませんでした。
(ノ_-。
)
Javaの旧版はサインインしないとダウンロード出来ないのが原因と思われます。
ダウンロードしたファイルを削除します。
# rm *.rpm
USBメモリーからファイルコピー
参考ページ
WEBサービス創造記 「CentOSでUSBを手動でマウントする」
WindowsPCでUSBメモリーに書き込み、CentOS7サーバーに挿してみる
# [ 8271.534658] sd 4:0:0:0: [sdb] Asking for cache data failed [ 8271.535042] sd 4:0:0:0: [sdb] Assuming drive cache: write through
マウントされているか確認する
# df -a
USBに割り当てられたデバイス名を確認する
# dmesg
多分、sdb1
マウント実行
# mount -t vfat /dev/sdb1 /mnt
確認
# ls -l /mnt/
-rwxr-xr-x. 1 root root 136775360 Dec 5 20:22 jdk-7u80-linux-i586.rpm
-rwxr-xr-x. 1 root root 138090286 Dec 5 20:18 jdk-7u80-linux-x64.rpm
drwxr-xr-x. 2 root root 32768 Nov 21 22:37 System Volume Information
コピー
# cp /mnt/*.rpm /root/
アンマウント
# umount /mnt
インストール
# rpm -ivh jdk-7u80-linux-x64.rpm
確認
# java -version
pentaho起動
# cd /pentaho/pentaho-server/
# ./start-pentaho.sh
LAN内の他のPCから実行してみる…開かない(ノДT)
The request resource is not available.
catalina.outを見る
WARNING [localhost-startStop-1] org.apache.catalina.startup.SetContextPropertiesRule.brgin [SetContextPropertiesRule]{Context} Setting property 'docbase' to 'webapps/pentaho/' did not find a matching property.
設定した'docbase' to 'webapps/pentaho/'というプロパティは一致するプロパティが無いと叱られている。
ネットでググってみる
I’ve been using Pentaho “biserver-ce-3.8.0-stable” run on Tomcat 7. But everytime I start Tomcat, show some message like this:
May 11, 2011 3:02:13 PM org.apache.catalina.startup.SetContextPropertiesRule begin
WARNING: [SetContextPropertiesRule]{Context} Setting property ‘docbase’ to ‘webapps/pentaho/’ did not find a matching property.
So to get rid of this warning message, I delete
docbase=”webapps/pentaho/”
from
in “webapps\pentaho\META-INF\context.xml”. Now, I see Tomcat run smoothly (“INFO: Deploying web application directory pentaho”). ^_^
ということで、
/webapps/pentaho/META-INF/context.xmlの
pentaho再起動
# ./stop-pentaho.sh
# ./start-pentaho.sh
LAN内の他のPCから実行してみる…まだ開かない(ノДT)
「このページは表示できません。
」
catalina.outを見る
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(x0000000680000000, 1431830528, 0) failed; error='Cannot allocate memory' (error=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 1431830528 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /root/pentaho/pentaho-server/tomcat/bin/hs_err_pid6987.log
ググってみると
Oracle Blogs 日本語のまとめ 「[Java, Linux] UseLargePages on Linux」
原因
ラージページのサポートがシステム上で有効になっている場合、LinuxプラットフォームでのHotSpotのcommit_memory()実装は、ラージページを使うmmapコールで、既に予約されたメモリをコミットしようとします。
十分なサイズのラージページがない場合には、mmapコールは予約されたメモリをリリースできず、同じメモリ領域を他の割り当て(アロケーション)に利用できません。
このために同じメモリ領域を使う異なる目的で使うと予期せぬ挙動を引き起こします。
回避策
- JVMオプションでラージページの利用(-XX:-UseLargePages)を無効化する
- システムで利用可能なラージページのサイズを増やす。
十分なサイズのラージページがシステムにある場合、メモリコミットの失敗のリスクを減らすことができ、このラージページの問題に遭遇する可能性が減る。
ラージページのサイズを構成する方法は以下のリンクを参照すること。
Java Support for Large Memory Pages
サーバーのメモリーサイズを調べます
# cat /proc/meminfo
画面が流れるので上の方を見たいときは、Shift+PageUP
MemTotal: 1882940 kB
MemFree: 1751968 kB
約1.8GB
上のエラーでは約1.4GBをcommitting reserved memoryに割り付けなさいと言っているようなのですが、残りが400MB程度になっていまうのでここではラージページの利用を無効化したいと思います。
# java -XX:-UseLargePages -version
ファイル名を変える
catalina.outの行数が多くなって見づらいのでファイル名を変えます。
# mv catalina.out catalina.bak
ファイルを作る
# touch catalina.out
pentaho再起動
# ./stop-pentaho.sh
# ./start-pentaho.sh
LAN内の他のPCから実行してみる…まだ開かない(ノДT)
「The requested resource is not available.」
こんなに動かないもの?
catalina.outを見る
SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.startInternal Context [/pentaho] startup failed due to previous errors
localhostを見る
java.lang.UnsupportedClassVersionError: org/pentaho/platform/web/http/context/SpringEnvironmentSetupListener : Unsupported major.minor version 52.0 (unable to load class org.pentaho.platform.web.http.context.SpringEnvironmentSetupListener) at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2563)
諦めた!
pentahoを6.1にしてみる
pentaho7を消す
pentahoディレクトリで
# rm -f -r pentaho-server
# rm -f -r *.zip
pentaho6.1のダウンロード
解凍
# unzip biserver-ce-6.1.0.1-196.zip
# cd biserver-ce
# ./start-pentaho.sh
LAN内のPCのブラウザでhttp://サーバーアドレス:8080/
「HTTP 404 未検出」
ポートが違う?続きは明日です。