3. Liberty for Java

IBM Cloud Software
WASユーザー向け:
Bluemix上のWAS ご紹介セミナー
~クラウドのWASを利用してビジネスを拡大~
3. Liberty for Java
2016年2月17日 (水)
日本アイ・ビー・エム株式会社
クラウド・ソフトウェア事業部
アプリケーション・プラットフォーム テクニカル・セールス
© IBM
Corporation
1
WAS Libertyプロファイルの特長
text
①Java EE 7対応
⑤統合ツール(WDT)
Java EE 7 標準に準拠したアプリを完全サポート
JAX-WS, JAX-RS, JMSもサポート
新機能も継続的に提供
高機能なEclipse用の連携ツール
を無償で提供
Eclipseから簡単に使用可能
②軽量ランタイム
⑥自動化ツールとの連携
メモリー使用量が小: 60MB程度~
ディスク使用量も100MB以下
起動が速い:5秒程度
多くのOSSツールに
無償でプラグインを提供
③Unzipによる導入とデプロイ
パッケージをした
サーバー + アプリ + 構成情報を
Unzipでデプロイ可能
⑦様々な環境で稼動
WAS V8.5.5.x Liberty & WDT
オンプレ、クラウド(IaaS、
PaaS)で稼動可能
④簡単な構成と動的変更
最低限必要な構成ファイルはserver.xmlひとつだけ
デフォルトベースで簡単構成
構成変更は再起動なしに反映
© IBM
Corporation
2
API・サーバー機能をFeatureとして定義
–text個別のAPIやサーバー機能ごとに,独立したFeatureとして実装
• 四半期ごとに新機能がFeature単位で追加されて提供
• 新仕様が出ても旧仕様のFeatureは継続して提供
– アプリケーションで使用するAPIなど,必要なものだけ構成
• 設定されたものだけがメモリにロード・初期化される
→ 最小限の起動時間・メモリー使用
<featureManager>
<feature>jsp-2.3</feature>
<feature>jdbc-4.1</feature>
<feature>jaxrs-2.0</feature>
<feature>sessionDatabase-1.0</feature>
<feature>ssl-1.0</feature>
</featureManager>
構成ファイル server.xml
依存関係も
自動的に解決
sessionDatabase
JAX-RS
JSON
SSL
JDBC
JSP
Servlet
© IBM
Corporation
3
各種自動化ツールとの連携
–text各種CI・Buildツールとの連携機能を提供
– IBM UrbanCodeには連携プラグインを提供
• https://developer.ibm.com/urbancode/plugin/websphere-liberty-ibmucd/
– OSSツールは連携機能をGitHubで公開
• 継続的インテグレーション: UrbanCode,Jenkins
• ビルドツール: Ant、Maven、gradle
• 構成管理ツール:CHEF、Puppet
https://github.com/wasdev
© IBM
Corporation
4
開発者ツール・WDTの無償提供
–textWebSphere Developer Tools for Eclipseとは?
• 無償で提供される WebSphere開発者向けの軽量Eclipseプラグイン
– Java EEアプリケーション開発、アセンブル、デプロイ
– Libertyプロファイルのサーバー構成に利用
• wasdev.netサイトからダウンロード可能
– https://developer.ibm.com/wasdev/downloads/
• 直接Eclipse Marketplaceからも検索・導入が可能
© IBM
Corporation
5
Liberty for Java
–textBluemix上で提供されているJavaアプリケーション実行環境
• Bluemixのベータ公開時点から提供
– 製品版のWAS Libertyプロファイルと同じ実行環境
• 一般的なJava EEアプリケーションがそのまま稼働
© IBM
Corporation
6
Liberty for Java環境
–
text
Libertyプロファイルが構成されたCloud FoundryのBuild Packとして提供
• Build Packの内容は定期的に更新される
– リソース
• 4core(非公開)
• メモリサイズ
– 64M~
(無償アカウントでは2Gバイトまで)
• インスタンス
– 1~
• メモリサイズ×インスタンス数×時間による従量課金
– 1ヶ月に375GB・時間までは無料
– OS
• Ubuntu 14.x(2016年2月現在:基本的に最新版が使用されます)
– リモートログインはできません
– WAS
• 8.5.x(2016年2月現在:基本的に最新版が使用されます)
– 個別にFixpackをあてたりFeatureを追加したりはできません
– JDK
• IBM JDK 1.8と1.7が選択できます
– Cloud FoundryでJBP_CONFIG_IBMJDK環境変数を設定することで選択
© IBM
Corporation
7
Liberty for Javaのディレクトリ構造
text
– Bluemixのダッシュボードから参照可能
– Java実行環境
(ユーザーによる書き換え不可)
– Libertyプロファイル実行環境
(ユーザーによる書き換え不可)
– サーバー構成
および導入アプリケーション
• CFコマンド・Eclipseツールで
自由に構成が可能
MiddleWare環境(JDK+WAS)は
意識する必要がない
© IBM
Corporation
8
Liberty for Javaで使用可能なFeature
–textデフォルトではJava EE 7 Web Profileに含まれる仕様が構成
• Java EE 6 Web Profile/Java EE 7 Full Platformの仕様も構成可能
appSecurity-1.0
batchManagement-1.0
blueprint-1.0
concurrent-1.0
ejbHome-3.2
ejbRemote-3.2*
jacc-1.5
jaxb-2.2
jaxws-2.2
jdbc-4.0
jmsMdb-3.1
jpa-2.1
jsonp-1.0
localConnector-1.0
mdb-3.2
openid-2.0
osgiConsole-1.0
rtcomm-1.0
servlet-3.1
timedOperations-1.0
wasJmsSecurity-1.0
webProfile-7.0
wmqJmsClient-2.0
appSecurity-2.0
beanValidation-1.0
cdi-1.0
couchdb-1.0
ejbLite-3.1
el-3.0
jaspic-1.1
jaxrs-1.1
jca-1.6
jdbc-4.1
jmsMdb-3.2
jsf-2.0
jsp-2.2
logAnalysis-1.0
mongodb-2.0
openidConnectClient-1.0
osgi.jpa-1.0
rtcommGateway-1.0
sessionDatabase-1.0
wab-1.0
wasJmsServer-1.0
websocket-1.0
wsSecurity-1.1
appState-1.0
beanValidation-1.1
cdi-1.2
distributedMap-1.0
ejbLite-3.2
eventLogging-1.0
javaee-7.0
jaxrs-2.0
jca-1.7
jms-1.1
jndi-1.0
jsf-2.2
jsp-2.3
managedBeans-1.0
monitor-1.0
openidConnectServer-1.0
restConnector-1.0
samlWeb-2.0
sipServlet-1.1
wasJmsClient-1.1
webCache-1.0
websocket-1.1
batch-1.0
bells-1.0
cloudAutowiring-1.0
ejb-3.2*
ejbPersistentTimer-3.2
j2eeManagement-1.1
javaMail-1.5
jaxrsClient-2.0
jcaInboundSecurity-1.0
jms-2.0
jpa-2.0
json-1.0
ldapRegistry-3.0
mdb-3.1
oauth-2.0
osgiAppIntegration-1.0
requestTiming-1.0
servlet-3.0
ssl-1.0
wasJmsClient-2.0
webProfile-6.0
wmqJmsClient-1.1
© IBM
Corporation
9
cfコマンドによるアップロード
–textCould Foundryのコマンドラインツールをローカルに導入
• GitHubから最新版をダウンロード
– WAR/EARファイルのアップロード
• コンテキスルートは,EARはファイル内でを指定したもの
WARは/に自動構成される
$ cf push <yourappname> -p myapp.war
– ローカルのサーバー構成ディレクトリを直接アップロード
$ cf push <yourappname> -p wlp/usr/servers/defaultServer
– ローカルのサーバーからパッケージを作成してアップロード
$ wlp/bin/server package defaultServer ––include=usr
--archive="./defaultServer.zip"
$ cf push <yourappname> -p defaultServer.zip
その他,多くの環境構成がcfコマンドから可能
© IBM
Corporation
10
IBM Bluemix Tools for Eclipseによるアップロード
– Eclipseから直接Bluemixに接続するためのPlugin
text
• Eclipse Marketplaceから検索・導入が可能
– Eclipse上で開発しているアプリケーションを
直接Bluemix上にアップロードして実行することが可能
© IBM
Corporation
11
WAS for Bluemix と Liberty for Java の違い
WAS
for Bluemix
Liberty
for Java
用途
最新Fix・バージョンのテスト環境
Cloud NativeなSoEアプリの新規開発
課金
従量課金
従量課金
HW
・SoftLayer上の仮想マシン
・意識しない
・SoftLayer上の Cloud FoundryベースのPaaS
・意識しない
・共有
・共有
・OS設定、パッケージインストールなど可能
・意識しない(変更できない)
・Fixの適用も可能
・意識しない(変更できない)
・OS以上は従来と同様の運用が可能
・WAS for Bluemixは定期的にFix適用されるため、
新しいインスタンスを作り直すことも可能
・MiddleWare以下はほぼ自動運用
・OpenVPNでの接続前提
・従来のWASと同機能
・管理コンソールへのアクセス可能
・数十秒~数分で構築
・決まったトポロジー
・Internetからのアクセス
・cfコマンド利用可能
・管理コンソールへのアクセス不可
・数秒で構築
・他Bluemixサービスと容易に連携(VCAP)
text
リソース共有
OS
MiddleWare
運用
特徴
© IBM
Corporation
12
IBM Cloud Software
© IBM
Corporation
13
Similar pages