ナビゲーターガイド:クラウドコンピューティングのためのソリューション

[。注意]##

Note:これは、DigitalOcean Solutions Engineersが提供するナビゲーターガイドブックの内容の初期リリースバージョンです。 この本の目標は、ビジネス顧客がインフラストラクチャのニーズを計画し、その過程で実例を提供し、技術的なニュアンスと、ある決定を他の決定より良くする「理由」を含めることです。

この本と付随するコードは、GitHubリポジトリで公開されます。 これは初期リリースであるため、本はまだ完成しておらず、リポジトリはまだ公開されていませんが、しばらくお待ちください!

出発する前に、インフラストラクチャの歴史に関する簡単なレッスンを共有したいと思います。 これにより、クラウドインフラストラクチャが満たすニーズと、それを最大限に活用してインフラストラクチャから最大限の価値、パフォーマンス、および安定性を引き出す方法に関するコンテキストを提供できます。

過去には、オンラインプレゼンスには3つの主要なインフラストラクチャオプションのいずれかが必要でした。

  • 共有ホスティング。これは主にWeb開発者と小規模なWebアプリケーションにのみ適していました。

  • データセンターまたはオンプレミスでホストできる、最も高価で柔軟性の低いオプションである専用サーバー。

  • 専用ハードウェアのリソースを共有するVPS(Virtual Private Server)として広く知られている仮想サーバー。 仮想化によるパフォーマンスの本質的な低下にもかかわらず、最新のサーバーハードウェアを備えたVPS全体は、大多数のユーザーの要件を超えています。

規模を拡大するには、高価なオンプレミスサーバーに依存している企業は、事前に追加のハードウェアを要求する必要があります。 いつでも、コンピューティングリソースが要件を超えるか不足する場合がありますが、一致することはありません。 また、仮想サーバーは共有サービスと専用サービスの両方のベストを提供しましたが、価格体系は依然として専用サーバーと同様でした。厳格な月次請求サイクルには、コミットメントと低い柔軟性が必要でした。

2000年代後半に、これらの市場の需要に応えて、仮想サーバー市場は拡大し、より大規模に運営され始め、それが「クラウドコンピューティング」のブランディングを生み出しました。 クラウドコンピューティングは、オンデマンドリソースを提供することでスケーラビリティの問題を解決しました。 短い時間間隔で請求するという概念により、オンデマンドリソースは非常に費用対効果が高くなりました。 1時間あたりの料金で請求され、開発とテストに必要な短時間だけ存在していた場合、開発クラスター全体をわずかなコストで展開できました。

クラウドコンピューティングは初期の段階ではあまり明確に定義されていませんでしたが、この概念は、データ冗長性が組み込まれた耐障害性のある常にオンラインのインフラストラクチャソリューションとして販売されていました。 デフォルトではそうではないかもしれませんが、ビルドすることは可能です。この本ではその方法を説明します。 一般的なクラウドインフラストラクチャの問題を防ぐソリューションを構築します。最終的に、インフラストラクチャはオンラインのままで、必要に応じて拡張し、安全でトラブルシューティングが容易になります。

単一のクラウドインスタンスは、単一障害点です。 推奨事項、計画、およびソリューションは、多くのインスタンスにアプリケーションを配布するのに役立ちます。

この概念を説明するために、使い慣れたユースケースを採用し、スケーリングとクラウドの方法論を適用しています。 WordPressは、共有ホスティングプロバイダーを使用してホストされることが多い、人気のあるCMSおよびブログプラットフォームです。 トラフィックが急増しているWordPressサイトでは、パフォーマンスを向上させるために専用サーバーまたはVPSに切り替える必要があります。 これらの導入的および反動的なアクションは、将来のスケーラビリティや冗長性のニーズに対応していません。 WordPress CMSソフトウェアを使用するWebサイトがあり、99.999%の稼働率を確保する必要があるとしましょう。 ウェブサイトがほぼオンラインであり、常に完璧に機能するというビジネスケースがあります。 この複雑な問題は、専用サーバーパラダイムでの作業と比較した場合、クラウドコンピューティングで簡単に解決できます。

この本では、個々のWordpressインストールの概念を取り上げ、ダウンタイムとデータ損失の懸念が適切に計画されていることを確認しながら、膨大な量のトラフィックとユーザーを処理するように拡張します。

当社のソリューション

この本は5つのパートに分かれています。 それぞれの詳細な概要を次に示します。 これらの概要の概念の一部を理解していなくても心配する必要はありません。 それがまさにこの本があなたに教えることです。

[[part-1 -—- introduction-and-setup]] ===パート1—はじめにとセットアップ

これはあなたが今読んでいるものです。 次の最後の章では、スターターインフラストラクチャを構築するために使用するツールと、それに合わせて環境をセットアップする方法について説明します。

[[part-2 -—-スケーリングとダウンタイムの防止]] ===パート2—ダウンタイムのスケーリングと防止

インフラストラクチャをオンラインに保つことができない場合、多くのことを行うのに苦労することになります。

このセクションでは、構成管理を導入して、インフラストラクチャのすべてのリソースを標準化し、迅速に展開できるようにします。 そこから、負荷分散と高可用性を導入して、ダウンタイムを引き起こす問題の大部分を排除します。 スケーラブルなソリューションを導入したら、継続的な開発管理を追加して、インフラストラクチャを反復および更新できるようにします。

[[part-3 -—- keeping-your-data-safe]] ===パート3—データを安全に保つ

あなたのデータはあなたの会社が持っている最も重要な資産の一つです。 データ損失はオプションではありません。

ここでは、特定のユースケースに最適なストレージソリューションを紹介します。 基本的なバックアップの概念を超えて、認識すべきデータ損失の落とし穴を概説し、影響の大きい停止を計画します。 目標は、停止を削減し、常にデータ回復のための複数のソースを持つ計画を立てることです。

[[part-4 -—-インフラストラクチャについてすべてを知る]] ===パート4—インフラストラクチャについてすべてを知る

この時点で、インフラストラクチャは拡張され、データが失われることはありませんが、予測できなかった、または予測できなかった問題は常に存在します。

インフラストラクチャがどれほどうまく設計されていても、問題を効果的にトラブルシューティングおよび診断できる必要があります。 このセクションでは、ボトルネックとエラーの特定、パフォーマンスの定義、およびテストについて説明します。

[[part-5 -—-インフラストラクチャの保護]] ===パート5—インフラストラクチャの保護

ダウンタイムは混乱を招く可能性があるため、セキュリティ関連の問題が発生すると、単純なスケーリングの問題が発生する可能性があります。

この本全体は、壊滅的な問題を防ぐためにとることができる事前対策について書かれています。 この最後の部分では、セキュリティを最優先に保ち、インフラストラクチャを主流のセキュリティの脅威から保護するためのベストプラクティスを確認します。