« GALAXY Tabとそのカバー。 | トップページ | Eye-fi X2 Pro.をP7000に導入。 »

Serversman@VPS (debian) にJava開発環境を構築

検証用に。

しかし最近はServersManサーバとしても使うようになっているので、リセットボタンが手軽に押せなくなっています。そろそろもう一台契約するか、ファイルサーバかサンドボックスサーバのどちらかを、用途に合った別サービスに移すことを考えるべきかも。

オチ:

Javaを満足に動かすには今のエントリープランではメモリが貧弱らしい、ということに落ち着きましたとさ。次回は他社も含めたVPS検討。どっとはらい。

方針:

  • できるだけOSパッケージをそのまま使う。
  • あまりみょんな事はしない。
  • 当面の用途はSpringフレームワークとApache Winkの検証用。お仕事目的だけど、帰宅後に思いついたことがあったとき、試す環境が無いので。お仕事サーバは乗っけないよ。そもそもディスクが大幅に足らんし。

導入作業:

まずSun JDKを導入。以下のDebianパッケージ。

  • sun-java6-jdk
  • sun-java6-doc
  • sun-java6-javadb (当面不要だけどなんとなく)

依存関係補正後;

以下の特別パッケージがインストールされます:
  avahi-daemon dbus dbus-x11 gsfonts-x11 java-common libasound2 libavahi-common-data
  libavahi-common3 libavahi-core5 libdaemon0 libdbus-1-3 libnss-mdns libxtst6
  sun-java6-bin sun-java6-jre
提案パッケージ:
  avahi-autoipd equivs libasound2-plugins binfmt-support sun-java6-demo sun-java6-source
  sun-java6-plugin ia32-sun-java6-plugin sun-java6-fonts ttf-baekmuk ttf-unfonts
  ttf-unfonts-core ttf-kochi-gothic ttf-sazanami-gothic ttf-kochi-mincho
  ttf-sazanami-mincho ttf-arphic-uming
以下のパッケージが新たにインストールされます:
  avahi-daemon dbus dbus-x11 gsfonts-x11 java-common libasound2 libavahi-common-data
  libavahi-common3 libavahi-core5 libdaemon0 libdbus-1-3 libnss-mdns libxtst6
  sun-java6-bin sun-java6-doc sun-java6-javadb sun-java6-jdk sun-java6-jre
アップグレード: 0 個、新規インストール: 18 個、削除: 0 個、保留: 23 個。
67.6MB のアーカイブを取得する必要があります。
この操作後に追加で 198MB のディスク容量が消費されます。

…と思ったんだがなんぞjavadocは面倒なことを言い出したので中止した。

ということで入りましたよ。

$ java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) Client VM (build 17.1-b03, mixed mode)
$ javac -version
javac 1.6.0_22

Tomcatの導入。以下のDebianパッケージ。

  • tomcat5.5

依存関係補正後;

以下の特別パッケージがインストールされます:
  ant ant-gcj ant-optional ant-optional-gcj gcj-4.3-base jsvc libbcel-java
  libcommons-beanutils-java libcommons-collections-java libcommons-collections3-java
  libcommons-daemon-java libcommons-dbcp-java libcommons-digester-java
  libcommons-el-java libcommons-launcher-java libcommons-logging-java
  libcommons-modeler-java libcommons-pool-java libecj-java libecj-java-gcj libgcj-bc
  libgcj-common libgcj9-0 libgcj9-0-awt libgcj9-jar libjaxp1.3-java libjaxp1.3-java-gcj
  liblog4j1.2-java liblog4j1.2-java-gcj libmx4j-java libregexp-java libservlet2.3-java
  libservlet2.4-java libtomcat5.5-java libxerces2-java libxerces2-java-gcj
提案パッケージ:
  ant-doc libbsf-java liboro-java libxalan2-java junit jython antlr libjdepend-java
  libgnumail-java libxml-commons-resolver1.1-java libcommons-net-java libjsch-java
  javacc libbcel-java-doc libcommons-beanutils-java-doc libcommons-collections3-java-doc
  libavalon-framework-java liblogkit-java classpath-doc ecj libgcj9-dbg
  libservlet2.4-java-gcj libxerces2-java-doc libapache2-mod-jk tomcat5.5-webapps
  tomcat5.5-admin
