マイクロサービス

Red Hat のマイクロサービスを選ぶ理由

アーキテクチャとして、そしてソフトウェア開発へのアプローチとしてのマイクロサービスの目標は、高品質のソフトウェアを迅速に提供することです。Red Hat は、モノリシックなアプリケーションをマイクロサービスへと分割することを支援するだけではありません。マイクロサービスの管理、オーケストレーション、マイクロサービスが作成および修正するデータの処理もサポートします。

Red Hat は、マイクロサービスの継続的な開発とデプロイメントをサポートするほかに、アジリティを脅かすモノリスを作り出すことなく、マイクロサービスの統合と管理も実現します。その結果実現するのが、コードのデプロイメントをエンドツーエンドでサポートし、デリバリーチーム間のコミュニケーションとコラボレーションを促進する、マイクロサービス・ソリューションです。既存システム全体をオーバーホールしなくても、有益なメリットを得られます。オープンソース、オープンスタンダード、そして長年の経験から、貴社に最適なソリューションを見つけ出します。


課題の見極め

この記事をお読みの皆様は、アジャイルの原則を使った迅速な開発サイクルに投資していることでしょう。マイクロサービスはこの原則に基づいて構築され、デプロイ時間を短縮します。アプリケーションを小規模な単位に分割して、少人数チームが独立したワークフロー、ガバナンス、デプロイ手法でビルドするため、従来のモノリシックなアプリケーションよりも、アプリケーションとアップデートを迅速に市場に投入できます。

マイクロサービス・アーキテクチャは、DevOps 手法、自動化、CI/CD (継続的インテグレーションおよびデリバリー)、および API 中心の設計を利用します。また、ビジネス機能を中心に編成され、より大規模な分散ガバナンスおよびデータ管理ソリューションの一部でもあります。Red Hat ではマイクロサービスが非常に優れていると考えていますが、使用には優れた管理ソリューションとオーケストレーション・ソリューションが必要です。

ただ流行しているというだけでマイクロサービスを導入しないでください。貴社に固有の明確で測定可能な目標を含む計画を立ててください。マイクロサービス・アーキテクチャを採用するときに突き当たる可能性がある課題をいくつか取り上げましたが、貴社のチームはどのようなチームで、何が必要かを最も良くご存じなのは、貴社自身です。貴社がこのプロセスのどの段階にあっても弊社がサポートしますので、ご安心ください。ご不明な点はお問い合わせください。Red Hat コンサルティングにご連絡ください。


Red Hat のサポート内容

すべてをまとめるために必要なツール

マイクロサービスに向けて段階的なステップを踏むことを述べました。コードに注目しているだけでは、マイクロサービスへのアプローチを構築することはできません。このアプローチには、クラウド機能の開発、アプリケーションのクラウドへのデプロイ、デリバリーパイプラインの自動化、デリバリーチームへのエンドツーエンドの完全な責任の付与、これらのチーム (およびそのコード) の小さな単位への分割が含まれます。マイクロサービス採用のどの段階にあっても、Red Hat では、テスト済みかつ効率的で、コミュニティによって推進されたソリューションをご用意しています。

Red Hat OpenShift Application Runtimes

増え続けるサーバーのプロビジョニングには時間がかかります。時間を割いて定期的に環境をアップデートして、増設したサーバーに新しいソフトウェアを設定するのは、ほとんどの開発者が嫌がる作業です。報われなく、面倒な作業です。Red Hat® OpenShift® Application Runtimes によってオーケストレーション・プロセスが効率化されるため、本当にやりたかった仕事に集中できます。

Red Hat OpenShift Application Runtimes はマイクロサービス向けの構成済みでコンテナ化されたランタイム基盤です。さまざまな言語およびフレームワークで機能し、マイクロサービス設計にとって高性能の基盤となります。さらにこのプラットフォームは、Red Hat JBoss Enterprise Application Platform (EAP)、Thorntail (Eclipse MicroProfile 上で実行)、Spring Boot/Cloud、Eclipse Vert.x、Node.js の、5 つのランタイムに対するネイティブサポートを備えています。

Red Hat OpenShift

Red Hat OpenShift は、ハイブリッドクラウドのエンタープライズ Kubernetes プラットフォームです。IT 開発チームと運用チームが協力してマイクロサービスベースのアプリケーションを提供して管理できるよう、設計されています。コンテナ化されたアプリケーション、レガシー・アプリケーション、クラウドネイティブのアプリケーションをサポートし、マイクロサービスにリファクタリングされたアプリケーションもサポートします。

