Alibaba Cloud ACK Oneで始めるハイブリッドクラウド・マルチクラウド【前編】

2022年11月18日掲載

キービジュアル

Alibaba Cloud ACK Oneを使って、ハイブリッドクラウド・マルチクラウドを実現してみました。本記事はその前編記事になります。

目次

  • ハイブリッドクラウド・マルチクラウド構築にとても便利なAlibaba Cloud ACK Oneを紹介します。本記事は前編です
  • どのプラットフォームでも連携し、複数の異なる環境を統一で操作・運用・監視・管理することができます
  • 異なる環境間でもリソースバランスを司りつつ自動スケーリングや、障害時は自動フェイルオーバー、自動バックアップ、コストの可視化ができる
  • ACK Oneは、現在ベータ版のため無料で利用できます
  • この記事を読むことで、ハイブリッドクラウド・マルチクラウドを実現するための手段を得ることができます

はじめに

現在、日本市場ではAmazon Web Service、Microsoft Azure、Google Cloud、IBM Cloud、Oracle Cloud Infrastructure、Alibaba Cloudなど、インフラ基盤のクラウドベンダーが激戦区となっています。加えて、日本国内の30%近くはまだオンプレミスです。

ここに、いくつかの『もしもの話』があります。

  • もし、複数の異なるクラウドを一元管理出来たら?
  • もし、オンプレミスとのハイブリッドクラウド(共通基盤)が実現できたら?

全て夢物語のように聞こえますが、実はこれを実現するプロダクトサービスがいくつか実在しています。例えば、Google CloudのAnthos、RedHad のOpenShift、など、、そしてAlibaba Cloudからこれを実現するACK Oneプロダクトサービスが新たに登場したので、今回はこれを紹介します。

なお、ここでいうハイブリッド・マルチクラウドの定義は、“複数の Public Cloud やオンプレミスと組み合わせて、一元化したサービス基盤(共通基盤)として運用すること” を指します。

本記事はAlibaba Cloud ACK Oneで始めるハイブリッドクラウド・マルチクラウド記事の前編になります。後編記事もあわせてご覧下さい。

1. ハイブリッド・マルチクラウド登場の背景

そもそも、なぜハイブリッドクラウド・マルチクラウドの考えが出たのか、これらはいくつかの所説がありますので、ここは著者なりの解釈をしてみます。

所説1 開発経緯

  • 初期チームはAWSの知識Onlyで、AWS以外の選択肢があまりなかった。
  • クラウドでの展開にリスクや懸念を考慮してまだオンプレミスでいたかった。

所説2 要件・ケイパビリティ

  • Web三層構成は安価なAlibabaCloud、IoTはバリューが豊富なAzure、データ分析はGoogle Cloud BigQueryにしたい。
  • 現状オンプレミスでモノリシックサービスによるWeb三層構成なので、クラウドへのマイグレーションが難しい。

所説3 高可用性

  • メインクラウドが落ちた場合でも、他クラウドへ切り替えるアプローチが必要。
  • オンプレミスのデータセンターが災害時でもBCP要件(事業継続計画)を満たしたい。

所説4 マイクロサービス

  • 既存アーキテクチャ、例えばWeb三層アーキテクチャが1つのモノリシックサービスだったため、事業スピードに応じて開発スピードが追いつかなくなくなったため開発単位を分離しながらマイクロサービス連携が必要になった。
  • Istioによる柔軟なデプロイができるため、kubernetesによる展開から複数のプラットフォームのkubernetesを選択するようになった。

所説5 契約上の制約

  • 会社がGoogle Workspaceを契約しているため、当時Google Cloud以外の選択肢が認められなかった。
  • 中国との摩擦問題やリスクから、当時は中華系クラウドサービスが利用できなかった。

所説6 時代の変化

  • 2010年代後半まではハイブリッドクラウド・マルチクラウドを実現するためにはネットワークを繋げるだけで、共通基盤という技術要素がまだなかった。
  • AWSクラウドサービスから外部へデータを流すアウトバインドの課金が当時はまだ高額だった。

所説はさまざまですが、今のところ、クラウド・オンプレミス上のさまざまな課題を解決するために、ハイブリッド・マルチクラウドという選択肢が出来たこともまた事実です。

2. ハイブリッド・マルチクラウドアプローチ

ハイブリッドクラウド・マルチクラウドアプローチとして、さまざまなアプローチがあり、著者が把握する限り、大きく2種類に分けられています。

