第9章 クラウドでJavaを展開する クラウドでJavaをデプロイする
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
第8章では、クラウドスタックの基礎的な側面 。この章では、このトピックをさらに進め、Javaプロセスをクラウドネイティブプラットフォームにデプロイする実践的な側面を見ていく。
まずはローカルでコンテナを使って作業し、デプロイ時にコンテナがどのように相互作用するのか、その基本を理解するところから始める。 相互作用やデプロイ方法の詳細から、コンテナ・オーケストレーションの仕組みや注意すべき点について見ていく。
クラウド・ネイティブ・プラットフォームの非常に有用な側面の1つは、エフェメラルなコンピュートへのアクセスとスケール能力であるが、これを有用なものにするには座標が必要である。 これらの基本を押さえた上で、リリースとデプロイプメント・パターンのオプションについて学ぶ。 デプロイプメント・テクニックは、JVMベースのプロセスに変更を迅速に展開する際に非常に有用であり、同時にバグのリスクを軽減する。
開発者であれば、デプロイが本当に考慮すべき重要な点なのか疑問に思うかもしれない。 歴史的には、ソフトウェアを構築し、運用チームにそれを渡して実行していたかもしれない。 しかし、クラウドネイティブ開発における大きな変化の1つは、運用と開発の行が曖昧になったことである。それゆえ、 "DevOps "という言葉が生まれた。
例えば、本番システムと非本番システムで一貫した環境を構築する方がはるかに簡単である。その結果、多くのチームが、サービスの構築とサポートのバランスを発見し、 「構築と演算子」チームとして運用することを選択している。単一チームとして構築と演算子を行うことで、効率(or「ベロシティ」)が向上する。 効率性の向上は、開発から運用への引き継ぎにおけるミスコミュニケーションやフラストレーション、エラーの減少によってもたらされる。 ビルド&ラン・チームは、深い専門知識とスタック全体に対する責任感を育む。 ビルド&ラン・チームで働くことで、仕事への満足度が向上し、熱心なチームになる。
まず、コンテナをローカルで扱う方法から見ていこう。
コンテナを使ってローカルで作業する
イメージとコンテナ」では、イメージとコンテナの基礎について入門書を取り上げた。 コンテナ の利点の1つは、デプロイ時にローカルマシンにより代表的な環境を作成できることだ。コンテナは、開発者のマシンのオペレーティングシステムとランタイムマシンとの違いを調整するのに関連していた手間をすべて省いてくれる。
以下のコマンドを実行すると、Fighting Animalsデモからmammal_demo 。しかし、curl ステートメント を実行しても、依存関係、つまり他のサービスが利用できないため、実際には動作しない:
git clone https://github.com/kittylyst/fighting-animals.git . git checkout main mvn clean package docker build -t mammal_demo -f src/main/docker/mammal/Dockerfile . docker run -p 8081:8081 -t mammal_demo curl localhost:8081/getAnimal {"timestamp":"2024-04-29T17:18:00.170+00:00","status":500, ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access