Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
JBoss EAP for OpenShift
Search
Mamoru Shimizu
February 28, 2019
Technology
95
0
Share
JBoss EAP for OpenShift
OpenShift Meetup Tokyo #2 で発表した資料です。
Mamoru Shimizu
February 28, 2019
More Decks by Mamoru Shimizu
See All by Mamoru Shimizu
Tekton 入門
mamoru1112
4
1.6k
Other Decks in Technology
See All in Technology
食べログのサーキットブレーカー導入を振り返って
atpons
1
150
Kiro CLI v2.0.0がやってきた!
kentapapa
0
210
Javaコミュニティをもっと楽しむための9箇条
takasyou
0
520
Claude Codeですべての日常業務を爆速化しよう!
minorun365
PRO
16
16k
大規模災害時でも高い信頼性を維持するアプリケーション基盤の実現/nikkei-tech-talk46
nikkei_engineer_recruiting
0
120
JJUG CCC 2026 Spring AI時代の開発こそ標準化を武器に! ― 方式・プロセス・プラットフォームの標準化
s27watanabe
2
620
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
6
670
Terraformモジュールは、なぜ「魔境」化するのか
hayama17
1
110
基礎から解説!Icebergで紐解くSnowflake×Databricks連携の現在地
cm_yasuhara
0
390
Generative UI × A2UI で AI エージェントを作った話 AI-DLC も使ってみた!
kmiya84377
1
280
Kaggle未経験社員をメダリストに育てる「AIドラゴン桜」
lycorptech_jp
PRO
0
650
OpenID Connectによるサービス間連携
takesection
0
140
Featured
See All Featured
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
290
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
RailsConf 2023
tenderlove
30
1.4k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Fireside Chat
paigeccino
42
3.9k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The SEO identity crisis: Don't let AI make you average
varn
0
480
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
Transcript
JBoss EAP for OpenShift Mamoru Shimizu / Consultant / Red
Hat K.K.
自己紹介 • Name : Mamoru Shimizu (Twitter: @mamomamo) • Company
: Red Hat K.K. • Role : Consultant • 最近の仕事 ◦ OpenShift 上のアプリケーション開発支援 ◦ OpenShift の構築支援 ◦ OpenShift ハンズオンの講師 など
アジェンダ • JBoss EAP for OpenShift の S2I(Source-to-Image) の紹介 •
JBoss EAP for OpenShift 利用上の注意点
JBoss EAP for OpenShift とは • Red Hat Container Catalog
から取得可能であり、 Red Hat のセキュリティチームによ り品質保証のプロセスを受けた、 OpenShift 上で動かすための JBoss EAP のコンテナ イメージ • 参考 : Red Hat Container Catalog ◦ https://access.redhat.com/containers/
S2I (Source-to-Image) とは • ベースイメージに対して、ソースコードからコンパイルしたバイナリを挿入し、新しいコ ンテナイメージを作成するフレームワーク
Deploy a JBoss EAP S2I Application to OpenShift • JBoss
EAP for OpenShift のテンプレートと、 Java アプリケーションのソースコードか ら、以下のコマンドによりアプリケーションを作成 • 上記のコマンドを実行することで、 Pod ・ Service ・ DeploymentConfig ・ BuildConfig な どが作成される oc new-app --template=eap72-basic-s2i \ -p IMAGE_STREAM_NAMESPACE=eap-demo \ -p SOURCE_REPOSITORY_URL=https://github.com/jboss-developer/jboss-eap-quickstarts \ -p SOURCE_REPOSITORY_REF=openshift \ -p CONTEXT_DIR=kitchensink
How the JBoss EAP for OpenShift S2I Process Works 1.
ソースリポジトリに pom.xml が存在すれば、 Maven ビルドプロセスが起動される 2. Maven ビルドプロセスが成功すると、 EAP_HOME/standalone/deployments に、生 成されたパッケージ (JAR/WAR/EAR) がコピーされる 3. ソースリポジトリに configuration ディレクトリが存在すれば、 EAP_HOME/standalone/configuration にファイルがコピーされる 4. ソースリポジトリに modules ディレクトリが存在すれば、 EAP_HOME/modules にファ イルがコピーされる
EAP for OpenShiftのS2Iで他に実現できること • Deployment Artifacts ◦ デフォルトでは target ディレクトリからアーティファクトをコピーするが、
BuildConfig の ARTIFACT_DIR 環境変数に設定されたディレクトリ配下からコピーするように変更できる • Artifact Repository Mirrors ◦ BuildConfig に MAVEN_MIRROR_URL 環境変数を設定することで、 Maven リポジトリのミラーサイト を指定できる • Environment Variables ◦ 上記の他にも HTTP プロキシの設定( HTTP_PROXY_HOST など)や、 Mavan コマンドの引数 ( MAVEN_ARGS_APPEND )を指定することができる
S2Iスクリプトの実体 • EAP for OpenShift のコンテナイメージの /usr/local/s2i 配下に格納されたシェルスク リプト •
run : ◦ JBoss EAP の設定と起動 • assemble : ◦ Maven コマンドにより、ソースコードをビルドし、パッケージ( WAR )を生成 ◦ 生成されたパッケージを EAP_HOME/standalone/deployments ディレクトリ配下へ移動
S2Iスクリプトのカスタマイズ • S2I スクリプトはカスタマイズ可能 • ソースリポジトリの .s2i/bin ディレクトリ配下にカスタマイズした S2I スクリプトを格納す
ることで、 S2I ビルドプロセスの実行時に既存の S2I スクリプトを上書きすることができ る
Comparison: JBoss EAP and JBoss EAP for OpenShift Feature Status
Description Management Console Not included Management CLI Not recommended コンテナが再起動すると設定が消えるから非推奨 Managed domain Not supported Default root page Disabled Remote messaging Supported ActiveMQ ArtemisはシングルPodのみsupported Transaction Recovery Partially supported 次ページを参照
Unsupported Transaction Recovery Scenarios • Pod がスケールインした際に、実行途中のトランザクションが失敗し、手動でトランザ クションのリカバリする必要がある • Unsupported
Transaction Recovery Scenarios ◦ JTS transactions ◦ XTS transactions ◦ Transations propagated over JBoss Remoting ◦ Transactions propagated over XATerminator
まとめ • JBoss EAP for OpenShift の S2I は色々できる •
JBoss EAP ≠ JBoss EAP for OpenShift • 単純な Lift&Shift はコンテナアプリケーションのアンチパターンを踏む可能性がある ため、設計時に設計原則を確認しておこう ◦ 「コンテナベース・アプリケーションの設計原則」 ▪ https://www.redhat.com/cms/managed-files/cl-cloud-native-container-design-whitepaper-f880 8kc-201710-a4-ja.pdf
参考情報 • Getting Started with JBoss EAP for OpenShift Container
Platform ◦ https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_app lication_platform/7.2/html/getting_started_with_jboss_eap_for_openshift_con tainer_platform/
THANK YOU