①ネットワークベースのハイブリッド・マルチクラウド

ソフトバンクが提供するソリューションの一環に、SD-WANというネットワークサービスがあり、これを使ってハイブリッドクラウド・マルチクラウドを実現することができます。

また、OnePortという、オンプレミスやデータセンターとパブリッククラウドをシームレスに接続するネットワークサービスもあります。

このようなSD-WANやOnePortなどによるネットワークサービスによる異種クラウドやクラウドとオンプレミス接続アプローチがあります。これは基本的にそれぞれのインフラストラクチャやシステムが各環境上で完結した状態で接続・配置するアプローチになります。

②システム基盤ベースのハイブリッド・マルチクラウド要件

上記、ネットワークプロダクトサービスを使ってそれぞれのインフラストラクチャやシステムを連結するパターンを紹介していますが、このパターンであれば、それぞれの環境上における各種作業を伴うため、運用保守や学習コストが生じてしまいます。統一された操作環境ではないため、構成や設定の自動化もできず、あまり生産的ではないです。このような異なる環境上でも、同じ構成や条件でアプリケーションをデプロイ・実行する方法があります。その方法がコンテナ・Kubernetesによるアプローチです。

Kubernetesであれば、異なるクラウドやオンプレミスでも、共通の手順で操作することができるため、クラウド・オンプレミス間の環境差分を吸収して、開発や運用の複雑化を抑制することが出来ます。

では、そのKubernetesの基盤となるインフラストラクチャが複数環境あり、それを連結しKubernetesを一貫サポートしながらフルマネージド運用するためにはどのような方法があるのでしょうか。その回答としてコンテナ管理プラットフォームで複数環境をサポートする方法があります。例えば、Google CloudならAnthos、Redhad OpenShift、OSSならRancher、Alibaba CloudならACK Oneなどです。今回はそのACK Oneを紹介します。

3. Alibaba Cloud ACK Oneプロダクトサービス概要

ACK Oneはフルマネージド型KubernetesのACKをベースとしながら、ハイブリッド・マルチクラウド 環境を提供し、一貫したアプリケーション環境や境界のないコンピューティング環境を実現する分散クラウドコンテナプラットフォームです。

ACK Oneは他のクラウド・オンプレミスでもKubernetesがあれば、ACK Oneに対象の Kubernetes クラスタを登録するだけで、他のクラウド・オンプレミスでもAlibaba Cloudのフルマネージド型Kubernetesサービス ACK(Alibaba Cloud Container Service for Kubernetes)をベースとしながら操作をすることができます。

Alibaba Cloud ACK Oneプロダクトサービスは次の機能を備えています。

一貫した管理 

ACK Oneでは、クラウド、エッジ、データセンターに展開されたKubernetesクラスタを一元的に管理することができます。これにより、Alibaba Cloud標準のベストプラクティスに基づき、異なる環境でクラウドネイティブアプリケーションを管理する際、一貫したユーザエクスペリエンスを実現します。セキュリティ対策やコスト削減計画も一元的に実施できます。

自律で自動スケジューリング 

ACK Oneでは、複数環境のシナリオにおいて、異なるテナントに対するジョブやジョブクォータのスケジューリングと分配を一元的に管理できます。これにより、リソースの利用率が向上し、異なる地域の異種データソース間でのデータ交換が可能になり、AIコンピューティングやビッグデータコンピューティングが加速されます。

データのバックアップとディザスターリカバリー 

ACK Oneでは、データのバックアップ、リストア、移行を行うことができます。これにより、地域をまたいだクラスタの冗長化が可能となり、アクティブ・アクティブ・アプリケーション・アーキテクチャに基づくサービス継続性が確保されます。

セキュリティとコンプライアンス 

ACK Oneは、ハイブリッドクラウドやマルチクラスターシナリオのアプリケーションに対してセキュリティポリシーを提供します。ACK Oneは、設定リスクやセキュリティの脆弱性を検出するための検査を実施します。

アプリケーション配信 

ACK Oneは、地域やクラスタにまたがってアプリケーションを展開できる分散型アプリケーション配信システムを提供します。これにより、全地域で最も近いアクセスポイントからアプリケーションにアクセスすることができます。

トラフィック管理

ACK Oneでは、マルチクラスタおよびマルチリージョンシナリオにおいて、Alibaba Cloud標準のベストプラクティスに基づき、南北および東西のトラフィックを管理することが可能です。また、ACK Oneは、マイクロサービスへのトラフィックを管理するASM(Managed Service Mesh)モジュールも提供します。この機能は、Istioと互換性があります。