以下のパッケージが新たにインストールされます:
  ant ant-gcj ant-optional ant-optional-gcj gcj-4.3-base jsvc libbcel-java
  libcommons-beanutils-java libcommons-collections-java libcommons-collections3-java
  libcommons-daemon-java libcommons-dbcp-java libcommons-digester-java
  libcommons-el-java libcommons-launcher-java libcommons-logging-java
  libcommons-modeler-java libcommons-pool-java libecj-java libecj-java-gcj libgcj-bc
  libgcj-common libgcj9-0 libgcj9-0-awt libgcj9-jar libjaxp1.3-java libjaxp1.3-java-gcj
  liblog4j1.2-java liblog4j1.2-java-gcj libmx4j-java libregexp-java libservlet2.3-java
  libservlet2.4-java libtomcat5.5-java libxerces2-java libxerces2-java-gcj tomcat5.5
アップグレード: 0 個、新規インストール: 37 個、削除: 0 個、保留: 23 個。
1 個のパッケージが完全にインストールまたは削除されていません。
38.5MB のアーカイブを取得する必要があります。
この操作後に追加で 93.9MB のディスク容量が消費されます。

またもsun-java6-docが入ろうとした。

maven2の導入。以下のDebianパッケージ。

  • maven2

依存関係補正後。

以下の特別パッケージがインストールされます:
  antlr libantlr-java libantlr-java-gcj libclassworlds-java libcommons-cli-java
  libcommons-codec-java libcommons-httpclient-java libcommons-lang-java
  libcommons-net-java libcommons-openpgp-java libdoxia-java libganymed-ssh2-java
  libjdom0-java libjsch-java libjtidy-java liblogkit-java liboro-java
  libplexus-classworlds-java libplexus-component-api-java
  libplexus-container-default-java libplexus-interactivity-api-java libplexus-utils-java
  libplexus-velocity-java libslide-webdavclient-java libwagon-java libwerken.xpath-java
  libxalan2-java libxalan2-java-gcj velocity
提案パッケージ:
  libclassworlds-java-doc libcommons-httpclient-java-doc libcommons-openpgp-java-doc
  libdoxia-java-doc libjtidy-java-doc libgnumail-java libplexus-classworlds-java-doc
  libplexus-component-api-java-doc libplexus-container-default-java-doc
  libplexus-interactivity-api-java-doc libplexus-utils-java-doc
  libplexus-velocity-java-doc libwagon-java-doc libxalan2-java-doc libbsf-java
  libxsltc-java velocity-doc
以下のパッケージが新たにインストールされます:
  antlr libantlr-java libantlr-java-gcj libclassworlds-java libcommons-cli-java
  libcommons-codec-java libcommons-httpclient-java libcommons-lang-java
  libcommons-net-java libcommons-openpgp-java libdoxia-java libganymed-ssh2-java
  libjdom0-java libjsch-java libjtidy-java liblogkit-java liboro-java
  libplexus-classworlds-java libplexus-component-api-java
  libplexus-container-default-java libplexus-interactivity-api-java libplexus-utils-java
  libplexus-velocity-java libslide-webdavclient-java libwagon-java libwerken.xpath-java
  libxalan2-java libxalan2-java-gcj maven2 velocity
アップグレード: 0 個、新規インストール: 30 個、削除: 0 個、保留: 23 個。
1 個のパッケージが完全にインストールまたは削除されていません。
12.9MB のアーカイブを取得する必要があります。
この操作後に追加で 41.3MB のディスク容量が消費されます。

JAVAHOMEをセットしないとmaven2は動かない。javaコマンド自体は/usr/bin/にあるけど、こいつはalternativesで管理されているのでJAVA_HOMEは別の場所。

$ /usr/sbin/update-alternatives --list java

/usr/lib/jvm/java-6-sun/jre/bin/java

$ export JAVA_HOME="/usr/lib/jvm/java-6-sun/"

あとでちゃんと.bashrcとかも変えよう。

…mvn --versionですら、heapが足らんと文句を言うので、

export MAVEN_OPTS=-Xmx64m

も追加実行したところ動くように。よく見るとjavaでも同じ現象。ServersMan@VPSのEntryプランだと、Javaはきついか?

その後、createを走らせようとしたところで致命的な自体に。-Xmxを100mまで変えてみたところ、指定値が確保できるメモリ量より大きくなりすぎて失敗するか、Maven2のほうが指定値より多くのメモリを要求して失敗するかの2パターンに収束。ダメっぽいデス。

OS的には、150MB程度まではメモリ残っていたようではあるのですが…。

Entryプランだと保障256MB、最大512MBなので、タイミングを選べばもう少し動く可能性はあり。ただ、Javaは元々メモリ喰いなので、「運が良ければ512MB環境になって動く」ではNG。となると、最低限次レベルのStandard、保障512MBの世界が必要…。

この価格帯になると他社のVPSサービスも視野に入ってくるので、一度全体的な調査・検討が必要なようです。

|

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/28934/50494937

この記事へのトラックバック一覧です: Serversman@VPS (debian) にJava開発環境を構築:

コメント

コメントを書く