タグ付けされた質問 「infrastructure」

2
クラウドサービスの複合サービスレベル契約(SLA)をどのように計算しますか?
が主催するクラウドサービスAmazon Webサービス、アズール、グーグルや他のほとんどは公開S ervice L EVEL A greementそれらが提供する個々のサービスのために、またはSLAを。アーキテクト、プラットフォームエンジニア、および開発者は、これらを組み合わせて、アプリケーションのホスティングを提供するアーキテクチャを作成する責任があります。 これらのサービスは、単独で使用すると、通常、3〜4の範囲の可用性を提供します。 Azure Traffic Manager:99.99%または「フォーナイン」。 SQL Azure:99.99%または「フォーナイン」。 Azure App Service:99.95%または「スリーナインファイブ」。 ただし、アーキテクチャで一緒に組み合わせると、いずれかのコンポーネントが停止し、コンポーネントサービスとは異なる全体的な可用性が得られる可能性があります。 シリアル化合物の可用性 この例には、次の3つの障害モードがあります。 SQL Azureがダウンしています App Serviceがダウンしています 両方ともダウンしています したがって、この「システム」の全体的な可用性は99.95%未満でなければなりません。これを考える私の理由は、両方のサービスのSLA が次のようになっている場合です。 サービスは24時間のうち23時間利用可能です 次に: App Serviceは0100〜0200の間にある可能性があります 0500から0600の間のデータベース 両方のコンポーネント部分はSLA内にありますが、システム全体は24時間のうち2時間利用できませんでした。 シリアルおよびパラレルの可用性 このアーキテクチャには、主に次のような多数の障害モードがあります。 RegionAのSQL Serverがダウンしています RegionBのSQL Serverがダウンしています RegionAのApp Serviceがダウンしています RegionBのApp Serviceがダウンしています Traffic Managerがダウンしています 上記の組み合わせ Traffic Managerはサーキットブレーカーであるため、いずれかの地域の停止を検出し、トラフィックを作業領域にルーティングすることができますが、Traffic Managerの形式には単一障害点があるため、「システム」の全体的な可用性は99.99%を超えます。 上記の2つのシステムの複合可用性をビジネス向けに計算および文書化するにはどうすればよいですか? 図に注釈を付けたい場合は、Lucid …

1
ITインフラストラクチャのサイズと複雑さの指標は何ですか
サイズと複雑さに関して異なるインフラストラクチャを比較するにはどうすればよいですか。ノードの数、サーバーの数、アーキテクチャなど、何を測定して比較できますか。 それらの測定値と変数は、比較対象でどのように異なりますか?それらのうちどれを比較するのが理にかなっているか、ほんの少し余分な作業ではなく、行われた作業の種類に実際の違いがあるカーディナリティは何ですか。 「このインフラストラクチャは非常に大きい」または「このインフラストラクチャは非常に複雑である」と私は何を決めますか、そして違いは何ですか?


2
同じサブネットでAWS内部ロードバランサーを呼び出すアプリケーションがタイムアウトになる
背景: Amazonのvpcを使用して、やや複雑なネットワークを作成しました。2つのアベイラビリティーゾーンにまたがる3層ネットワークです。各レイヤーは、zone-aとzone-bにサブネットを持っています。プレゼンテーション層は上部にあり、アプリケーション層は中央にあり、コア層は下部にあります。 すべてのセキュリティグループとサブネットのACLは現在、すべてのインバウンドおよびアウトバウンドトラフィックを許可しており、問題の表面領域を減らすのに役立ちます。 プレゼンテーション層のルーティングテーブルは、すべてのトラフィックをインターネットゲートウェイに向けています。NATゲートウェイは分離されたサブネット内にあり、すべてのトラフィックをインターネットゲートウェイに向けています。 私のアプリケーションには、UI(React.js)とAPI(Node / Express)の2つのコンポーネントがあります。これらは、Dockerイメージとして展開されます。それぞれの前には、古典的なロードバランサーがあります。 UI-ELBはインターネットに面し、プレゼンテーションレイヤーに常駐し、トラフィックを80/443からポート8080にルーティングし、アプリケーションレイヤーサブネットに配置されている私のapp-ec2に関連付けられています。 私のAPIの前には内部ロードバランサーがあります。API-ELBはアプリケーション層(app-ec2と同じサブネット内)にあり、ポート80/443のトラフィックを受け取り、ポート3000のコアのapi-ec2にルーティングします。 どちらのロードバランサーも、インスタンスにトラフィックを渡す前に証明書をオフロードしています。 私は両方のロードバランサーをRoute53でエイリアスとして関連付け、アプリケーションできれいなURL(https://app.website.com)で参照しています。各ロードバランサーは、定義されたヘルスチェックに合格し、使用中のすべてのec2インスタンスを報告します。 最後に、APIで、cors nodejsパッケージを使用してcorsを有効にしました。 これが私のネットワークの簡単で汚い図です。 問題: APP-ELBは私をアプリケーションに正常にルーティングします。ただし、アプリがGETリクエストをAPI-ELBに送信しようとすると、最初にエラーコード408でタイムアウトするOPTIONSリクエストが送信されます。 変になるところ デバッグ中に遭遇した奇妙なことのいくつかは次のとおりです。 app-ec2インスタンスにSSH接続して、API-ELBに対して正常にcurlを実行できます。私は多くを試しました、そしてそれらはすべてうまくいきます。いくつかの例は以下の通りですcurl -L https://api.website.com/system/healthcheckとcurl -L -X OPTIONS https://api.website.com/system/healthcheck。常に必要な情報を返します。 アプリケーション全体をネットワークからパブリックデフォルトvpcに移動しましたが、想定どおりに機能します。 すべてのネットワーク要求をコンソールに書き込むapi-ec2があります。ヘルスチェックリクエストは表示されますが、app-ec2からのリクエストは表示されません。これは、トラフィックがapiに到達していないことを私に信じさせる。 本当に私を完全に失った最大のことは、内部api elbのカーリングが機能することですが、同じ正確なURLへのaxiosリクエストは機能しません。これは私にはまったく意味がありません。 私が試したこと 私は当初、ACLルールとセキュリティグループで遊んでいて、何か間違ったことをしていると思っていました。結局、私は「ねじって」と言って、すべてを開いて、その部分を方程式から外そうとしました。 私はAPIでCorsをいじるのに多くの時間を費やしてきました。最終的に、私が持っている構成に着陸しapp.use(cors())ます。これは、corsノードパッケージによって提供されるデフォルトのコールバックです。app.options('*', cors())ドキュメントで推奨されているものも含めました。 私は太陽の下ですべてをググっていますが、具体的にはエルブでいくつかの特別なカスタムヘッダーを定義する必要があるかどうか?しかし、何かを見つけることができないようです。さらに、アプリをネットワークの外に移動したところ、問題なく動作しました。 私は他にもたくさんのことを試したと思いますが、これらが最も適切なようです。何が欠けていますか?これは非常に曖昧で広範な問題であり、膨大な投稿になる可能性があることは承知していますが、それを読む際の洞察と時間に感謝します!
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.