マーケットプレイス 

この機能は、ACK Oneによって検証されたAlibaba Cloudサービスおよびクラウドネイティブコンポーネントを提供します。数回のクリックで、サービスやコンポーネントをリージョンやクラスターに導入できます。



ACK Oneは、現状下記四つのリージョンで利用することができます(2022年10月28日時点)

中国(香港)、シンガポール、インドネシア(ジャカルタ)、日本(東京リージョン)

4. ACK Oneプロダクトサービスの機能について

4-1. マルチクラスタ管理機能

ACK Oneはマルチクラスタ管理機能によって複数のMaster Instanceをサポートできるため、AWSやGCP、オンプレミス、他のAlibabaCloudアカウントなど複数の異なる環境にデプロイされたKubernetesクラスタをACK Oneで集約管理することが可能です。

  • ACK Oneに付帯されてるマルチクラスタ管理機能により、複数のMaster Instanceをサポートできます。
  • マルチクラスタ管理機能を使うことで、複数のクラスターのテナントにクォータを設定することや、アプリケーションを複数のクラスターへ同時デプロイすることができます。
  • AMC(Alibaba Cloud Distributed Cloud Container Platform、kubectl のプラグイン)というコマンドラインツールで複数の異なる環境を統一管理、操作をします。

4-2. Observability

ACK  Oneに外部の Kubernetes クラスタを登録するだけで、Alibaba Cloud LogServiceおよびARMS、Prometeus、CloudMonitorなどで外部 Kubernetes クラスタのObservability運用を行うことが出来ます。負荷監視やイベント通知等、有事の際は迅速に「なぜそれが起きたのか」原因の深堀やNext Actionに結びつけるといった取り組みができます。

4-3. クラスタコスト管理

ACK OneはARMS Prometheus経由で外部 Kubernetes クラスタを含め全てのクラスタのコスト監視や管理、リソースがかかっている箇所などをリアルタイム可視化することが出来ます。

Cluster cost analysis

総じて、ACK Oneはハイブリッドクラウド・マルチクラウド接続が出来た「その先」を見据えて、ワークロードを全て統一管理・操作・運用したり、負荷監視やコストの見える化を実現することが出来ます。

関連記事リンク

ここでよくある質問なのが、「ハイブリッドクラウド・マルチクラウドはネットワーク接続のみ」でいいのでは?という疑問です。これらについて回答します。

上記説明していますが、異なる環境間をネットワーク連結・転送だけでは解決できないさまざまな課題があります。例えば、異なる環境間をネットワーク連結・転送したのち、それぞれの異なる環境をそれぞれ操作・監視したりスケーリング調整やコスト管理するのは苦労しますよね?それを現実的に解決するために、ACK Oneを使うという選択肢があります。

  • 異なる複数の環境それぞれを操作しなければならない
      =ネットワーク接続だけでは解決できない学習コスト・運用保守コストが発生
  • 作業方法が異なるため、IaCや自動化を組むのに苦労しやすい
  • データのトランザクション処理や整合性処理に気を配る必要がある(物理データ転送に伴うハングアップ、AESやSSL等暗号化対応、etc)
  • 構成情報、セキュリティやポリシー情報、監視、料金などは別々の環境元でチェックしなければならない
  • Alibaba Cloud ACK(フルマネージド型Kubernetes)をベースとしながら、異なる複数の環境を一元管理・操作
  • オートスケールやフェイルオーバー、自動バックアップもサポート
  • 操作方法はACKベース1つなので、IaCや自動化がしやすい
      =ACK One経由でAWS EKS上のアプリケーションへ自動デプロイも可能
  • 一元化されたアプリケーション配信やディザスタリカバリができるため、複数の異なる環境間でデータを安全に継承・連携
  • 異なる環境間でもACK One上のControl planeにHostされるため、運用保守コストは不要
    ※オブザーバビリティ機能があり、たった1つのインターフェースでO&Mが可能

ACK Oneによって、異なる環境を統一で操作・運用・監視・管理したり、自動スケーリングや自動フェイルオーバー、自動バックアップ、コストの可視化ができるのは非常に大きいですね。

5. ACK Oneによって解決できること

ACK Oneによって解決できることは多種多様とあります。ここでは1つのケースを説明します。

