目次:
- ローカルにサービスをホストする
- サービスをローカルにホストするときは、ベンダー提供の要件を最小限にすることが大切です。サービスを頻繁にロードする予定がない場合は、通常、これらの最小値が機能します。ただし、「最適化ゲートウェイのパフォーマンス」リンクをクリックすると、最初に表示される提案はゲートウェイにリソースを追加することです。あまりにも多くの容量を計画するだけでは不十分である場合よりも優れていますが、必要なものに可能な限り近い形で設定することは、常に経済的に役立ちます。
- AWSが使用する言語をサポートしていることを確認します。
ビデオ: 最新技術を活用したシステム構築のデジタル・リインベンション 2024
AWSが提供するサービスの数にかかわらず、サービスを使用するにはまだまだハードウェアが必要です。クラウド内のサービスで作業する場合に必要なハードウェアの量は、AWSハードウェアが大変に重くなるため、最小限に抑えられます。ローカルでサービスを扱う場合、AWSはもはや重役を務めていないため、追加のハードウェアが必要です。したがって、AWSサービスをホストする場所によって異なるハードウェア要件を考慮する必要があります。
<! - 1 - >ローカルにサービスをホストする
AWSのドキュメントには、さまざまなサービスに関するあらゆる有用な情報が隠されています。たとえば、AWS Storage Gatewayは、オンプレミス ソフトウェアアプライアンス (ハードウェアまたは仮想マシン上で動作するだけの十分なオペレーティングシステム機能を備えたアプリケーション)とクラウドベースのストレージを接続します。
つまり、ゲートウェイを使用して、必要なデータストレージにアプリケーションを接続します。クラウド内でゲートウェイを稼働させることは、追加のハードウェアに投資する必要がないため、良いアイデアのように見えるかもしれません。ただし、要件を見ると、AWS Storage Gatewayに特定のハードウェア、インスタンス、およびストレージの要件があることがわかります。理解しておくべき重要なことは、クラウドには計画段階で考慮する必要がある限界があることです。
<! - 2 - > クラウドベースのサービスを使用するには制限があります。あなたが意図した設定を実行できることを確かめたら、クラウドでの作業の長所と短所を検討することができます。たとえば、クラウドでサービスをホストする場合、必要に応じて自動スケーリングが行われ、Amazonは管理タスクの多くを実行します。ただし、現実的な観点からは、以下のような欠点を認識してこれらの利点を相殺する必要があります。
<! 信頼性の低いインターネット接続を維持する必要がある- 柔軟性の損失
- ビジネスが終了するベンダー
- 基本的なハードウェアの必要性は低くなりますが、冗長化の形で追加費用を考慮する必要があります。ほとんどの組織では、クラウドに移行するためのハードウェアコストは、完全なIT部門を維持するよりも実質的に少なくなっています。しかし、あなたがするときに考慮すべき他の事項があることを理解した上で、行動を起こさなければなりません。
- クラウドでのサービスのホスティング
サービスをローカルにホスティングする場合、必要なインフラストラクチャをすべて提供する必要があり、高価になる可能性があります。AWSは、サービスをローカルにホストするための最小要件についてのガイダンスを提供します。
サービスをローカルにホストするときは、ベンダー提供の要件を最小限にすることが大切です。サービスを頻繁にロードする予定がない場合は、通常、これらの最小値が機能します。ただし、「最適化ゲートウェイのパフォーマンス」リンクをクリックすると、最初に表示される提案はゲートウェイにリソースを追加することです。あまりにも多くの容量を計画するだけでは不十分である場合よりも優れていますが、必要なものに可能な限り近い形で設定することは、常に経済的に役立ちます。
十分なリソースを事前に計画します。
すべてのサービスがローカルで動作するわけではありませんが、多くのことが見つかると驚くかもしれません。この問題は、特定のサービスをどのように使用する予定か、あなたが望むトレードオフを正確に定義することの1つです。たとえば、サービスをローカルにホストする場合、クラウドで同じサービスをホスティングするときにサードパーティに提供できる接続レベルと同じレベルの接続性を提供することは難しいかもしれません。
良い開発環境の定義AWSに必要なリソースを把握し、セットアップの基本を説明したら、開発環境を検討する必要があります。最初に考慮する必要があるのは、言語の1つです。 AWSはどのIDEを使用するかは考慮しませんが(ただし、IDEの選択によってリモートアクセスに使用できる機能が決まります)、言語は気になります。 AWSが、アクセスしたいサービスに対してあなたが選択した言語をサポートしていることを確認する必要があります。たとえば、Simple Queue Service(SQS)の選択肢を次に示します。
AWSが使用する言語をサポートしていることを確認します。
EC2を使用してデプロイメント環境を作成できます。このチュートリアルでは、このタスクの実行方法について説明します。このアプローチの主な利点は、開発では特定のリソースを持つローカルシステムが不要になるため、AWSアプリケーションを理論的にどこからでも開発できることです。
しかし、このアプローチは無制限ではありません。つまり、開発作業を実行したい場所(どこでも仕事上問題はありませんが、おそらく家庭内の問題)から信頼できるインターネット接続を確立する必要があります。クラウドベースの開発アプローチでは、AWSコマンドラインインターフェイス(CLI)を使用します。ローカライズされた開発環境を使用する主な理由は、開発タスクを実行するために組織が現在使用しているローカルリソースとコードライブラリへのアクセスを保持することです。
このオプションは、リモート接続を使用しないため信頼性にも優れています。インターネット接続が切断された場合は、コードの開発を続けることができます(ただし、接続が復元されるまではテストはできません)。このオプションを使用する場合は、少なくともテスト目的と、組織のファイアウォールを介したAWSアクセスのアクセス許可のために、追加の帯域幅が必要です。
AWSで作業する場合は、2つのオプションに限定されません。たとえば、ローカル開発環境を使用できますが、コードをS3に配置することができます。クラウドベースのデータストレージを使用すると、複数の場所でローカライズされた設定を使用できるため(ローカルリソースへのアクセスを維持する)、クラウドベースの開発の利点が得られます。開発環境が設定されている。
このチュートリアルは、プロジェクト、ソース管理、リポジトリの使用にElastic Beanstalkを使用するように開発環境を設定する方法を説明しているので興味深いものです。ローカライズされた開発環境と同様に、インターネットアクセスに必要な権限と、このオプションを有効にするためのデータ要求の増加を処理するのに十分な帯域幅が必要です。実際、帯域幅の要件はローカル構成よりも高く、開発環境はリモートリソースで動作する必要があります。
正しい開発環境を選択することは容易ではありません。多くの場合、選択肢は個人の好みや組織の要件の1つになります。たとえば、クラウドベースの開発ソリューションを使用することは、機密性の高い開発タスクを処理する場合には選択肢ではないかもしれません。セキュリティのニーズは、他の欲求よりも大きくなる可能性がある