クラウド コンピューティングを定義する特性、またはクラウド コンピューティングを従来のデータ センターと区別する特性が 1 つあるとすれば、それは自動化です。 クラウド コンピューティングは、企業の最新のアプリケーション開発プロセスに多くの利点をもたらします。最も重要な利点の 1 つは、従来は手動で処理する必要があった重要な操作を自動化できることです。 自動化は、おそらくクラウド コンピューティングを使用する上で最も重要な利点です。クラウド アーキテクトは、可能な場合は自動化を活用することで、その役割で成功します。 クラウド アーキテクトの仕事に不可欠な一般的なクラウド自動化テクニックにはどのようなものがありますか?ここでは、クラウド ホスト型アプリケーションを設計、構築、展開する際に、すべてのクラウド アーキテクトが自動化に努めるべき 5 つのアクションを紹介します。 (1)延長自動拡張はクラウドコンピューティングを利用する上で最も基本的かつ必要な手段です。スケーリングは、サーバー リソースの自動スケーリングの場合でも、Amazon S3 や DynamoDB などのネイティブ クラウド サービスに組み込まれた柔軟なスケーリングの場合でも、クラウド コンピューティングの重要な部分です。スケーラブルなインフラストラクチャを構築することは、そもそも人々がクラウド コンピューティングに移行する主な理由の 1 つです。 しかし、この自動化のスケーラビリティには、新しいサーバー インスタンスを迅速かつ簡単に起動できることが必要であり、それが次の自動化につながります。 (2)サーバー構成クラウド コンピューティングが登場する前は、データ センターに新しいサーバーをプロビジョニングするには、数日または数週間かかることもありました。クラウド コンピューティングの自動化により、必要なすべてのソフトウェアとサービスがインストールされ、実行された、完全に機能する運用可能なサーバー インスタンスを数分でプロビジョニングできます。自動サーバープロビジョニングは、自動スケーリングだけでなく、クラウド自動化の別の形式である自己修復インフラストラクチャにとっても重要です。障害が発生したり侵害されたりしたサーバー インスタンスを終了し、自動化によって新しいインスタンスに置き換えると、クラウドでの問題解決の方法が変わります。この機能は、多くの種類の問題やバグに対する平均解決時間 (MTTR) を改善するために重要です。 サーバープロビジョニングの自動化は、Amazon EC2 などのコンピューティング サービスで新しい仮想マシン インスタンスを起動する場合でも、Google Kubernetes Engine などの Kubernetes 環境で新しいコンテナ インスタンスを起動する場合でも、同じように機能します。どちらの場合でも、自動化により、ほとんどのクラウド対応アプリケーションの基盤となるサーバー インスタンスの起動、スケーリング、修復の速度と信頼性が向上します。 サーバー構成を自動化するもう 1 つの利点は、可用性の向上です。自動プロビジョニングとは、少数の大規模サーバーを多数の小規模サーバーに簡単に置き換えることができることを意味します。このようなモデルにより、アプリケーションの可用性が大幅に向上し、障害の影響を軽減できます。 ただし、自動サーバー構成は、サーバーの運用に必要なその他のインフラストラクチャも迅速かつ簡単にセットアップできる場合にのみ機能します。 (3)インフラ整備サーバーを自動的にプロビジョニングするだけでは、クラウド コンピューティング アプリケーションを起動して実行し、ユーザーにサービスを提供するには不十分です。企業は、ロード バランサ、ファイアウォール、ネットワーク セグメント、データベース、およびキューやキャッシュなど、アプリケーションが依存するその他のサービスも提供する必要があります。アプリケーションが完全に機能する前に、すべてのサポート インフラストラクチャをセットアップし、構成し、アプリケーションに接続する必要があります。 このすべての構成を手動で行うと、非常に時間がかかります。オンプレミスのデータ センターに展開する場合、必要なすべてのコンポーネントをセットアップするのに数日以上かかることがあります。ただし、クラウド コンピューティング アプリケーションでは、インフラストラクチャ アズ コード (IaC) と呼ばれる自動化テクノロジにより、API 呼び出しを使用してアプリケーション インフラストラクチャをプロビジョニングできます。 IaC を使用すると、ユーザーはソース コード (通常は Git などの従来のソフトウェア バージョン管理システムを使用して管理できる JSON または YAML ファイル) でインフラストラクチャを設定する方法を指定できます。エンコードされたインフラストラクチャ構成は、インフラストラクチャ コンポーネントを自動的にプロビジョニング、構成し、稼働中のネットワークに接続するツールに渡されます。 このレベルのクラウド インフラストラクチャの自動化を実行できるツールは多数あります。 Infrastructure as Code は、変更管理と承認、変更追跡、インフラストラクチャ コードの再利用など、インフラストラクチャ プロビジョニング プロセスに独自の利点をもたらします。 Infrastructure as Code は、インフラストラクチャ API によってインフラストラクチャの自動作成が可能なクラウドまたはクラウドのようなデータ センターでのみ利用できます。 クラウド アーキテクトは、IaC ツールを活用して、インフラストラクチャのプロビジョニングのための信頼性が高く、安全で、繰り返し可能なクラウド モデルを作成する必要があります。その利点はいくら強調してもし過ぎることはありません。 (4)コードの展開コード展開パイプラインの自動化は、クラウド コンピューティングに特有のものではありません。ただし、他の種類の自動化が頻繁に使用されていることを考えると、自動化されたコード展開はクラウド対応アプリケーションの自然な拡張であり、クラウド アーキテクトによって大きく依存されています。 コード展開を自動化する最も一般的なアプローチの 1 つは、継続的インテグレーション (CI)/継続的デリバリー (CD) パイプラインです。これは、Git などのソフトウェア バージョン管理システムにチェックインされているコードに基づいて、運用アプリケーションへの自動コード展開を可能にするモデルです。アプリケーションと企業のポリシーに応じて、自動デプロイメントはスケジュール設定(たとえば、毎日または毎時間)されるか、コード リポジトリに変更が加えられてデプロイメントが可能になったときにトリガーされます。 自動コード展開をサポートするツールは数多くあります。これらのツールには、Jenkins、Bamboo、GitLab、CircleCI、AWS Code Deploy が含まれます。それぞれ動作が異なり、クラウド アーキテクトは開発組織とビジネスのニーズを満たす適切な自動化戦略を選択する必要があります。ただし、ほぼすべての複雑なクラウド コンピューティング アーキテクチャ アプリケーションでは、何らかの形式の自動コード展開が使用されています。 (5)クラウドネイティブサービス自動化の形式として見落とされがちなのが、多くのクラウド サービスに組み込まれている自動動的スケーリングです。クラウド キューイング サービス (Amazon Simple Queue Service など)、クラウド データ ストア (Amazon S3 など)、クラウド データベース (Amazon DynamoDB など) は、それらを活用する動的アプリケーションのスケーリングのニーズを管理するために、自動化に大きく依存しています。 クラウド アーキテクトは、S3 のようなデータ ストアがシンプルで安全、信頼性が高く、統合が容易で、自動的に機能するため、コンピューティング インスタンス上のローカル ドライブ ストレージなどから独自のデータ ストアを作成するよりも、S3 のようなデータ ストアを使用することを好むことがよくあります。パブリック クラウドによって提供される他の多くのサービスについても同様です。これらを使用することで、バックグラウンドで実行される強力な自動化を活用できます。 クラウドコンピューティングとは自動化を意味する自動化はクラウド コンピューティングを定義する特性の 1 つであり、クラウド コンピューティングと従来のデータ センターの違いの 1 つです。もちろん、ユーザーは自動化を利用せずにクラウドでアプリケーションを実行することもできますし、実際にそうしているユーザーも多くいますが、そうすることでメリットを逃していることになります。自動化は、一貫性、信頼性、セキュリティ、スケーラビリティ、ビジネス ニーズへの応答性を向上させる方法だからです。 オンプレミスのアプリケーションを「そのまま」クラウドに移行するのは、比較的シンプルで簡単な移行であり、通常は訓練を受けたクラウド アーキテクトが実装する必要はありません。しかし、そのようなアプリケーションでは、クラウド上で実行することによる利点のほとんどを享受できません。真にクラウド対応のアプリケーションを構築するにはクラウド アーキテクトが必要ですが、クラウドが提供するすべての機能を活用できます。事実上、クラウド アーキテクチャのアプリケーションは自動化を多用します。 優れたクラウド アーキテクトは、すべてのクラウド ベースのアプリケーションで自動化の使用を可能にし、拡張し、サポートし、奨励します。簡単に言えば、優れたクラウド アーキテクトは可能な限り自動化します。彼らはクラウドで利用できる自動化機能を活用しており、それらの自動化をユニークで興味深い方法で使用しています。これは、最も成功するアプリケーション展開に不可欠な要素です。 |
<<: Amazon Web Services の Chen Xiaojian: 未来志向のクラウドネイティブ データ インフラストラクチャの 4 つの要素
>>: Kubernetes を採用しますか?避けるべき落とし穴をいくつか紹介します
クラウド MSP のトレンドが台頭する中、エンタープライズ市場の大手メーカーである Lenovo も...
2013 年は、Baidu、360 Search、Sogou、Google などの市場シェアの高い検...
Docker入門Docker は、コンテナ内でアプリケーションを構築、デプロイ、実行するためのオープ...
2018年6月6日、終値が30営業日連続で1ドルを下回っていたMissFreshは、ナスダックから上...
Racknerd の毎年恒例のバレンタインデー イベントが早くも始まり、特に安価な VPS 2 つが...
Appleの共同創業者スティーブ・ウォズニアック氏(写真提供:テンセントテクノロジー)テンセントテク...
現在、ほとんどの個人ウェブサイトは依然として利益のために広告に依存していますが、ほんの数日前、Goo...
この記事の内容: 格安香港VPSサーバーのおすすめ!香港の物価が高いことは誰もが知っています。香港の...
1. ソーシャル写真共有:スタートアップ: Instagram、Pictu、Pinterest、Si...
新浪科技報12月30日午後のニュースによると、国家著作権局は2013年「剣ネット行動」オンライン著作...
UK2 グループの 100TB もクラウド VPS の提供を開始しました。もちろん、vps.net ...
検索エンジンは、Web2.0 サイト上のスパムの除去に着手しました。最近、Baidu Webmast...
ウェブサイトを構築する際には、特定の分野に突っ込んだり、競合調査を省略したり、ターゲットキーワードを...
今年 3 月に設立された Upworthy は、世界で最も急速に成長しているメディア企業です。従業員...
5月29日、北京時間早朝、Googleは米国サンフランシスコで年次開発者会議を開催した。会議で、Go...