OpenShift サービスカタログを使用すると、新規サービスのプロビジョニングが飛躍的に簡単になります。カタログでサービスを選択するだけで、一連のシンプルなダイアログを通じてセットアップと構成を進められます。カタログは、組織のプライベートサービス (または Amazon Web Services などのパブリッククラウドから) を簡単にプロビジョニングして、マイクロサービスベースのアプリケーションで使用できるように設計されています。運用チームは、サービスカタログの入力と管理を 1 つのビューで実行でき、開発チームはこれらのサービスを一連のシンプルなダイアログまたはコマンドを使って、自分で簡単に取り込めます。

OpenShift を Red Hat ミドルウェアと統合して、Git、Maven、Jenkins などの既存の自動化ツールと一緒に使用できます。エンタープライズ・グレード Linux オペレーティングシステムとも統合すると、クラスタ全体のセキュリティが向上します。レガシー・アプリケーションの最適化、クラウドへの移行、まったく新しいマイクロサービスベースのソリューションの構築のいずれであっても、Red Hat OpenShift は、これらのアプリケーションに対してセキュリティと安定性に優れたインフラストラクチャ上のプラットフォームになります。

Red Hat Fuse

Red Hat Fuse はクラウドネイティブな分散型インテグレーション・プラットフォームです。API 中心でコンテナベースの基盤で、マイクロサービスを個別に作成、接続、拡張、導入、拡張できます。Fuse があれば、パターンベースの統合フレームワーク (Apache Camel) を使用してマイクロサービスを開発または構成できます。Fuse の目的は、開発者がドラッグアンドドロップ・サービスなどのツールや組み込み統合パターンを使用してマイクロサービスを構築し、ビジネスユーザーが Web ベースのツールを使用して API を開発して別のマイクロサービスに統合できるようにすることです。

Fuse にはハイブリッド・デプロイメント・モデルがあり、オンプレミス、クラウド、またはホスト型 Platform-as-a-Service (iPaaS) で使用できます。コネクタのライブラリもあり、エンタープライズシステムにすぐに使える、200 を超えるコネクタもあります。さらに、Red Hat OpenShift Container Platform で実行できるよう最適化されています。

Red Hat 3scale API Management

マイクロサービスは何にでも対応しますが、モノリシックなアーキテクチャは再利用に適しています。モノリスからマイクロサービスに移行するとき、この点を考慮して再利用性を取り入れた、矛盾なく定義された API 戦略が必要です。このため、強力な API 管理がマイクロサービス・プラットフォームにとって重要なのです。

Red Hat® 3scale API Management は、API の管理、配布、共有、収益化を支援する、受賞歴のあるプラットフォームです。セルフマネージド・コンポーネントを使用して API のトラフィック管理を提供し、セキュリティおよびアクセスポリシー適用機能を強化します。このとき、サービス実行からポリシー管理が独自の方法で分離されるため、運用速度が低下することはありません。3scale は、ポリシー管理ツール (アクセス制御、レート制限、分析、請求と支払いなど) も提供し、すべてを 1 つのインタフェースから使用できます。

3scale は Fuse と統合できるため、Fuse で構築されたマイクロサービスと統合を 3scale のポリシーで使用できます。さらに、3scale ポリシー管理は OpenShift のコンテナとしても実行できるため、すべてのマイクロサービスで使用するものと同じスケーラビリティと管理機能を 3scale で使用できます。


Red Hat によるオープンなイノベーション

Red Hat® は、オープンソース・コミュニティに参加し、マイクロサービスに大きく貢献してきました。マイクロサービスが安定して安全に動作するよう、Red Hat のエンジニアが、機能、信頼性、およびセキュリティの向上を支援しています。

Red Hat はさらに、当社のすべてのマイクロサービス・テクノロジーのコードと改良をアップストリーム・コミュニティに還元し、その過程でも進歩を共有しています。コミュニティとのコラボレーションは、ただのコード開発にとどまりません。コラボレーションでは、自由に質問をしたり、改善策を提案したりすることができます。それこそがオープンソースのあるべき姿 (オープンソース・ウェイ) であり、オープンな組織の原動力となるものです。Red Hat が 20 年以上に渡って信頼されるエンタープライズ・インフラストラクチャ・プロバイダーであり続けている理由が、ここにあります。

その他のミドルウェア・ソリューション

An open source, lightweight messaging platform for real-time integration. Get information like pricing updates and order confirmations to your warehouses, storefronts, and headquarters reliably and in a way that scales.

An in-memory, distributed data grid solution for applications. Keep copies of your information across multiple servers using memory (RAM) for very fast response times with continuous availability, reliability, and scalability.

マイクロサービスについてさらに詳しく知る