ITインフラストラクチャのサイズと複雑さの指標は何ですか


7

サイズと複雑さに関して異なるインフラストラクチャを比較するにはどうすればよいですか。ノードの数、サーバーの数、アーキテクチャなど、何を測定して比較できますか。

それらの測定値と変数は、比較対象でどのように異なりますか?それらのうちどれを比較するのが理にかなっているか、ほんの少し余分な作業ではなく、行われた作業の種類に実際の違いがあるカーディナリティは何ですか。

このインフラストラクチャは非常に大きい」または「このインフラストラクチャは非常に複雑である」と私は何を決めますか、そして違いは何ですか?

回答:


7

TL; DR:サイズの測定は、管理対象の深さ、サービスとしてアウトソーシングまたは消費するもの、サポートれるサービスの、インスタンス、サーバー、顧客の数の高さとして定義する3つの異なるカテゴリに大別できます。 。対策複雑さは、主に選択に依存 システムアーキテクチャ組織構造、それを支える人々とのスキルセットが必要。深さとスキルセットが密接に関係している場合、サイズと複雑さの両方が追加されます。

サイズ測定

注:以下のサイズ要件のほとんどは、システムアーキテクチャ、スキルセット、組織構造のニーズによって複雑さを増す可能性もあります。

インフラの深さ

より深いレベルで他の人にアウトソーシングしているインフラストラクチャの量:

  1. あなたは、あなたがするすべてのために、サービスとしてのソフトウェアを単純に使用しますか?
  2. パブリッククラウド、プライベートクラウド、ハイブリッドクラウドで完全に稼働していますか、それともPaaSを使用していますか?
  3. Infrastructure as a Serviceを使用していますか?
  4. レンタルDCスペースでホステッドインフラストラクチャとマネージドインフラストラクチャを使用していますか?
    • ハードウェアを所有またはレンタルしていますか?
    • プロバイダーはインフラストラクチャの監視を管理していますか?
    • プロバイダーは基本的なシステム管理を管理していますか?
    • プロバイダーはハードウェアの障害とメンテナンスを管理していますか?
    • プロバイダーはラックとサーバーの設置を管理していますか?
    • プロバイダーは内部ネットワークを管理していますか?
    • プロバイダーはインターネット接続とルーティングを管理していますか?
  5. 契約されたリモートハンドを備えたデータセンターしかありませんか?
  6. すべてをオンプレミスまたは独自のデータセンターでホストしていますか?

幅広いインフラ

サポートしているサービスの種類は何ですか?

  • コンピューティングリソース
    • ベアメタルサーバー
    • 仮想化レイヤー(VMWare)
    • コンテナーレイヤー(docker、k8、mesos)
    • サーバーレスレイヤー(ラムダ、関数)
  • ストレージリソース
    • スタンドアロンストレージアプライアンス
    • サーバーのRAID
    • 大規模なスタンドアロンリレーショナルデータベースクラスター
    • 時系列データベース
    • オブジェクトストアクラスター
  • ネットワークリソース
  • 可観測性リソース
    • システムログサーバー
    • メトリックおよびグラフシステム
    • 検索クラスター
  • 自動化リソース
  • バックアップ/リカバリリソース
  • 複雑な複合サービス
    • ELK、Hadoopなど

インフラの高さ

  • 必要な各リソースの規模はどのくらいですか?単一のサーバー/インスタンスでサービスを運用していますか、それともマシンのクラスターを使用する必要がありますか?
  • 必要な冗長性のレベルはどのくらいですか?
  • 可用性の要件は何ですか?
  • サービスのレイテンシとスループットの要件は何ですか?
  • 地理的に分散したインフラストラクチャが必要ですか?(国際ビジネス、レイテンシ要件、またはGDPRのような規制コンプライアンス、データローカリゼーション法など)
  • 各地域に複数のデータセンターが必要ですか?

複雑さの測定

ほんの少しだけ...

システムアーキテクチャー

インフラストラクチャの複雑さに関しては、インフラストラクチャによってサポートされる分散システムの複雑さを非常に厳密に踏襲しています。次の2種類のシステムを考慮する必要があります。

  1. 個々のサービスをサポートする分散システム。
  2. サービスの相互依存関係によって作成された分散システム。

分散システムの複雑さ

インフラストラクチャがサポートするすべてのサービスは、インフラストラクチャに対するさまざまなレベルの要件によって、それ自体がさまざまなレベルの複雑さを持つことができます。サービスをサポートするシステムの範囲は次のとおりです。

  • シングルスレッド。
  • マルチスレッド(共有メモリ、共有ディスク)
  • データシャーディングを備えた並列システム
  • HAフェイルオーバー(プライマリ/スタンバイ)(コールド、ウォーム、ホット)
  • HAクラスター(N + M)
  • リアルタイムクラスタ

サービスの相互依存

例から始めましょう。インフラストラクチャがテスト結果をElasticSearchクラスターに報告するとします。ポケットベルは、ElasticSearchが提供するモニタリングデータとテストデータに依存しています。ElasticSearchクラスターの地理的な分散は、データセンターのネットワーク接続に依存します。現在、インターネットプロバイダーの1つが土曜日の夜に非通知のメンテナンスを行うことを決定しました。スループットが低下し、トラフィックはバックアッププロバイダーに再ルーティングされます。モニタリングト​​ラフィックは顧客データトラフィックに優先順位が付けられず、モニタリングイベントの取り込みが遅くなり、ポケットベルが狂います。

インフラストラクチャの2つの部分である2つのサービスが相互に依存するたびに、それらは新しい単一の分散システムを作成します。その複雑さは独立して判断する必要があります。このような依存関係は削除するか、減らすことができます。システムは冗長性があり、依存するすべてのサービスの共通部分と同じくらい利用可能であることに注意してください。

複雑さを増す要因のさらなる例:

  • 外部サービスへの依存。
  • サービスの依存関係による障害を軽減しようとします。
    • 複数のプロバイダー
    • データのキャッシュ

組織構造

これはそれ自体が1つの章です。ITインフラストラクチャのシステム全体の一部を見落としがちです。人間に関しては、冗長性、可用性、レイテンシの要素について考えることはほとんどありませんが、コンピュータと同様に、これらの同じ問題がインフラストラクチャを維持している組織に影響し、その複雑さがコンピュータシステムの複雑さを簡単に上回ってしまうことがあります。インフラストラクチャの保守に関与する人々は、複数のタイムゾーン、言語、地理的な場所、会社、賃金表、および法規にまたがることがあります。これらの要因はいずれも、複雑さが増していることを示しています。


1
私はここで答えを簡単に試してみましたが、今後編集するつもりですが、提案や編集は大歓迎です。
Jiri Klouda、2018

2
いいですね、相互接続を主要な複雑さの要因と見なします
Giulio Vian
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.