例えば、今使っているサービスがオンプレミスで、1つの巨大なモノリシックサービスだった場合とします。このサービスだと、「スケーリングが困難」「事業に応じて開発スピードが遅くなってしまう」「機械学習など新しい取り組みをしたくても、サービス分離が困難なことやサンクコストが発生してしまう」「分析基盤を構築したいが、余裕がない」などの問題があると思います。

この課題に対し、ACK OneおよびACKがあれば、これらの問題を解決することができます。

流れとして、次のStep-by-stepで進めます。

Step1:オンプレミス環境にて、コンテナ基盤として Kubernetes を導入します。既存サービス基盤はDockerfileによるコンテナイメージ化し、deployment.yaml ファイルを用意しながら、Kubernetes クラスタへスライドします。Kubernetes はOSSであり、無料です。

Step2:Alibaba Cloudアカウントを準備し、Alibaba Cloudのフルマネージド型KubernetesのACK、およびACK Oneを用意します。

Step3:事前にVPN Gateway、もしくはCloud Enterprise Networkを使って、オンプレミスとAlibaba Cloudリソースが接続できるようになったら、オンプレミスの Kubernetes クラスタをACK Oneへ登録します。これにより、Alibaba Cloud側でオンプレミスの Kubernetes クラスタを管理することができるようになります。

Step4:ACK Oneで Alibaba CloudのACKとオンプレミスのKubernetesクラスタをAMCというAlibabaが開発したkubectlコマンドラインツールで相互管理・運用することができるようになったので、この利点を次の通りに活かすことができます。

  • Webサーバ層はACK Oneの機能により、ユーザのワークロードに応じて相互のKubernetesクラスタのPodやスペック等を自動スケーリングしてくれるため、ワークロード増減に伴う設備増強等コストを抑制してくれます。
  • APPサーバ層で機械学習による新しい取り組みも、Kubernetesをベースにサービス分離しながら、機械学習による処理はAibaba CloudのサーバレスGPU(Function Compute、もしくはElastic Container Instance)で推論等処理により開発スピード向上が見込まれます。 
  • データベース層でKubernetes上にデプロイできるTiDBを導入、配置することで、ワークロードに応じてオートスケーリングや、冗長構成を満たすことができます。同時に、TiDBはトランザクション処理のデータベース(OLTP)だけでなく、データ分析用のデータベース(OLAP)も兼ねているため、TiDBをベースにデータ分析アプローチを行うこともできます。
  • オンプレミスおよびAlibaba Cloud上のKubernetesクラスタの負荷監視やコストはAlibaba Cloud ARMSおよびLogServiceで一元可視化することができます。

オンプレミス側のHWら物理リソースが不足している状況でも、Kubernetesクラスタを簡単に追加し、Alibaba cloudのサービスと統合しながら自動スケーリングしたり、データ分析や機械学習、新機能実装など開発スピードを落とさずに新しい取り組みできるのは非常に大きいですね。そのまま、IstioによるBlue/Greenルーティング制御によるデプロイ構成を付け加えたり、HTTP Headerによるルーティング、API GatewayをKongにしながら認証設定をしたりすることも出来ますし、総じてACK Oneによって開発・運用工数を抑えつつ、既存構成からの脱却・進化を図ることができます。

その他、ACK Oneによって解決できるケースでその他の説明は【後編】にて紹介しています。こちらも良かったら参考にしてみてください。

6.さいごに

Alibaba Cloud ACK OneはKubernetesであれば、どのプラットフォームでも連携し、複数の異なる環境を統一で操作・運用・監視・管理することができます。そのうえ、異なる環境間でもリソースバランスを司りつつ自動スケーリングや、障害時は自動フェイルオーバー、自動バックアップ、コストの可視化ができるため、さまざまな新しい選択肢が生じます。現在ベータ版として無料利用することができるため、気になる方はお試しいただければ幸いです、コンソールを数回クリックするだけですぐにハイブリッドクラウド・マルチクラウドを実現することができます。

Special Thanks Bob.

関連サービス

Alibaba Cloud

Alibaba Cloudは中国国内でのクラウド利用はもちろん、日本-中国間のネットワークの不安定さの解消、中国サイバーセキュリティ法への対策など、中国進出に際する課題を解消できるパブリッククラウドサービスです。

MSPサービス

MSP(Managed Service Provider)サービスは、お客さまのパブリッククラウドの導入から運用までをトータルでご提供するマネージドサービスです。

おすすめの記事

条件に該当するページがございません