(57)【要約】  動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための技術が説明される。フリート再構成サービスは、コンピュートインスタンスを実行するために利用可能であるホスト電子デバイスのスロットの実行時再構成を実行する。一方、電子デバイスは、コンピュートインスタンス実行に利用可能な電子デバイスのスロットのタイプ及び／または数を動的に変更するために他のコンピュートインスタンスを実行してよい。
2021502643.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ実装方法であって、
プロバイダネットワーク内の第１のコンピュートインスタンスタイプのための利用可能なスロットの数が、前記第１のコンピュートインスタンスタイプのために必要とされるスロットの数に満たないと判断することと、
第２のコンピュートインスタンスタイプのコンピュートインスタンスのために、電子デバイスの第１の１個以上のスロットを登録解除すること、及び前記第１のコンピュートインスタンスタイプのコンピュートインスタンスのために、前記電子デバイスの第２の１個以上のスロットを登録することであって、前記電子デバイスが、前記第２のコンピュートインスタンスタイプの対応する１つ以上のコンピュートインスタンスが実行する１個以上の他のスロットをさらに含む、前記登録解除すること及び前記登録することと、
前記第１のコンピュートインスタンスタイプのコンピュートインスタンスを起動する要求を受信することと、
前記電子デバイスが、前記第２のコンピュートインスタンスタイプの前記１つ以上のコンピュートインスタンスを実行し続ける一方、前記電子デバイスの前記第２の１個以上のスロットの１つで前記第１のコンピュートインスタンスタイプの前記コンピュートインスタンスを実行することと、
を含む、コンピュータ実装方法。
【請求項２】
前記第１の１個以上のスロットが複数のスロットを含み、前記複数のスロットが、前記第２の１個以上のスロットに統合され、前記第２の１個以上のスロットが単一のスロットを含む、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記第１の１個以上のスロットが単一のスロットを含み、前記第２の１個以上のスロットが複数のスロットを含む、請求項１に記載のコンピュータ実装方法。
【請求項４】
前記第１の１個以上のスロットを登録解除する前に、前記電子デバイスを隔離に配置することであって、隔離中、前記電子デバイスが、前記第２のコンピュートインスタンスタイプの前記１つ以上のコンピュートインスタンスを実行し続けるが、追加のコンピュートインスタンスを配置させるために利用できない、前記隔離に配置することと、
前記第２の１個以上のスロットを登録した後、前記電子デバイスを隔離から取り除くことと、
をさらに含む、請求項１に記載のコンピュータ実装方法。
【請求項５】
前記電子デバイスを隔離に配置した後、前記第１の１個以上のスロットがいずれのコンピュートインスタンスも実行していないことを検証すること
をさらに含む、請求項４に記載のコンピュータ実装方法。
【請求項６】
前記電子デバイスを隔離に配置した後、かつ前記電子デバイスを隔離から取り除く前に、
前記電子デバイスで実行する前記第２のコンピュートインスタンスタイプの前記１つ以上のコンピュートインスタンスの少なくとも１つを関係させるアクションを実行する要求を受信することと、
前記アクションを実行することと、
をさらに含む、請求項４に記載のコンピュータ実装方法。
【請求項７】
前記第１の１個以上のスロットの前記登録解除及び前記第２の１個以上のスロットの前記登録が、再構成操作の第１のセットの一部として第１のワーカーエンティティにより実行され、
第２のワーカーエンティティが、前記再構成操作の第１のセットと同時に再構成操作の第２のセットを実行する、請求項１〜６のいずれか１項に記載のコンピュータ実装方法。
【請求項８】
前記再構成操作の第２のセットが、
第３のコンピュートインスタンスタイプのコンピュートインスタンスのために、第２の電子デバイスの第３の１個以上のスロットを登録解除することと、
第４のコンピュートインスタンスタイプのコンピュートインスタンスのために、前記第２の電子デバイスの第４の１個以上のスロットを登録することと、
を含む、請求項７に記載のコンピュータ実装方法。
【請求項９】
前記第１のコンピュートインスタンスタイプの前記コンピュートインスタンスのためのスロットを選択する要求を配置サービスに送信することと、
前記第２の１個以上のスロットのうちの１個の１つ以上の特徴を記述する、前記電子デバイスの前記第２の１個以上のスロットのうちの前記１個に対応するリソースベクトルを含む応答を前記配置サービスから受信することと、
前記リソースベクトルに基づいて、前記第１のコンピュートインスタンスタイプの前記コンピュートインスタンスのための配置場所として前記電子デバイスの前記第２の１個以上のスロットのうちの前記１個を識別することと、
をさらに含む、請求項１〜８のいずれか１項に記載のコンピュータ実装方法。
【請求項１０】
前記第１のコンピュートインスタンスタイプのコンピュートインスタンスのための前記電子デバイスの前記第２の１個以上のスロットを登録することが、
前記第２の１個以上のスロットの第１のスロットのためのスロット情報データ構造にレコードを挿入することであって、前記レコードが、前記電子デバイスの識別子、前記電子デバイスの文脈の中で一意であるスロット番号の識別子、及びリソースベクトルの識別子を含み、前記リソースベクトルが、前記第１のスロットの１つ以上の特徴を記述する、前記挿入すること、
を含む、請求項１〜９のいずれか１項に記載のコンピュータ実装方法。
【請求項１１】
システムであって、
カスタマの代わりにコンピュートインスタンスを実装するために複数の電子デバイスを含むプロバイダネットワークのハードウェア仮想化サービスと、
１つ以上の電子デバイスにより実装される前記プロバイダネットワークの制御プレーンであって、実行時に、前記制御プレーンに、
前記プロバイダネットワークの１つ以上のコンピュートインスタンスタイプごとのいくつかのスロットが作成されるべきであると判断することと、
前記複数の電子デバイスの２つ以上を利用可能なスロットを有するとして識別することと、
前記２つ以上の電子デバイスの前記利用可能なスロットのスロットを登録解除し、前記２つ以上の電子デバイスのための追加のスロットを登録して、前記１つ以上のコンピュートインスタンスタイプごとに前記いくつかのスロットを作成することであって、前記２つ以上の電子デバイスがさらに、対応する１つ以上のコンピュートインスタンスが、スロット再構成操作のセットを通して実行し続ける、１個以上の他のスロットを含む、前記作成することのために、複数のワーカーエンティティのそれぞれにより同時に１回以上、前記スロット再構成操作のセットを実行することと、
を行わせる命令を含む、前記制御プレーンと、
を備える、システム。
【請求項１２】
前記スロット再構成操作のセットのうちの１つが、複数のスロットを登録解除することと、前記２つ以上の電子デバイスの第１の電子デバイスで単一のスロットを登録することとを含む、請求項１１に記載のシステム。
【請求項１３】
前記スロット再構成操作のセットのうちの別のセットが、前記２つ以上の電子デバイスの第２の電子デバイスで単一のスロットを登録解除することと、複数のスロットを登録することとを含む、請求項１２に記載のシステム。
【請求項１４】
前記スロット再構成操作のセットのうちの前記１つが、
前記複数のスロットの前記登録解除の前に、前記第１の電子デバイスを隔離に配置することであって、隔離中、前記第１の電子デバイスが、１つ以上のコンピューティングデバイスを実行し続けるが、追加のコンピュートインスタンスを配置させるために利用できない、前記隔離に配置することと、
前記単一のスロットの前記登録後に、前記第１の電子デバイスを隔離から取り除くことと、
をさらに含む、請求項１２に記載のシステム。
【請求項１５】
前記スロット再構成操作のセットのうちの前記１つが、
前記第１の電子デバイスの隔離への前記配置後に、前記複数のスロットがいずれのコンピュートインスタンスも実行していないことを検証すること、
をさらに含む、請求項１４に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、参照することにより本願に援用される、２０１７年１１月１０日に出願された米国非仮出願第１５／８０９，８８４号の利益を主張する。
【背景技術】
【０００２】
多くの企業及び他の組織は、（例えば、ローカルネットワークの一部として）同一場所に配置されている、または代わりに（例えば、１つ以上のプライベートもしくはパブリックの中間ネットワークを介して接続された）複数の異なる地理的場所に位置するコンピューティングシステムを用いて等、自らの事業をサポートするために多数のコンピューティングシステムを相互接続するコンピュータネットワークを運営している。例えば、単一の組織により及び単一の組織の代わりに運営されるプライベートデータセンタ、及びカスタマにコンピューティングリソースを提供するために企業としてのエンティティにより運営されるパブリックデータセンタ等の相当数の相互接続したコンピューティングシステムを収容するデータセンタが一般化している。一部のパブリックデータセンタ事業者は、多様なカスタマが所有するハードウェアのためにネットワークアクセス、電力、及び安全な設置施設を提供する。一方、他のパブリックデータセンタは、カスタマによる使用のために利用可能にされたハードウェアリソースも含む「フルサービスの」施設を提供する。しかしながら、典型的なデータセンタの規模及び範囲が拡大するにつれ、物理的なコンピューティングリソースをプロビジョニングするタスク、運営するタスク、及び管理するタスクはますます複雑化している。
【０００３】
コモディティハードウェアのための仮想技術の到来は、種々のニーズを有する多くのカスタマ向けに大規模なコンピューティングリソースを管理し、複数のカスタマが多様なコンピューティングリソースを効率的かつ安全に共用できるようにすることに関して利益を提供してきた。例えば、仮想化技術は、単一の物理的なコンピューティングマシンがホストする１つ以上の仮想マシンを各ユーザーに与えることによって、単一の物理的なコンピューティングマシンを複数のユーザー間で共用することを可能にし得、係るそれぞれの仮想マシンは、多様な仮想マシンの間でアプリケーションの隔離及び安全性も提供しつつ、自分が所与のハードウェアコンピューティングリソースの単独の事業者及び管理者であるという錯覚をユーザーに与える別個の論理コンピューティングシステムとしての機能を果たすソフトウェアシミュレーションである。さらに、一部の仮想化技術は、複数の別個の物理コンピューティングシステムに広がる複数の仮想プロセッサを有する単一の仮想マシン等の２つ以上の物理リソースに広がる仮想リソースを提供することが可能である。
【０００４】
別の例では、仮想化技術は、複数のデータストレージデバイス全体で分散し得る仮想化されたデータストアを各ユーザーに提供することによってデータストレージハードウェアを複数のユーザーの間で共用することを可能にし、係るそれぞれの仮想化されたデータストアは、自分がデータストレージリソースの単独の事業者及び管理者であるという錯覚をユーザーに与える別個の論理データストアとして機能する。
【０００５】
本開示に係る多様な実施形態を図面を参照して説明する。
【図面の簡単な説明】
【０００６】
【図１】一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための環境を示す図である。
【図２】一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のために、フリート（ｆｌｅｅｔ）再構成サービス及びクラウドマネージャを関係させる、例示的な操作及びメッセージングを示す図である。
【図３】一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理の一部として使用できる例示的なデータを示す図である。
【図４】一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための操作を示す流れ図である。
【図５】一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のために複数のワーカーを関係させる操作を示すフロー及びシーケンスの複合図である。
【図６】一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための操作を示す流れ図である。
【図７】一部の実施形態に係る例のプロバイダネットワーク環境を示す図である。
【図８】一部の実施形態に従ってカスタマにストレージ仮想化サービス及びハードウェア仮想化サービスを提供する例のプロバイダネットワークのブロック図である。
【図９】一部の実施形態で使用し得る例のコンピュータシステムを示すブロック図である。
【発明を実施するための形態】
【０００７】
動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための方法、装置、システム、及び非一過性コンピュータ可読媒体の多様な実施形態が開示される。一部の実施形態によれば、プロバイダネットワークのカスタマは、同じホスト電子デバイスで同時に実行できる異なるコンピュートインスタンスタイプのコンピュートインスタンスを起動できる。一部の実施形態では、フリート再構成サービスは、ホスト電子デバイスの実行時再構成を実行する。一方、電子デバイスは、コンピュートインスタンス実行に利用可能な電子デバイスのスロットのタイプ及び／または数を動的に変更するために他のコンピュートインスタンスを実行してよい。
【０００８】
一部の実施形態では、異種のホスト電子デバイスを実装するプロバイダネットワークは、異なるタイプのコンピュートインスタンスに対する需要の変化に柔軟に適応することによって容量のより大きい可用性を提供できる。さらに、一部の実施形態は、ホスト電子デバイスのリソース利用を拡大する、要求されたコンピュートインスタンスを起動するための場所が利用できないことに起因する配置要求の失敗を削減する、及び／または共通の失敗の状況により影響を及ぼされるであろう類似した場所に類似したタイプのコンピュートインスタンスを配置するニーズを削減または排除することによってカスタマに強化したフォールトトレランスを提供することができる。
【０００９】
大規模プロバイダネットワークでは、コンピュートインスタンスの実行（例えば、仮想マシン（ＶＭ）インスタンス及び／またはコンテナを実行すること）の形でコンピューティングリソースを提供する共通の方式は、カスタマが特定のタイプのコンピュートインスタンスを起動することを可能にすることを必要とする。例えば、異なる使用例に対応するために最適化される複数のインスタンスファミリが提供されてよい。一例として、各インスタンスファミリは、プロバイダネットワークのカスタマに自分のニーズのためにリソースの適切な混合物を選ぶ柔軟性を与えるために、処理、メモリ、ストレージ、ネットワーキング等、容量、または性能の変化する組み合わせを提供してよい。さらに、各インスタンスファミリは、コンピュートインスタンスの特定のリソースの異なる量または特徴を有するいくつかの異なるインスタンス「サイズ」を含み、カスタマが必要に応じてリソースを拡大縮小することを可能にしてよい。このようにして、インスタンスタイプは、コンピュートインスタンスのリソースの特定の構成であってよく、したがってインスタンスタイプは、インスタンスファミリ（例えば、処理が最適化されたコンピュートインスタンス）及び特定のサイズ（例えば、特定の量の処理、メモリ、ストレージ、ネットワーキング等）のファミリの組み合わせであってよい。
【００１０】
これらのコンピュートインスタンスを実装するために、プロバイダネットワークは多数の電子デバイスをセットアップして、コンピュートインスタンスが実行できるホストとしての機能を果たしてよく、電子デバイスのそれぞれは、特定のタイプのコンピュートインスタンスに１個以上の「スロット」を提供するように構成されてよい。各電子デバイスが１つのタイプのコンピュートインスタンスしかホストしないようにネットワークを構成することによって、プロバイダネットワークを簡略に構築することができ、既知の数の１つのタイプのコンピュートインスタンスをサポートするために、電子デバイスの特徴を簡単に選択できる。
【００１１】
しかしながら、係る方式は、異なるインスタンスタイプのために容量の「空きプール」を維持するニーズにつながる場合がある。さらに、特定のインスタンスタイプに対する需要が利用可能なプール容量を超えると、カスタマは、そのタイプのインスタンスをただちに起動できない場合がある。代わりに、追加のプール容量を加えるために「リビルド」プロセスが実行されてよく、異なるインスタンスタイプをサポートするように構成されていた空のホスト電子デバイス（つまり、現在、いかなるカスタマのコンピュートインスタンスも実行していない）が識別され、必要とされる異なるインスタンスタイプをサポートするように再構成されるであろう。係るリビルドプロセスは、多大な時間を必要とする場合があり、空のデバイス―任意の時点で存在していない可能性がある―だけをリビルドするニーズのためにただちに実行できない場合さえある。
【００１２】
したがって、本明細書に開示する実施形態は、大規模プロバイダネットワークが、異なるインスタンスタイプを同時にホストできる異種ホスト電子デバイスを利用できるようにする。一部の実施形態では、異なるインスタンスサイズに対する需要を満たすために完全に空のホストを見つけるニーズはない場合がある。代わりに、既存のカスタマインスタンスが影響を受けずに実行し続け得る一方、１つのタイプのインスタンスを実行しているホスト電子デバイスを、異なるタイプの別のインスタンスをサポートするように再構成できる。さらに、一部の実施形態では、ニーズが生じる前に利用できるコンピュートインスタンススロットの量及びタイプを管理するために、フリートのホスト電子デバイスのうちのホスト電子デバイスを、例えば断定的なモデルまたは発見的問題解決法に基づいて「オフライン」式で再構成できる。結果的に、ホスト電子デバイスのフリートの容量は代替可能となる場合があり、要求されたタイプのコンピュートインスタンスに対する不十分な容量のために拒絶されるカスタマ起動要求の発生を減少させながら、容量使用の効率を高めることができる。一部の実施形態では、カスタマは、高需要時でさえより大きいシステム可用性（例えば、より少ない容量不足の例外）を有益に経験するであろうが、プロバイダネットワークのカスタマには、異種ホスト電子デバイスの利用を完全に見えなくできる。さらに、一部の実施形態では、コンピュートインスタンスをより密に「圧縮すること」により、プロバイダネットワークのホスト電子デバイスをより完全に利用することができ、これにより、カスタマに同じ量のサービスを提供するために必要とされる電子デバイスの数（したがって、ハードウェア、電気、管理等の量）を削減できる。さらに、ホスト電子デバイス上で複数のタイプのコンピュートインスタンスを実行することによって、共通コンピュートインスタンスの大きいフリートが、共通のホストデバイスに配置される可能性は低くなる。したがって、特定のホストデバイスに関わるいかなる問題も―１つの層としての機能を果たす複数の異種コンピュートインスタンスが共通のデバイスに配置されると起こるであろう―カスタマのアプリケーションの全体的な層におそらく影響を及ぼさず、フォールトトレランスの改善を通してカスタマに強化された安定性をさらに提供する。
【００１３】
図１は、一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための環境を示す図である。本明細書に説明するように、実施形態は、プロバイダネットワーク１００で実装できる。プロバイダネットワーク１００は、そのユーザーに、計算リソース（例えば、コンピュートインスタンスを実行すること、バッチジョブを実行すること、サーバをセットアップすることなくコードを実行すること）、データ／ストレージリソース（例えば、オブジェクトストレージ、ブロックレベルストレージ、データアーカイブストレージ）、ネットワーク関係リソース（例えば、計算リソース、コンテンツ配信ネットワーク（ＣＤＮ）、ドメインネームサービス（ＤＮＳ）のグループを含む仮想ネットワークを構成すること）、アプリケーションリソース（例えば、データベース、アプリケーション構築／配備サービス）等のさまざまなタイプのコンピューティング関係リソースのうちの１つ以上を利用する能力を与える。これらの及び他のコンピューティングリソースは、コンピュートインスタンスを実行できるハードウェア仮想化サービス１４２、データオブジェクト等を記憶できるストレージ仮想化サービス等のサービスとして提供されてよい。プロバイダネットワーク１００のユーザー（つまり「カスタマ」）は、カスタマアカウントと関連付けられる１つ以上のユーザーアカウントを利用してよい。ただし、これらの用語は、使用の文脈に応じてやや同義で使用され得る。ユーザー１０２は、ウェブサイトまたはアプリケーション等として実装されたコンソールの使用から生じるハイパーテキスト転送プロトコル（ＨＴＴＰ）メッセージを介するプロバイダネットワーク１００のＡＰＩエンドポイントに対するアプリケーションプログラミングインタフェース（ＡＰＩ）呼び出しを使用することによって等、１つ以上のインタフェース（複数可）１０８を介して１つ以上の中間ネットワーク１０６（例えば、インターネット）全体で電子デバイス１０４を使用し、プロバイダネットワーク１００と対話してよい。インタフェース（複数可）１０８は、より目に見えるようにまたは「直接的に」カスタマに提供され得るサービスをサポートし、有効にする「バックエンド」サービスを含むプロバイダネットワーク１００の制御プレーン１２２の一部であってよい、または制御プレーン１２２に対するフロントエンドとしての機能を果たしてよい。
【００１４】
これらの及び他のコンピューティングリソースサービスを提供するために、プロバイダネットワーク１００は、多くの場合仮想化技術に頼る。例えば、仮想化技術は、ユーザーに、コンピュートインスタンス（例えば、基本的なホストＯ／Ｓの上部でさらに動作する場合もあれば、動作しない場合もあるハイパーバイザ、ＶＭで動作する場合もあれば、動作しない場合もあるコンテナ、基本的なハイパーバイザなしで「ベアメタル」ハードウェアで実行できるインスタンスを使用し、動作するゲストオペレーティングシステム（Ｏ／Ｓ）を使用するＶＭ）を制御または利用する能力を与えるために使用されてよく、１つまたは複数のコンピュートインスタンスは、単一の「ホスト」電子デバイスを使用し、実装できる。このようにして、ユーザー１０２は、さまざまなコンピューティングタスクを実行するためにサービスプロバイダシステムによりホストされるコンピュートインスタンスを直接的に利用する場合もあれば、（通常は、ユーザーが関与する基本的なコンピュートインスタンス（複数可）のいかなる制御または知識も有さずに）同様にコードを実行するためにコンピュートインスタンスを利用するサービスプロバイダシステムにより実行されるコードを提出することによってコンピュートインスタンスを間接的に利用する場合もある。したがって、プロバイダネットワーク１００は、異なる機能を有する複数の異なるタイプであってよい、複数の電子デバイス１３４Ａ〜１３４Ｃを含む。
【００１５】
大規模なプロバイダネットワーク１００では、複数の地理的場所に位置する場合がある数百、数千、数万の、またはより多くの電子デバイス１３４Ａ〜１３４Ｃがある場合があるが、図１では、３つのホスト電子デバイス１３４Ａ〜１３４Ｃが示される。さらに、プロバイダネットワーク１００では、利用されるコンピュートインスタンスのタイプが著しく多いまたは少ない場合もあるが、この例では、３つの異なるコンピュートインスタンスタイプ―小、中、及び大と呼ぶ―が提示される。
【００１６】
この例では、「時間１」で、第１の電子デバイス１３４Ａは、初期に８個の「小」インスタンスタイプスロット１３７Ａ〜１３７Ｈを含むとして示され、これらのスロットのうちの２個は２つのタイプ「小」のコンピュートインスタンス１３６Ａ〜１３６Ｂにより使用される。同様に、第２の電子デバイス１３４Ｂは、初期に４個の「中」インスタンスタイプのスロット１３９Ａ〜１３９Ｄを含むとして示され、これらのスロットのうちの３個が、タイプ「中」のコンピュートインスタンス１３８Ａ〜１３８Ｃにより使用される。最後に、第３の電子デバイス１３４Ｃは、初期に２個の「大」のインスタンスタイプのスロット１４１Ａ〜１４１Ｂを含むとして示され、これらのスロットのうちの１個がタイプ「大」のコンピュートインスタンス１４０Ａにより使用される。この場合、各電子デバイス１３４Ａ〜１３４Ｃは、始めに異種タイプのコンピュートインスタンスをホストするとして示されるが、これは、要件または共通の事例としても解釈されるべきではなく、代わりに理解を容易にするために相応して提示される。しかしながら、一部の実施形態では、この状況は、電子デバイス１３４Ａ〜１３４Ｃの異種フリート（つまり、それぞれが１つのインスタンスタイプしかサポートしない）が適所に移動されて、一度に複数のタイプのコンピューティングデバイスをサポートする能力を有する異種フリートになるときに当てはまる場合がある。
【００１７】
一部の実施形態では、プロバイダネットワーク１００は、電子デバイス１３４Ａ〜１３４Ｃの電子デバイスを再構成することによって、その利用可能なコンピュートインスタンス容量を管理できる。例えば、一部の実施形態では、プロバイダネットワーク１００は、プロバイダネットワーク１００のコンピュートインスタンスの以前の利用履歴の分析に基づいて、特定のときにどのタイプのコンピュートインスタンスがカスタマにより所望される場合があるのかを示すモデルを構築し得る予想サービス１２０を含む。例えば、予想サービス１２０は、経時的な以前のコンピュートインスタンスの利用を記述するデータ−例えば、いつコンピュートインスタンスを起動する要求が受信されたのか、どのタイプのコンピュートインスタンスがそれらの要求によって求められたのか、いつコンピュートインスタンスが起動されたのか、どのタイプのコンピュートインスタンスが起動されたのか、どのくらいの期間コンピュートインスタンスが使用されたのか−を入手し、将来の容量ニーズを予測するための統計モデル及び／または機械学習モデルを生成してよい。予想サービス１２０は、円『Ａ』で、生成したモデルを使用して、特定のタイプのコンピュートインスタンスのうちのどのくらいの数のコンピュートインスタンスが（近い）将来のある時点で必要とされると予測されるのかを示す「プールターゲット」を含む予想データ１２８を生成し、この予想データ１２８をフリート再構成サービス１１６に提供することができる。一部の実施形態では、フリート再構成サービス１１６は、容量の空きプールの複数の異なるタイプの「スロット」を構築し、再割り当てし、管理する。
【００１８】
一部の実施形態では、予想データ１２８を入手するために、フリート再構成サービス１１６は、対応するＨＴＴＰ応答メッセージで予想サービス１２０により送り返される、予想データ１２８に対する要求（例えば、予想サービス１２０と関連付けられたエンドポイントに対するＨＴＴＰ要求）を送信する。しかしながら、他の実施形態では、予想サービス１２０は、フリート再構成サービス１１６がアクセスできる（例えば、共用されるストレージまたはメモリの場所、メッセージ待ち行列等）共通してアクセス可能なストレージ場所に予想データ１２８を公開（または記憶）してよい。
【００１９】
円『Ｂ』で、フリート再構成サービス１１６は、プロバイダネットワーク１００の中のコンピュートインスタンススロットの現在の可用性（つまり「余剰分」）を示す現在の容量情報を入手できる。例えば、フリート再構成サービス１１６は、多様な利用可能なリソース（例えば、１つ以上のコンピュートインスタンスタイプのそれぞれに利用可能なスロットの数）を識別する容量情報を入手するために、クラウドマネージャ（ＣＭ）１１２、情報配信／公開サービス、ＣＭデータストア１２４等のプロバイダネットワーク１００の別のサービスに問い合わせする場合もあれば、共用されるストレージ／メモリ場所でルックアップを実行する場合もある。
【００２０】
予想データ１２８及び現在の容量情報を用いて、フリート再構成サービス１１６は、２つを比較して、容量（例えば、スロット）の利用可能な量が、予想データ１２８によればそのコンピュートインスタンスタイプの容量の予測量に満たない（コンピュートインスタンスタイプに相当する）任意のプールを識別できる。識別した任意のコンピュートインスタンスタイプ可用性の不足を用いて、フリート再構成サービス１１６は、識別したいかなる不足も排除しようと試みて、プロバイダネットワーク１００で利用可能なスロットの再構成を実行できる。
【００２１】
例えば、図１に示す例では、予想サービス１２０が、予想データ１２８において、将来、１個の追加の小スロットが必要とされ、２個の追加の中スロットが必要とされ、ゼロ個の追加の大スロットが必要とされることを示すと規定する。しかしながら、多様な実施形態では、予想データ１２８は、さまざまな方法で表現されてよく、したがって（既存の利用済みのスロットを含めて）必要とされると見積もられるスロットの総数、（既存の利用済みのスロットを除外して）必要とされると見積もられるスロットの追加の数等を示してよい。
【００２２】
さらに、現在の可用性は、６個の小スロット（例えば、小スロット１３７Ｃ〜１３７Ｈ）が利用可能であり、１個の中スロット（例えば、中スロット１３９Ｄ）が利用可能であり、１個の大スロット（例えば、大スロット１４１Ｂ）が利用可能であることを示すと規定する。
【００２３】
この場合、フリート再構成サービス１１６は、不足が見積もられるスロットの１つのコンピュートインスタンスタイプのプールを識別できる−つまり、１個の係るスロットしか利用可能ではないにも関わらず、スロットの中コンピュートインスタンスプールが２個の追加のスロットを必要とすると見積もられている。
【００２４】
一部の実施形態では、フリート再構成サービス１１６は、この見積もった不足を検出し、スロット再構成操作を介してそれを排除することができる。例えば、フリート再構成サービス１１６は、少なくとも１個の追加の「中」スロットを提供するように再構成できる１個以上の利用可能なスロットを識別するために、既存の利用可能なスロットの分析を実行できる。
【００２５】
例えば、一部の実施形態では、フリート再構成サービス１１６は、特定の量の他のタイプのスロットを結合して、中スロットを生じさせることができる、及び／または別のタイプのスロットを１個の中スロット−及び潜在的に、中スロットである場合もあれば、ない場合もある他のスロット−に分割できると判断する場合がある。
【００２６】
例として、「時間２」での「オプション１」に関して示すように、フリート再構成サービス１１６は−事前に構成された変換規則に従って、及び／またはコンピュートインスタンスの関係するタイプの必要とされるリソース／特徴の動的な分析に従って−２個の小スロット１３７Ｇ〜１３７Ｈが排除された場合、１個の中スロット（例えば、新しい中スロット１３９Ｅ）が作成されるであろうと判断してよい。別の例として、「時間２」での「オプション２」に関して示すように、フリート再構成サービス１１６は、単一の大スロット１４１Ｂが排除された場合、任意選択で別の新しい中スロット１３９Ｇまたはおそらく２個の小スロット１３７Ｉ〜１３７Ｊとともに、１個の中スロット（例えば、新しい中スロット１３９Ｆ）が作成されるであろうと判断してよい。このようにして、これらのオプションのうちの（少なくとも）１つに従うことによって、例えば以前から存在する中スロット１３９Ｄとともに新しい中スロット１３９Ｅを作成し、以前から存在する中スロット１３９Ｄとともに（少なくとも）１個の新しい中スロット１３９Ｆを作成する等によって見積もられた不足を排除することができ、少なくとも２個の中スロットが利用可能になる。
【００２７】
一部の実施形態では、これらの２つのオプションのうちの１つしか実装され得ないが、他の実施形態では、おそらく−例えば、特定の量の利用可能なコンピュートインスタンスタイプのスロットのうちの閾値数をつねに保つ、特定のタイプのコンピュートインスタンススロットの最大数をつねに保つ等−他の利用可能なスロットプール目標を満たすために両方のオプションに従うであろうことに留意されたい。
【００２８】
再構成を実行するために、フリート再構成サービス１１６は、プロバイダネットワーク１００の特定の実施態様に基づいてさまざまな異なるタイプの操作を実行してよい。例えば、一部の実施形態では、フリート再構成サービス１１６は、リソース及びスロットデータ１２６のセットを更新させて、（例えば、更新メッセージ１３２を介して）変更された利用可能なスロット特徴を反映するために（ＣＭ１１２に関して等、円『Ｂ１』で）さまざまな制御メッセージ１３０を送信する。また、フリート再構成サービス１１６は、１つ以上の電子デバイス１３４Ａ〜１３４Ｃのスロットの利用または非利用を検証すること等、（円『Ｂ２』で）再構成される、選択された１つ以上の電子デバイス１３４Ａ〜１３４Ｃを用いて、直接的にまたは（ＣＭ１１２にコマンドを発行することを介して等）間接的にさまざまな操作を実行してもよい。一部の実施形態に係る例示的な操作を説明する追加の詳細は、図２に関して本明細書で後に提示される。
【００２９】
プロバイダネットワーク１００での動的に管理された−及び再構成された−コンピュートインスタンススロットの恩恵により、追加のコンピュートインスタンスに対する追加のニーズは、より迅速にかつより容易に提供できる。例えば、２個の追加の「中」タイプのコンピュートインスタンススロットが必要とされると見積もられた例を続行すると、フリート再構成サービス１１６が、少なくとも２個の「利用可能な」つまり空いている既存の中コンピュートインスタンスタイプのスロットを生じさせるために、上述した「オプション１」または「オプション２」の少なくとも１つに従ったと仮定する。
【００３０】
その後、起動する２個の中コンピュートインスタンスを求める（電子デバイス１０４からの）配置要求１５０は、プロバイダネットワーク１００のインタフェース１０８の円『１』で受信されてよい。要求−または何が要求により求められるのかを識別する類似したメッセージ−は制御プレーン１２２に渡される場合がある。一例として、容量管理サービスは、要求を検査し、２つの中コンピュートインスタンスが求められていることを識別し、少なくとも２個の係る中スロットが利用可能であるかどうかを判断するために、利用可能な中コンピュートインスタンスのプール内でルックアップを実行してよい。少なくとも２個の係る中スロットが利用可能ではない場合、要求１５０は拒否されるであろう（例えば、不十分な容量を示す対応する応答が電子デバイス１０４に送り返されるであろう）。しかしながら、この場合、フリート再構成サービス１１６の側の先験的な再構成のため、利用可能な少なくとも２個の空いている中コンピュートインスタンスタイプのスロットがあり、このようにして要求１５０はサービスを提供され、ＣＭ１１２に渡される場合がある。
【００３１】
円『２』で、ＣＭ１１２は、配置のための配置操作を始める場合があり、円『３』で、２つの中コンピュートインスタンスの配置場所を識別できる配置サービス１１４に配置要求を発行してよい。例えば、配置サービス１１４は、利用可能な中スロットを識別し、特定の配置規則及び／または事業論理を適用して、所望される中コンピュートインスタンスを配置する利用可能な中スロットのうちのスロットを選択するために、システムの現在の容量（例えば、リソース及びスロットデータ１２６に対する直接的または間接的なアクセス）を把握している。
【００３２】
選択した配置場所（つまりスロット）ごとに、配置サービス１１４は、ＣＭ１１２に、それぞれが、コンピュートインスタンスが配置されるホスト電子デバイス内のリソースの特定のセットを識別する１つ以上のリソースベクトルを含む配置データを返してよい。一例として、２つの不均一メモリアクセス（ＮＵＭＡ）ノード（例えば、同じ接続性のレートを有するメモリを用いた処理能力の「スライス」）−「Ｎ１」及び「Ｎ２」−、ならびに２テラバイト（ＴＢ）のハードディスクを有する電子デバイスを考える。この構成から、以下は、リソースベクトル、＜Ｎ１，０〜１ＴＢ＞、＜Ｎ２，１〜２ＴＢ＞、及び＜Ｎ１，Ｎ２，０〜２ＴＢ＞のいくつかの簡略化された例である。別の例として、リソースベクトルは、ＮＵＭＡノード識別子、処理能力、及びメモリを含むことができるであろう。別の例として、リソースベクトルは、（例えば、処理及び／またはメモリに加えて）コンピュートインスタンス及び／または電子デバイスと関連付けられたいくつかのファイアウォール規則、利用可能な帯域幅の量、利用可能なネットワーキング「バースト」の量、利用可能なグラフィックスプロセッシングユニット（ＧＰＵ）及び／またはアクセラレータデバイス（例えば、全体の一部、またはアドレス範囲）の識別子、持続ストレージの量、ディスクへの書き込み／読み取りのための帯域幅等を含むことがあるであろう。リソースベクトルは、例えば、ＪａｖａＳｃｒｉｐｔ（登録商標）Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、拡張マークアップ言語（ＸＭＬ）等として等、さまざまな異なるタイプのフォーマットで表現される場合がある。
【００３３】
（一部の実施形態では、スロット関係の情報を含む場合がある）このリソースベクトルは、円『４』でリソースベクトル（及びおそらく裏付ける情報）を、中コンピュートインスタンスの起動のためのプロパティの集合体の一部としてインスタンス管理サービス１１８に送信できるＣＭ１１２に返される場合がある。
【００３４】
インスタンス管理サービス１１８は、リソースベクトル情報（及び、一部の実施形態では、その中のスロット情報）を識別し、所望されるスロットの円『５』で、コンピュートインスタンスを起動させることができる。
【００３５】
例えば、一部の実施形態ではインスタンス管理サービス１１８は、ホスト電子デバイスの一部（例えば、ホスト電子デバイスと結合する）である（１つ以上のプロセッサ、ローカルメモリ、物理ネットワークインタフェース等を含む場合がある）オフロードカードに特定の所望されるスロット場所で、必要とされるコンピュートインスタンスを起動させてよい。オフロードカードは、例えば、ハイパーバイザとは無関係に、または電子デバイスの従来のＣＰＵ（複数可）を使用し、実行するハイパーバイザと組み合わせて、ホスト電子デバイスで実行する仮想マシンコンピュートインスタンスを管理できる仮想化マネージャを実装してよい。例えば、一部の実施形態では、オフロードカードによって実装される仮想化マネージャは、仮想マシンをインスタンス化及び／または終了し、このようにしてハイパーバイザがこれらのタスクを実行するニーズを排除することができ、これにより、ハイパーバイザとリソースを争う必要がないため、仮想マシン自体の性能を改善できる。代わりに、一部の実施形態では、インスタンス管理サービス１１８は、コンピュートインスタンスを起動させるために（例えば、ＶＭ管理サーバを介して）ハイパーバイザと代わりに対話してよい。
【００３６】
フリート再構成サービス１１６の側でのホスト電子デバイスの再構成に関する追加の詳細については、一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のためにフリート再構成サービス及びＣＭを関係させる例示的な操作及びメッセージングを示す図である図２を参照する。
【００３７】
図１と同様に、予想データ１２８及び容量情報２０２（容量情報２０２の他のソースも利用し得るが、ここでは、ＣＭ１１２から入手されているとして示される）は、円『１』でフリート再構成サービス１１６により入手され、円『２』で、フリート再構成サービス１１６は、（図１に関して説明した）「オプション１」に従うべきである、つまり２個の小スロット１３７Ｇ〜１３７Ｈが排除され、１個の新しい中スロット１３９Ｅが作成されると判断する。
【００３８】
この例の実施形態では、フリート再構成サービス１１６は、電子デバイス１３４Ａを隔離するために円『３Ａ』により反映された第１の制御メッセージ１３０を送信し、円『３Ｂ』でＣＭ１１２に（更新メッセージ１３２を介して）更新を実行させて、デバイスを（例えば、ＣＭデータストア１２４内に）隔離されているとして設定する。一部の実施形態では、「隔離された」電子デバイスは、コンピュートインスタンスの配置／起動のためのスロットを選択するとき、その電子デバイスを（例えば、配置サービス１１４による）検討から外させる。ただし、この状態は、そのデバイスで実行中の既存のコンピュートインスタンスを関係させる操作−例えば、インスタンスの終了のようなカスタマが開始したワークフロー、インスタンスのボリュームの付加または分離等−を妨げない。したがって、電子デバイスを隔離状態に配置することによって、既存の「空き」スロットは空いたままとなるはずであり、フリート再構成サービス１１６の判断は、これらのスロットの状態の変化により損なわれない。一方、デバイス上での既存の活動は影響を受けずに続行できる。
【００３９】
任意選択で、円『４』で、フリート再構成サービス１１６は、再構成される２個の選択したスロット１３７Ｇ〜１３７Ｈが真に「空」である−つまり、そこで実行している既存のコンピュートインスタンスを有していない−ことを検証できる（２０４）。このチェックは、一部のシステムでは厳密に必要ではない場合があるが、このチェックは、既存のユーザー作業付加がマイナス影響を受けない追加の予防手段として迅速に実行できる。一部の実施形態では、検証２０４を実行するために、フリート再構成サービス１１６は、２個の選択したスロット１３７Ｇ〜１３７Ｈが空であるかどうかを判断するために、（例えば、１つ以上の制御メッセージ１３０を介して）１つ以上のコマンドをＣＭ１１２に発行してよい。例えば、ＣＭ１１２は、選択したスロット１３７Ｇ〜１３７Ｈが各起動に一致する終了を有していたかどうかを判断するために、各スロットの追跡状態を分析してよい、及び／または（例えば、ＣＭデータストア１２４から）コンピュートインスタンスの起動及び／または終了の履歴を分析してよい。
【００４０】
円『５Ａ』で、フリート再構成サービス１１６は、２個のスロットを登録解除するための別の制御メッセージ（例えば、「ＤｅｒｅｇｉｓｔｅｒＳｌｏｔ」メッセージ）を送信する場合があり、これにより、ＣＭ１１２は２個のスロットを削除するために円『５Ｂ』で更新を実行する。例えば、２個のスロットを削除することは、「スロット」及び／または２個のスロットの（図３に関して本明細書で以下に説明する）「スロット情報」データを削除することを含む場合がある。一部の実施形態では、２個のスロットの削除は、電子デバイスの総スロットの数を調整すること（ここでは、削除すること）、２個のスロットに対応する利用可能なスロットの数を調整すること（ここでは、２だけ「小」コンピュートインスタンス可用性プールを削減すること）等をさらに含んでよい。
【００４１】
円『６Ａ』で、フリート再構成サービス１１６は、新しいスロットを追加するための別の制御メッセージ１３０（例えば、「ＲｅｇｉｓｔｅｒＳｌｏｔ」メッセージ）を送信する場合があり、これにより、ＣＭ１１２は円『６Ｂ』でスロットを追加するために更新を実行する。例えば、スロットを加えることは、「スロット」及び／または新しいスロットのための（図３に関して、本明細書で以下に説明する）「スロット情報」データを加えるであろう。一部の実施形態では、スロットの付加は、電子デバイスの総スロットの数を調整すること（ここでは、加えること）、スロットに対応する利用可能なスロットの数を調整すること（ここでは、１だけ「中」コンピュートインスタンス可用性プールを増加させること）等をさらに含んでよい。
【００４２】
一部の実施形態では、円『５Ａ』及び『５Ｂ』の「登録解除」操作は、同じトランザクションの一部として円『６Ａ』及び『６Ｂ』の「登録」操作とともに実行されてよい。例えば、２個のスロットを登録解除するべきであること、及び円『５Ａ』で、１個の新しいスロットを登録すべきであることを示す単一の制御メッセージ１３０を送信することができ、結果的に、２個のスロットを削除し、新しいスロットを追加し、任意選択で単一のトランザクションの一部としてデバイススロット情報を更新するために、１つ以上の更新メッセージ１３２が送信される。
【００４３】
円『７Ａ』で、フリート再構成サービス１１６は、デバイスを隔離された状態から脱出させるために別の制御メッセージ１３０を送信する場合があり、これによりＣＭ１１２はデバイスを「生産」に設定し直すことによってデバイスを隔離された状態から脱出させるために、円『７Ｂ』で更新を実行する。この点で、電子デバイスは、再び、配置サービス１１４による新しいコンピュートインスタンスの配置／起動のために潜在的に選択される場合があり、「新しい」スロットは、２個の現在は削除されているスロットが検討から排除される間、露呈される。
【００４４】
一部の実施形態で利用できるリソース及びスロットデータ１２６の例について、一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理の一部として使用できる例示的なデータを示す図である図３を参照する。
【００４５】
一部の実施形態では、ＣＭデータストア１２４は、１つ以上の制御プレーンエンティティを介して−直接的にまたは間接的に−アクセスできるデータベースを含む。ＣＭデータストア１２４は、上述したリソース及びスロットデータ１２６を含む場合があり、リソース及びスロットデータ１２６は、リソースベクトル３０２の集合体（またはテーブル）、スロットサイズ３０４の集合体、「スロット情報」３０６の集合体、及び／またはスロット３０８の集合体の１つ以上を含む場合がある。
【００４６】
リソースベクトル３０２の各エントリ（つまり、行、レコード等）は、本明細書に説明するように、リソースベクトル（ＲＶ）識別子（ＩＤ）、及び正規化され、符号化されたリソースベクトルを含んでよい。同様に、スロットサイズ３０４の各エントリは、スロットサイズ（ＳＳ）ＩＤ、及びスロットの特定の「サイズ」または「タイプ」を示す正規化されたスロットサイズ値を含んでよい。
【００４７】
一部の実施形態では、リソース及びスロットデータ１２６は、各エントリが（プロバイダネットワークの中で特定のホスト電子デバイスを一意に識別する）電子デバイス識別子、及びその電子デバイスの文脈の中で一意であるスロット番号を含む、「スロット情報」３０６集合体を含む。一部の実施形態では、各エントリは、特定のスロットサイズを識別するために（例えば、外部キー関係を介して、サンプル参照を介して等）任意選択で使用されてよいＳＳ  ＩＤを含んでもよい。一部の実施形態では、各エントリは、スロットの特徴を記述する（リソースベクトル３０２の）特定のリソースベクトルを介して識別するために使用されてよいＲＶ  ＩＤを含んでもよい。
【００４８】
一部の実施形態では、リソース及びスロットデータ１２６は、利用済みのスロットを追跡する「スロット」３０８構造を含み、各エントリは、ホスト電子デバイス識別子、スロット番号識別子等のフィールド、及びスロット内でコンピュートインスタンスにより利用されるネットワークアドレス、そのスロット内のコンピューティング新スタンスのインスタンス識別子等の１つ以上の利用値、及び／または任意の他の数の値を含んでよい。
【００４９】
このようにして、多様な実施形態では、このリソース及びスロットデータ１２６は、本明細書で説明する操作のために有用な情報を決定するために使用できる。例えば、一部の実施形態では、プロバイダネットワーク内の利用可能なスロットは、スロット３０８構造内に対応するエントリを有していないスロット情報３０６エントリのエントリを選択することによって識別できる。別の例として、スロットの現在の利用は、スロット３０８構造に問い合わせることによって決定できる。言うまでもなく、リソース及びスロットデータ１２６の多くの他の用途及びタイプが多様な実施形態で使用できる。
【００５０】
一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための例示的な操作４００を図４の流れ図に示す。操作４００（または本明細書に説明する他のプロセス、または変形形態、及び／またはその組み合わせ）の一部またはすべては、実行可能な命令で構成された１つ以上のコンピュータシステムの制御下で実行され、ハードウェアまたはその組み合わせにより、１つ以上のプロセッサ上で集合的に実行するコード（例えば、実行可能な命令、１つ以上のコンピュータプログラム、または１つ以上のアプリケーション）として実装される。コードは、例えば１つ以上のプロセッサにより実行可能な命令を含むコンピュータプログラムの形でコンピュータ可読記憶媒体に記憶される。コンピュータ可読記憶媒体は非一過性である。一部の実施形態では、操作４００の１つ以上（またはすべて）は、他の図の制御プレーンまたはフリート再構成サービスにより実行される。
【００５１】
操作４００は、ブロック４０５で、コンピュートインスタンスプールターゲットを入手することを含む。ブロック４０５は、予想サービスから予想データの一部としてコンピュートインスタンスプールターゲットを入手するフリート再構成サービスにより実行されてよい。入手することは、予想データに対する要求メッセージを送信すること、予想データを含む応答メッセージを受信すること、（予想データが予想サービスにより配置された）メッセージ待ち行列から予想データを読み取ること等を含んでよい。一部の実施形態では、予想データは、履歴コンピュートインスタンス利用情報に基づいて予想サービスにより生成され、１つ以上のタイプのコンピュートインスタンスのそれぞれに、来るべき時点（または時間範囲）で利用されることが予想される、そのタイプのコンピュートインスタンスの総量（または追加量）を含むコンピュートインスタンスプールターゲットを含んでよい。
【００５２】
操作４００は、ブロック４１０で、現在の可用性情報（例えば、１つ以上のコンピュートインスタンスタイプのためのスロットの現在の可用性）を入手することを含む。ブロック４０５は、フリート再構成サービスにより実行されてよく、直接的にまたは間接的に（例えば、ＣＭを介して）利用できる１つ以上のコンピュートインスタンスタイプのスロットの現在の数を入手することを含んでよい。このデータは、ＣＭデータストアが記憶するリソース及びスロットデータから入手されてよい。
【００５３】
ブロック４１５で、操作４００は、コンピュートインスタンスプールが不安定な状態にあるかどうかを判断することを含む。ブロック４１５は、フリート再構成サービスにより実行されてよく、コンピュートインスタンスタイプごとに、（現在の可用性情報からの）スロットの利用可能な数が（コンピュートインスタンスプールターゲットによる）そのタイプのスロットの予測数以上であるかどうかを判断することを含んでよい。一部の実施形態では、ブロック４１５は、コンピュートインスタンスタイプごとに、スロットの利用可能な数が、そのタイプのスロットの予測数よりも多いスロットの少なくとも１つの閾値量（例えば、１個、２個、５個、１０個等）を含むかどうかを判断することを含んでよい。
【００５４】
コンピュートインスタンスタイプのすべてがバランスがとれた状態であるとして識別される場合、フローはＹＥＳ分岐に従って続行し、終了する、またはある時点で操作４００を再び開始してよい。コンピュートインスタンスタイプの１つ以上がバランスがとれた状態ではないとして識別されると、フローは、ＮＯ分岐に従ってブロック４２０に続行してよい。
【００５５】
ブロック４２０で、操作４００は、所望されるスロットを作成するために潜在的に利用し得る利用可能なスロットを有する「候補」電子デバイスのリストを決定することを含む。一部の実施形態では、ブロック４２０は、フリート再構成サービスがＣＭ１１２に（またはＣＭデータストア１２４に直接的に）利用可能なスロットを有する電子デバイスのリストを返す要求を送信することによって実行される。
【００５６】
ブロック４２５で、操作４００は、どのタイプのスロットが（例えば、見積もられた需要に従ってコンピュートインスタンスプールのバランスをとるために）作成されることが所望されるのか、及びどのくらいの数の各タイプのスロットが加えられることが所望されるのかを判断することを含む。ブロック４２５はフリート再構成サービスにより実行されてよく、一例として、スロットタイプの現在の可用性を超えるプールターゲットから所望される数（のスロットタイプ）を有するスロットタイプを識別すること、これらの値の差をスロットタイプのためのスロットの所望される数として決定することによって、ブロック４１０とともにまたはブロック４１０の後に実行されてよい。
【００５７】
再構成される利用可能な１個以上のスロットを有する候補電子デバイスの１つ以上のそれぞれについて、操作のセットが実行されてよい。一部の実施形態では、これらの操作は、複数のエンティティを使用し、同時に実行できるが、これらの操作は、単一のエンティティ（例えば、スレッド、プロセス、または計算ユニット）により図示されるように実行することができる。操作は、候補電子デバイスのセットのそれぞれが処理されるまで、または（例えば、ブロック４２５から）所望されるスロットの所望されるタイプ及び数のすべてが作成されるまで実行される。
【００５８】
候補電子デバイスのうちの１つの選択した電子デバイスにより、ブロック４３５で、電子デバイスは隔離される。ブロック４３５は、電子デバイスを隔離する要求メッセージを受取人サービス（例えば、ＣＭ）に送信することを含んでよく、これにより、デバイスが隔離され、したがってその結果（デバイスが隔離されたステータスに留まる間）起動されるまたは起動されると指定されるコンピュートインスタンスを有する資格がないことを反映するためにデータストアが更新される。このようにして、一部の実施形態では、電子デバイスは、他の要求のためにコンピュートインスタンスを起動するための潜在的な配置場所としての検討から外される。この時点で、電子デバイスの他の既存のコンピュートインスタンスは影響なく動作し続け得、関連付けられたカスタマはこのプロセスを通してこれらのコンピュートインスタンスを使用し続けることができる。
【００５９】
任意選択で、ブロック４４０で、操作４００は、再構成されるスロット（複数可）の非利用を検証することを含む。ブロック４４０は、フリート再構成サービスにより実行されてよく、コンピュートインスタンスがスロットで実行中であるかどうかを示すであろうスロットについての情報について、ＶＭ管理サーバ、ハイパーバイザ等に問い合わせることを含んでよい。一部の実施形態では、ブロック４４０はＣＭによって部分的に実行され、このことは各スロットの状態を追跡するデータ構造内でルックアップを実行することを含む場合もあれば、スロットが利用されるかどうかをＣＭが判断できるようにする電子デバイスに、ＣＭが要求を送信することを含む場合もある。
【００６０】
ブロック４４５で、操作４００は、任意選択で、利用されると仮定されるのではなく、実際に利用されているスロットのいずれかが存在するかどうかを判断することを含む。ブロック４４５は、フリート再構成サービスにより実行されてよく、ブロック４４０の検証に基づく場合がある。例えば、検証から返される結果データは、任意のコンピュートインスタンスがスロット（複数可）で実行するかどうかを示す場合があり、このようにしてブロック４４５は、これが当てはまるかどうかを判断するために結果データを分析することを含む場合がある。当てはまる場合、フローは、電子デバイスが隔離から取り除かれるブロック４６０に続行してよく、フローは、例えば別の電子デバイスを分析し、ブロック４３５を始める等のために戻って続行してよい。
【００６１】
それ以外の場合、操作４００は、所望されるスロットを作成するために、利用できる電子デバイスのスロットのいずれかを結合できるのか、それとも分割（つまり「再構成」）できるのかを判断することを有するブロック４４７で続行する。例えば、第１のコンピュートインスタンスタイプ（例えば、「大」）の場合、ブロック４４７は、集合的に（例えば、大スロットで）置換されるであろう特定の電子デバイス（例えば、１６個の「極小」コンピュートインスタンススロット、または２個の「中」コンピュートインスタンススロット）で第２のコンピュートインスタンスタイプのグループを識別することを含むであろう。別の例として、第１のコンピュートインスタンスタイプ（例えば、「中」）の場合、ブロック４４７は、特定の電子デバイス（例えば、２個の「小」コンピュートインスタンススロット）での第２のコンピュートインスタンスタイプ、及び／または第１のコンピュートインスタンスタイプのためのスロットを生じさせるために置換されるであろう第３のインスタンスタイプ（例えば、単一の「大」または単一の「特大」）のグループを識別することを含むであろう。
【００６２】
一部の実施形態では、ブロック４４７は、スロットを再構成できるかどうか、及びスロットをどのようにして再構成できるのかを決定するときにスロットの特徴を考慮に入れる場合がある。例えば、一部の実施形態では、ＮＵＭＡ境界が考慮に入れられる場合があり、例えば異なるＮＵＭＡノードでのスロットは、一部の状況では、「より大きい」スロットを形成するために結合されない可能性がある。したがって、一部の実施形態は、ＮＵＭＡノードに広がる潜在的なスロットを「作成する」ことを試行しない場合があり、このことが、係るスロットに配置されるであろうコンピュートインスタンスの性能低下につながる場合があるであろう。一部の実施形態では、スロットをどのようにして再構成できるのかを決定するときに、他のコンピュータアーキテクチャの特徴を同様に考慮に入れる場合がある。例えば、特定のストレージまたはメモリ（例えば、Ｌ２キャッシュ及び／またはＬ３キャッシュ、またはそのセクション、メモリバンク等）は、特定のスロットと関連付けられてよく、したがって、一部の状況では、異なるメモリ場所（例えば、キャッシュ）と関連付けられる２個のスロットは、異なるタイプのスロットを生じさせるために潜在的に結合されない場合がある。したがって、一部の実施形態は、特定のタイプのコンピュートインスタンスをサポートするために最適なアーキテクチャを有するスロットを作成する再構成プロセスを利用できる。一部の実施形態では、ブロック４４７での決定は、最初に、ＮＵＭＡ境界が上述したように尊重されることを確実にし、次いでキャッシュラインを共有するプロセッサを有するスロットを発見しようと試行することを含む。
【００６３】
１個以上の既存のスロットが１個以上の所望されるスロットで置換されるために識別されると、操作のフローはブロック４５０で続行し、既存のスロット（複数可）を登録解除する。ブロック４５０は、フリート再構成サービスにより実行することができ、これらの１個以上のスロットの識別子を含むスロット（複数可）を登録解除するための制御メッセージを送信することを含む場合があり、これにより、１個以上のスロット（及び／または「スロット情報」）エントリが、ＣＭデータストアのリソース及びスロットデータで削除（または修正）される場合がある。ブロック４５５で、操作４００は、新しい所望されるスロット（複数可）を登録することを含む。ブロック４５５は、フリート再構成サービスにより実行することができ、スロットごとのリソースベクトルを含む場合がある１個以上のスロット（複数可）を登録するために制御メッセージを送信することを含む場合があり、これにより１個以上のスロット（及び／または「スロット情報」及び／またはリソースベクトル）エントリが、ＣＭデータストアのリソース及びスロットデータに挿入される場合がある。一部の実施形態では、ブロック４５０及び４５５は、単一の「トランザクション」操作として実行されてよく、したがってこれらのブロックの両方とも実行される、または（なんらかの故障の場合）どちらも実行されない。
【００６４】
この時点で、フローは任意選択で、電子デバイスの他の利用可能なスロットを、残っている所望されるスロットタイプを満たすように再構成できるかどうかを判断するための追加の分析のためにブロック４４７に戻って続行してよい。この構成は、特定の所望されるスロットのために再構成できるスロットのセットの検出時に再構成が即座に発生する、欲張りアルゴリズム方式の下で使用されてよい。しかしながら、他の実施形態では、１個の−または複数の−所望されるスロットを満たすように再構成できるすべての考えられる既存のスロットを識別するためにブロック４４７の一部として、より完全な分析を実行することができ、したがってブロック４５０及び４５５は複数のスロットのために実行できる。
【００６５】
特定の電子デバイスのためのプロセスの完了時、ブロック４６０で、操作４００は、電子デバイスを非隔離状態にすることを含む。ブロック４６０は、フリート再構成サービスにより実行することができ、電子デバイスを非隔離状態にする要求メッセージを受取人サービス（例えば、ＣＭ）に送信することを含む場合があり、これにより、デバイスがもはや隔離されておらず（例えば、「生産」ステータスに戻され）、したがってその結果、再びコンピュートインスタンスを起動させるために選択される資格があることを反映するためにデータストアが更新される。この後、フローは戻って処理を続行し、追加のスロットが作成されることを所望され、追加の候補電子デバイスが存在する場合、別の候補電子デバイスを選択することができ、ブロック４３５〜４６０を再び実行できる。
【００６６】
図４のこれらの操作４００は、言うまでもなく異なる環境で異なるように実行することができ、より多くの、より少ない、及び／または異なる操作を含んでよい。例えば、図５は、一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を介してプロバイダネットワークで効率的な容量管理を実行するために少なくとも部分的に同時に作業する複数のワーカー５００Ａ〜５００Ｂを示す、フロー及びシーケンスの複合図である。これらの操作の一部は、類似する参照番号の使用により示されるように、（技術的でないのであれば）少なくとも概念的に図４の操作に類似している。ただし、係る操作は異なるときに、異なるエンティティによって等実行されてよい。
【００６７】
この例では、フリート再構成サービス１１６は、複数のエンティティ−ここでは、マスタ５０２及び２つのワーカー５００Ａ〜５００Ｂ−を利用する。これらのエンティティのそれぞれは、別々のアプリケーション、スレッド、プロセス、関数、コンピュートインスタンス等である場合があり、一部のまたはすべてのエンティティは、同じまたは異なった場所、データセンタ等で共通のまたは異なる電子デバイスにより実行されてよい。この場合、２つのワーカー５００Ａ〜５００Ｂが利用されているとして示される。ただし、異なる実施形態では、より多くのまたはより少ないワーカーを使用できる。同様に、本実施形態では、ワーカー５００Ａ〜５００Ｂとは別個であるマスタ５０２エンティティが利用されているとして示される。ただし、一部の実施形態では、ワーカーの１つ（例えば、ワーカー５００Ａ）がマスタ５０２の機能を果たしてもよい。
【００６８】
図５に示すように、フリート再構成サービス１１６のマスタ５０２（例えば、制御サーバ／アプリケーション）は、ブロック４２５で、どの１つのまたは複数のタイプのスロットが所望されるのか、及び所望されるタイプごとのスロットの数を決定することができる。例えば、マスタ５０２は、本明細書に説明するように、コンピュートインスタンスプールターゲット情報及び／または現在の可用性情報を入手し、２つを比較して相違を識別してよい。より多くのまたはより少ないワーカーを利用し得るが、マスタ５０２は、１つ以上のワーカー−ここでは、ワーカー５００Ａ及び５００Ｂ−にメッセージ５５０（または命令／コマンド）のセットを送信し、一部の実施形態では、マスタ５０２自体がワーカー５００Ａの１つとしての機能を果たしてよい。
【００６９】
メッセージ５５０の受信時、第１のワーカー５００Ａ及び第２のワーカー５００Ｂは、それぞれ、考えられるどのスロットタイプ及びその数を、関連付けられた電子デバイス（つまり「ホスト」）のセットが再構成を介して潜在的に提供できるのかを識別するために、操作のセットを始めてよい。これらの操作は、全体的にまたは部分的に同時にワーカー全体で実行されてよい。例えば、各ワーカーは、１つ以上の定義されたラックの、１つ以上のデータセンタの、１つ以上のタイプ等のそれらのデバイス等の電子デバイスの定義されたセットと関連付けられて（または「管理して」）よい。したがって、各ワーカーは、ブロック４３５Ａ〜４３５Ｂで、電子デバイスの関連付けられたセットを隔離する場合があり、このことは、本明細書に説明するように、電子デバイス（複数可）を隔離する要求メッセージを送信することを含む場合があり、これにより、デバイス（複数可）が隔離されており、したがってその結果起動されるまたは起動されるように指定される新しいコンピュートインスタンスを有する資格がないことを反映するためにデータストアまたはデータ構造が更新される。
【００７０】
１つ以上の電子デバイスを隔離すると、各ワーカーは、ブロック４１０Ａ〜４１０Ｂで、デバイスのこれらの関連付けられたセットのために現在の可用性情報（例えば、利用可能なスロットの数及びタイプ）を入手し、ブロック５０４Ａ〜５０４Ｂで、電子デバイスの関連付けられたセットの利用可能なスロットの考えられる再構成を決定できる。例えば、ワーカーは、「より大きい」スロットタイプのための「より大きいスロット」を形成するために、利用可能なスロットのうちのどれをスロットの他と統合できるのか、及び／または「より小さい」スロットタイプのための「より小さい」スロットを形成するために、利用可能なスロットのうちのどれを分割できるのかを決定することができる。例えば、４個の空いている「中」スロットを識別すると、ワーカーは、４個の空いている「中」スロットを１個の「特大」スロット、または２個の「大きい」スロット、または１個の「大きい」スロット及び８個の「小さいスロット」等に統合できるであろうと判断してよい。とりわけ、一部の実施形態では、この包括的な判断は、きわめて短い時間量内に利用可能なスロットで可能であるすべての考えられる再構成を識別できる。一部の実施形態では、判断は、例えば、新規に作成されたスロットがＮＵＭＡ境界全体に広がらないこと、及び／または新規に作成されたスロットが同じまたは近傍のコンピュータアーキテクチャサポート（例えば、メモリ）等を利用することを確実にするために、上述したように、スロットタイプの特定の特徴及びスロットタイプの基礎にある計算アーキテクチャを考慮に入れる場合がある。
【００７１】
ワーカーは、次いでメッセージ５５２を介し、マスタ５０２に潜在的な再構成データを送信する場合があり、マスタ５０２は、このようにして所望される量のスロットタイプ及びその数を満たすために、ワーカーのすべてによって管理される電子デバイスのすべてにわたってどの１個または複数のスロットを構成するべきかを判断できる。マスタは、受信した潜在的な再構成データに加えて、さまざまなタイプの情報のいずれかを使用し、この判断を下すことができる。例えば、マスタ５０２は、多様な場所（例えば、ラック、ネットワーク、データセンタ、地理的領域）全体で特定のタイプのスロットを分散する、（例えば、特定の場所での特定のスロットに対する前提としているニーズのために）多様な場所で特定のタイプのスロットを統合する等を求める場合がある。
【００７２】
したがって、マスタ５０２は、再構成を実行する方法に関してワーカーに命令する再構成割り付けメッセージ５５４をワーカー５００Ａ〜５００Ｂに送信できる。例えば、第１のワーカー５００Ａに送信される再構成割り付けメッセージ５５４は、ワーカー５００Ａが、２つの異なる電子ホストデバイスでスロットを再構成することを示す場合があり、ワーカー５００Ａは、デバイスごとに、任意の必要とされるスロットを登録解除し、（再び１つの操作または２つの操作の一部であってよい、ブロック４５０Ａ／４５５Ａで）新しいスロットを登録することによって相応してそれらのスロットを置換し、次いでブロック５１０Ａで電子デバイスの関連付けられた「第１の」セットを非隔離状態としてよい。同様に−ワーカー５００Ｂ等の−他のワーカーは、関連付けられた電子デバイスの独自の「第２の」セットを用いて類似した操作を実行してよく、このことは他のワーカーの再構成と全体的にまたは部分的に同時に実行されてよい。
【００７３】
さらに操作の別のセットを、一部の実施形態に係る動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための操作６００を示す流れ図である図６に示す。一部の実施形態では、操作６００の１つ以上（またはすべて）は、他の図の制御プレーンにより実行される。
【００７４】
具体的には、ブロック６０５／６１０／６１５は、他の図のフリート再構成サービスにより実行されてよく、操作の動的再割り付け段階６５０の一部として実行されてよい。操作の動的再割り付け段階６５０は、「オフライン」で、したがってコンピュートインスタンスを起動する任意の特定の要求に応えて直接的にではなく起こってよい。
【００７５】
操作６００は、ブロック６０５で、プロバイダネットワークでの第１のコンピュートインスタンスタイプのための利用可能なスロットの数が、第１のコンピュートインスタンスタイプのための必要とされるスロットの数に満たないと判断することを含む。各スロットは、ホスト電子デバイスによって提供できるコンピューティングリソースの組み合わせであってよい。
【００７６】
操作６００は、ブロック６１０で、第２のコンピュートインスタンスタイプのコンピュートインスタンスのために電子デバイスの第１の１個以上のスロットを登録解除することを含む。電子デバイスは、第２のコンピュートインスタンスタイプの対応する１つ以上のコンピュートインスタンスが実行する１個以上の他のスロットをさらに含む。一部の実施形態では、第１の１個以上のスロットを登録解除することは、電子デバイスの識別子及び第１の１個以上のスロットの１つの識別子を含むスロット登録解除要求メッセージを送信することを含む。
【００７７】
操作６００は、ブック６１５で、第１のコンピュートインスタンスタイプのコンピュートインスタンスのために、電子デバイスの第２の１個以上のスロットを登録することを含む。一部の実施形態では、第１の１個以上のスロットは複数のスロットを含み、第２の１個以上のスロットは単一のスロットを含む。しかしながら、他の実施形態では、第１の１個以上のスロットは単一のスロットを含み、第２の１個以上のスロットは複数のスロットを含む。一部の実施形態では、第２の１個以上のスロットを登録することは、電子デバイスの識別子及び１個以上のスロットの１個の１つ以上の特徴を記述するリソースベクトルを含むスロット登録要求を送信することを含む。一部の実施形態では、第１のコンピュートインスタンスタイプのコンピュートインスタンスのために電子デバイスの第２の１個以上のスロットを登録することは、第２の１個以上のスロットの第１のスロットのスロット情報データ構造にレコードを挿入することを含み、レコードは、電子デバイスの識別子、電子デバイスの文脈で一意であるスロット番号の識別子、及びリソースベクトルの識別子を含み、リソースベクトルは、第１のスロットの１つ以上の特徴を記述する。
【００７８】
一部の実施形態では、ブロック６１０及び６１５は、アトミックに実行される単一のトランザクション操作に結合される。
【００７９】
一部の実施形態では、操作６００は、ブロック６１０で、第１の１個以上のスロットを登録解除する前に、電子デバイスを隔離に配置することをさらに含む。隔離の間、電子デバイスは、第２のコンピュートインスタンスタイプの１つ以上のコンピュートインスタンスを実行し続けるが、その結果追加のコンピュートインスタンスを配置させるために利用できない。さらに、ブロック６１５で第２の１個以上のスロットを登録した後、操作６００は、電子デバイスを隔離から取り除くことをさらに含む。
【００８０】
一部の実施形態では、電子デバイスを隔離に配置した後、操作６００は、第１の１個以上のスロットがいずれのコンピュートインスタンスも実行していないことを検証することをさらに含む。一部の実施形態では、電子デバイスを隔離に配置した後、かつ電子デバイスを隔離から取り除く前に、操作６００は、電子デバイスで実行する第２のコンピュートインスタンスタイプの１つ以上のコンピュートインスタンスの少なくとも１つを関係させるアクションを実行する要求を受信すること、及びアクションを実行することをさらに含む。アクションは、例えば、１つ以上のコンピュートインスタンスの少なくとも１つを終了すること、１つ以上のコンピュートインスタンスの少なくとも１つにボリュームを加えることまたは１つ以上のコンピュートインスタンスのうちの少なくとも１つからボリュームを分離すること等を含む場合がある。
【００８１】
また、操作６００は、ブロック６１５で登録された「新しい」第２の１個以上のスロットを利用してよい、ブロック６２０／６２５を含む第２の配置段階６５５を含んでもよい。この第２の配置段階６５５は「インライン」であってよく、したがってコンピュートインスタンスを起動する要求を含んでよい。
【００８２】
操作６００は、ブロック６２０で、第１のコンピュートインスタンスタイプのコンピュートインスタンスを起動する要求を受信することを含む。ブロック６２０は、例えば、プロバイダネットワークのインタフェースにより、プロバイダネットワークの制御プレーンにより、プロバイダネットワークのＣＭにより等、実行されてよい。
【００８３】
一部の実施形態では、操作６００は、配置サービスに、第１のコンピュートインスタンスタイプのコンピュートインスタンスのためのスロットを選択する要求を送信すること、配置サービスから、第２の１個以上のスロットのうちの１個の１つ以上の特徴を記述する、電子デバイスの第２の１個以上のスロットのうちの１個に対応するリソースベクトルを含む応答を受信すること、及びリソースベクトルに基づいて第１のコンピュートインスタンスタイプのコンピュートインスタンスのための配置場所として、電子デバイスの第２の１個以上のスロットのうちの１個を識別することをさらに含む。
【００８４】
また、操作６００は、電子デバイスが、第２のコンピュートインスタンスタイプの１つ以上のコンピュートインスタンスを実行し続ける一方、ブロック６２５で、電子デバイスの第２の１個以上のスロットのうちの１個で第１のコンピュートインスタンスタイプのコンピュートインスタンスを実行することも含む。ブロック６２０は、メッセージ／コマンドを送信してコンピュートインスタンスを実行させることによって、例えば、プロバイダネットワークの制御プレーンにより、プロバイダネットワークのインスタンス管理サービスにより等、実行されてよい。
【００８５】
追加の詳細のために、図７は、一部の実施形態に係る例のプロバイダネットワーク環境を示す。プロバイダネットワーク７００は、カスタマが、１つ以上のデータセンタの１つまたは複数のプロバイダネットワークの中のデバイスで実装される、計算リソース及びストレージリソースを含むが、これに限定されるものではない仮想リソースのインスタンス７１２を購入する、借りる、またはそれ以外の場合入手することを可能にする１つ以上の仮想化サービス７１０を介してカスタマにリソースの仮想化を提供してよい。ローカルインターネットプロトコル（ＩＰ）アドレス７１６は、リソースインスタンス７１２と関連付けられてよい。ローカルＩＰアドレスは、プロバイダネットワーク７００上のリソースインスタンス７１２の内部ネットワークアドレスである。一部の実施形態では、プロバイダネットワーク７００は、カスタマがプロバイダ７００から入手し得るパブリックＩＰアドレス７１４及び／またはパブリックＩＰアドレス範囲（例えば、インターネットプロトコルバージョン４（ＩＰｖ４）またはインターネットプロトコルバージョン６（ＩＰｖ６）のアドレス）を提供してもよい。
【００８６】
従来、プロバイダネットワーク７００は、仮想化サービス７１０を介して、サービスプロバイダのカスタマ（例えば、クライアントネットワーク７５０Ａを運用するカスタマ）がカスタマに割り付けられたまたは割り当てられた少なくともいくつかのパブリックＩＰアドレス７１４を、カスタマに割り付けられた特定のリソースインスタンス７１２と動的に関連付けることを可能にしてよい。また、プロバイダネットワーク７００は、カスタマに割り当てられた１つの仮想化されたコンピューティングリソースインスタンス７１２に以前にマッピングされたパブリックＩＰアドレス７１４を、やはりカスタマに割り当てられる別の仮想化されたコンピューティングリソースインスタンス７１２に再マッピングすることを可能にしてもよい。サービスプロバイダにより提供されるコンピューティングリソースインスタンス７１２及びパブリックＩＰアドレス７１４を使用し、カスタマネットワーク７５０Ａの事業者等のサービスプロバイダのカスタマは、例えばカスタマ固有のアプリケーションを実装し、インターネット等の中間ネットワーク７４０でカスタマのアプリケーションを提示してよい。中間ネットワーク７４０上の他のネットワークエンティティ７２０は、次いでカスタマネットワーク７５０Ａにより公開された宛先パブリックＩＰアドレス７１４に対するトラフィックを生成してよい。トラフィックは、サービスプロバイダデータセンタに送られ、データセンタで、ネットワーク基盤を介して、宛先パブリックＩＰアドレス７１４に現在マッピングされている仮想化されたコンピューティングリソースインスタンス７１２のローカルＩＰアドレス７１６に送られる。同様に、仮想化されたコンピューティングリソースインスタンス７１２からの応答トラフィックは、ネットワーク基盤を介して中間ネットワーク７４０に戻り、ソースエンティティ７２０に送られてよい。
【００８７】
本明細書で使用されるローカルＩＰアドレスは、プロバイダネットワークでのリソースインスタンスの内部ネットワークアドレスを指す。ローカルＩＰアドレスは、プロバイダネットワークの中で変更可能であるにすぎない。プロバイダネットワークの外部で発生するネットワークトラフィックは、ローカルＩＰアドレスに直接的に送られない。代わりに、トラフィックはリソースインスタンスのローカルＩＰアドレスにマッピングされるパブリックＩＰアドレスを使用する。プロバイダネットワークは、ネットワークアドレス変換（ＮＡＴ）またはパブリックＩＰアドレスからローカルＩＰアドレス及び逆の場合のマッピングを実行するための類似した機能性を提供するネットワーキングデバイスまたは器具を含んでよい。
【００８８】
パブリックＩＰアドレスは、サービスプロバイダまたはカスタマのどちらかにより、リソースインスタンスに割り付けられるインターネット可変ネットワークアドレスである。パブリックＩＰアドレスに送られるトラフィックは、例えば１：１ＮＡＴにより変換され、リソースインスタンスのそれぞれのローカルＩＰアドレスに転送される。
【００８９】
一部のパブリックＩＰアドレスは、特定のリソースインスタンスにプロバイダネットワークインフラストラクチャにより割り付けられてよい。これらのパブリックＩＰアドレスは、標準パブリックＩＰアドレス、または単に標準ＩＰアドレスと呼ばれてよい。一部の実施形態では、リソースインスタンスのローカルＩＰアドレスに対する標準ＩＰアドレスのマッピングは、すべてのリソースインスタンスタイプのデフォルトの起動構成である。
【００９０】
少なくともいくつかのパブリックＩＰアドレスは、プロバイダネットワーク７００のカスタマに割り当てられてよい、またはプロバイダネットワーク７００のカスタマにより入手されてよい。カスタマは、次いで割り当てられたＩＰアドレスを、カスタマに割り当てられた特定のリソースインスタンスに割り付けてよい。これらのパブリックＩＰアドレスは、カスタマパブリックＩＰアドレスまたは単にカスタマＩＰアドレスと呼ばれてよい。標準ＩＰアドレスの場合でのようにプロバイダネットワーク７００によりリソースインスタンスに割り付けられる代わりに、カスタマＩＰアドレスは、例えばサービスプロバイダにより提供されるＡＰＩを介して、カスタマによりリソースインスタンスに割り付けられてよい。標準ＩＰアドレスとは異なり、カスタマＩＰアドレスはカスタマアカウントに割り当てられ、必要に応じてまたは所望されるように、それぞれのカスタマにより他のリソースインスタンスに再マッピングできる。カスタマＩＰアドレスは、特定のリソースインスタンスではなくカスタマのアカウントと関連付けられ、カスタマは、カスタマがそのＩＰアドレスをリリースすることを選ぶまでそれを制御する。従来の静的なＩＰアドレスとは異なり、カスタマＩＰアドレスは、カスタマが、カスタマのパブリックＩＰアドレスをカスタマのアカウントと関連付けられた任意のリソースインスタンスに再マッピングすることによって、リソースインスタンスまたは可用性ゾーンの失敗を隠すことを可能にする。カスタマＩＰアドレスは、例えば、カスタマが、カスタマＩＰアドレスを置換リソースインスタンスに再マッピングすることによってカスタマのリソースインスタンスまたはソフトウェアに関わる問題を避けて設計できる（ｅｎｇｉｎｅｅｒ  ａｒｏｕｎｄ  ｐｒｏｂｌｅｍｓ）ようにする。
【００９１】
図８は、一部の実施形態に従ってストレージ仮想化サービス及びハードウェア仮想化サービスを提供する例のプロバイダネットワークのブロック図である。ハードウェア仮想化サービス８２０は、カスタマに複数の計算リソース８２４（例えば、ＶＭ）を提供する。計算リソース８２４は、例えばプロバイダネットワーク８００のカスタマに（例えば、カスタマネットワーク８５０を実装するカスタマに）賃貸またはリースされてよい。各計算リソース８２４は、１つ以上のローカルＩＰアドレスを与えられてよい。プロバイダネットワーク８００は、計算リソース８２４のローカルＩＰアドレスから公衆インターネット宛先に、及び公衆インターネットソースから計算リソース８２４のローカルＩＰアドレスにパケットを送るように構成されてよい。
【００９２】
プロバイダネットワーク８００は、例えばローカルネットワーク８５６を介して中間ネットワーク８４０に結合されたカスタマネットワーク８５０に、中間ネットワーク８４０に結合され、かつプロバイダネットワーク８００に結合されたハードウェア仮想化サービス８２０を介して仮想コンピューティングシステム８９２を実装する能力を与えてよい。一部の実施形態では、ハードウェア仮想化サービス８２０は、１つ以上のＡＰＩ８０２に、例えばウェブサービスインタフェースを提供してよく、ウェブサービスインタフェースを介してカスタマネットワーク８５０は、例えばコンソール８９４（例えば、ウェブベースアプリケーション、スタンドアロンアプリケーション、モバイルアプリケーション等）を介してハードウェア仮想化サービス８２０により提供される機能にアクセスしてよい。一部の実施形態では、プロバイダネットワーク８００で、カスタマネットワーク８５０での各仮想コンピューティングシステム８９２は、カスタマネットワーク８５０にリース、賃貸、またはそれ以外の場合提供される計算リソース８２４に対応してよい。
【００９３】
（例えば、コンソール８９４を介して）仮想コンピューティングシステム８９２及び／または別のカスタマデバイス８９０のインスタンスから、カスタマは、プロバイダネットワーク８００により提供された仮想データストア８１６からデータにアクセスし、仮想データストア８１６にデータを記憶するために、例えば１つ以上のＡＰＩ８０２を介してストレージ仮想化サービス８１０の機能にアクセスしてよい。一部の実施形態では、仮想化されたデータストアゲートウェイ（図示せず）が、例えば頻繁にアクセスされる少なくとも一部のデータまたは重大なデータをローカルでキャッシュに入れてよい、かつデータの一次ストア（仮想化されたデータストア８１６）が維持されるようにローカルキャッシュから新しいデータまたは修正されたデータをアップロードするために１つ以上の通信チャネルを介して仮想化されたデータストアサービス８１０と通信してよいカスタマネットワーク８５０で提供されてよい。一部の実施形態では、ユーザーは、仮想コンピューティングシステム８９２及び／または別のカスタマデバイス８９０を介して、ユーザーにはローカル仮想化ストレージ８９８のように見える仮想データストア８１６ボリュームを実装し、アクセスしてよい。
【００９４】
図８には示していないが、仮想化サービス（複数可）は、ＡＰＩ（複数可）８０２を介してプロバイダネットワーク８００の中のリソースインスタンスからアクセスされてもよい。例えば、カスタマ、器具サービスプロバイダ、または他のエンティティは、仮想ネットワークの中または別の仮想ネットワークの中の１つ以上のリソースインスタンスの割り当てを要求するために、ＡＰＩ８０２を介してプロバイダネットワーク８００上でそれぞれの仮想ネットワークの中から仮想化サービスにアクセスしてよい。
【００９５】
例示的なシステム
一部の実施形態では、本明細書で説明する動的ホストデバイスインスタンスタイプ再構成を使用するプロバイダネットワークでの容量管理のための技術の一部分またはすべてを実装するシステムは、図９に示すコンピュータシステム９００等の１つ以上のコンピュータアクセス可能媒体を含む、または１つ以上のコンピュータアクセス可能媒体にアクセスするように構成される汎用コンピュータシステムを含んでよい。示される実施形態では、コンピュータシステム９００は、入出力（Ｉ／Ｏ）インタフェース９３０を介してシステムメモリ９２０に結合された１つ以上のプロセッサ９１０を含む。コンピュータシステム９００は、Ｉ／Ｏインタフェース９３０に結合されたネットワークインタフェース９４０をさらに含む。図９は単一のコンピューティングデバイスとしてコンピュータシステム９００を示すが、多様な実施形態では、コンピュータシステム９００は、１つのコンピューティングデバイス、または単一のコンピュータシステム９００としてともに作業するように構成された任意の数のコンピューティングデバイスを含んでよい。
【００９６】
多様な実施形態では、コンピュータシステム９００は、１つのプロセッサ９１０を含むユニプロセッサシステム、またはいくつかのプロセッサ９１０（例えば、２つ、４つ、８つ、または別の適切な数）を含むマルチプロセッサシステムであってよい。プロセッサ９１０は、命令を実行可能な任意の適切なプロセッサであってよい。例えば、多様な実施形態では、プロセッサ９１０は、ｘ８６、ＡＲＭ、ＰｏｗｅｒＰＣ、ＳＰＡＲＣ、もしくはＭＩＰＳ  ＩＳＡ等のさまざまなインストラクションセットアーキテクチャ（ＩＳＡ）、または任意の他の適切なＩＳＡのいずれかを実装する汎用プロセッサまたは組み込みプロセッサであってよい。マルチプロセッサシステムでは、プロセッサ９１０のそれぞれは、必ずしもではないが、一般的に同じＩＳＡを実装してよい。
【００９７】
システムメモリ９２０は、プロセッサ（複数可）９１０がアクセス可能な命令及びデータを記憶してよい。多様な実施形態では、システムメモリ９２０は、ランダムアクセスメモリ（ＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、同期型ＲＡＭ（ＳＤＲＡＭ）、不揮発性／フラッシュタイプメモリ、または任意の他のタイプのメモリ等の任意の適切なメモリ技術を使用し、実装されてよい。示されている実施形態では、プロバイダネットワーク環境において仮想ネットワークのサイズを変更するための上述のそれらの方法、技術、及びデータ等の１つ以上の所望される機能を実装するプログラム命令及びデータは、コード９２５及びデータ９２６としてシステムメモリ９２０の中に記憶されて示される。
【００９８】
一実施形態では、Ｉ／Ｏインタフェース９３０は、プロセッサ９１０と、システムメモリ９２０と、ネットワークインタフェース９４０または他の周辺インタフェースを含むデバイス内の任意の周辺装置との間でＩ／Ｏトラフィックを調整するように構成されてよい。一部の実施形態では、Ｉ／Ｏインタフェース９３０は、ある構成要素（例えば、システムメモリ９２０）から別の構成要素（例えば、プロセッサ９１０）が使用するために適したフォーマットにデータ信号を変換するために、任意の必要なプロトコル、タイミング、または他のデータ変換を実行してよい。一部の実施形態では、Ｉ／Ｏインタフェース９３０は、例えばペリフェラルコンポーネントインターコネクト（ＰＣＩ）バス規格またはユニバーサルシリアルバス（ＵＳＢ）規格の変形等の多様なタイプの周辺バスを通してアタッチされたデバイスに対するサポートを含んでよい。一部の実施形態では、Ｉ／Ｏインタフェース９３０の機能は、例えばノースブリッジ及びサウスブリッジ等の２つ以上の別々の構成要素に分割されてよい。また、一部の実施形態では、システムメモリ９２０へのインタフェース等のＩ／Ｏインタフェース９３０の機能性の一部またはすべては、直接的にプロセッサ９１０に組み込まれてよい。
【００９９】
一例として、一部の実施形態では、コンピュータシステム９００は、コンピュートインスタンスをホストするホスト電子デバイスである場合があり、Ｉ／Ｏインタフェース９３０を使用し、接続される、本明細書に説明する（１つ以上のプロセッサ９７５を含み、おそらく１つ以上のネットワークインタフェース９４０を含む）１つ以上のオフロードカード９７０を含んでよい。一部の実施形態では、１つ以上のオフロードカード９７０は、例えば、ハイパーバイザとは無関係に、またはコンピュータシステム９００の従来のプロセッサ９１０Ａ〜９１０Ｎを使用し、実行するハイパーバイザと組み合わせてホスト電子デバイス上で実行する仮想マシンコンピュートインスタンスを管理できる仮想化マネージャを実行できる。
【０１００】
ネットワークインタフェース９４０は、コンピュータシステム９００と、例えば図１に示す他のコンピュータシステムまたはデバイス等の、１つまたは複数のネットワーク９５０にアタッチされた他のデバイス９６０との間でデータを交換できるように構成されてよい。多様な実施形態では、ネットワークインタフェース９４０は、例えばＥｔｈｅｒｎｅｔ（登録商標）ネットワークのタイプ等の任意の適切な有線のまたは無線の汎用データネットワークを介する通信をサポートしてよい。さらに、ネットワークインタフェース９４０は、アナログ音声ネットワークもしくはデジタルファイバ通信ネットワーク等の電気通信／電話網を介する、ファイバチャネルＳＡＮ等のストレージエリアネットワーク（ＳＡＮ）を介する、またはＩ／Ｏ任意の他の適切なタイプのネットワーク及び／またはプロトコルを介する通信をサポートしてよい。
【０１０１】
一部の実施形態では、システムメモリ９２０は、プロバイダネットワーク環境でカスタマホストエンドポイントを提供するために図１について上述されたプログラム命令及びデータを記憶するように構成されたコンピュータアクセス可能媒体の一実施形態であってよい。しかしながら、他の実施形態では、プログラム命令及び／またはデータが、受信、送信、または異なるタイプのコンピュータアクセス可能媒体に記憶されてよい。一般的に言えば、コンピュータアクセス可能媒体は、例えばＩ／Ｏインタフェース９３０を介してコンピュータシステム９００に結合されたディスクまたはＤＶＤ／ＣＤ等、磁気媒体または光媒体等の非一過性の記憶媒体またはメモリ媒体を含んでよい。また、非一過性のコンピュータアクセス可能記憶媒体は、システムメモリ９２０または別のタイプのメモリとしてコンピュータシステム９００の一部の実施形態に含まれてよい、ＲＡＭ（例えば、ＳＤＲＡＭ、ダブルデータレート（ＤＤＲ）ＳＤＲＡＭ、ＳＲＡＭ等）、読み取り専用メモリ（ＲＯＭ）等の任意の揮発性または不揮発性の媒体を含んでもよい。さらに、コンピュータアクセス可能媒体は、伝送媒体、またはネットワークインタフェース９４０を介して実装されてよい等、ネットワーク及び／または無線リンク等の通信媒体を介して伝達される電気信号、電磁信号、もしくはデジタル信号等の信号を含んでよい。
【０１０２】
多様な実施形態は、コンピュータアクセス可能媒体で上記説明に従って実装された命令及び／またはデータを受信すること、送信すること、または記憶することをさらに含んでよい。一般的に言えば、コンピュータアクセス可能媒体は、伝送媒体またはネットワーク及び／または無線リンク等の通信媒体を介して伝達される電気信号、電磁信号、またはデジタル信号等の信号だけではなく、例えばディスクまたはＤＶＤ／ＣＤ−ＲＯＭ等、磁気媒体もしくは光媒体、ＲＡＭ（例えば、ＳＤＲＡＭ、ＤＤＲ、ＲＤＲＡＭ、ＳＲＡＭ等）、ＲＯＭ等の揮発性または不揮発性の媒体等の記憶媒体またはメモリ媒体を含んでよい。
【０１０３】
上述の説明では、多様な実施形態が説明されている。説明の目的で、具体的な構成及び詳細が、実施形態の完全な理解を提供するために述べられる。しかしながら、具体的な詳細がなくても実施形態を実践し得ることは当業者に明らかである。さらに、周知の特徴は、説明されている実施形態を曖昧にしないために省略または簡略化されてよい。
【０１０４】
破線の境界線（例えば、大ダッシュ、小ダッシュ、点−ダッシュ、及び点）を有する角括弧で囲まれたテキスト及びブロックは、追加の特徴を一部の実施形態に加える任意選択の操作を示すために本明細書で使用される。しかしながら、係る表記は、これらが唯一のオプション又は任意選択の操作であること、及び／または実線の境界線を有するブロックが特定の実施形態では任意選択ではないことを意味すると解釈されるべきではない。
【０１０５】
接尾辞文字を有する参照数字（例えば、１３４Ａ〜１３４Ｃ、１３６Ａ〜１３６Ｂ）は、多様な実施形態で参照されるエンティティの１つまたは複数のインスタンスがある場合があり、複数のインスタンスがあるとき、それぞれが同一である必要はないが、代わりに共通の方法でいくつかの一般的な特質を共有する、または共通の方法で動作してよいことを示すために使用されてよい。さらに、使用される特定の接尾辞は、具体的に逆に示されない限り、特定の量のエンティティが存在することを暗示すことを意図していない。したがって、同じ接尾辞文字または異なる接尾辞文字を使用する２つのエンティティは、多様な実施形態で同じ数のインスタンスを有する場合もあれば、有さない場合もある。
【０１０６】
「一実施形態」、「実施形態」、「例の実施形態」等に対する参照は、説明する実施形態が、特定の特徴、構造、または特性を含んでよいが、あらゆる実施形態が特定の特徴、構造、または特性を必ずしも含まない場合があることを示す。さらに、係る言い回しは必ずしも同じ実施形態を参照していない。さらに、特定の特徴、構造、または特性が実施形態と関連して説明されるとき、明示的に説明されているかどうかに関わりなく、他の実施形態と関連して係る特徴、構造、または特性に影響を与えることは、当業者の知識の範囲内であることが提示される。
【０１０７】
開示される技術の少なくとも一部の実施形態は、以下の条項を考慮して説明できる。
１．コンピュータ実装方法であって、
プロバイダネットワークでの複数の仮想マシンタイプのそれぞれのための必要とされるいくつかのスロットを入手することと、
前記プロバイダネットワークでの前記複数の仮想マシンタイプのそれぞれのためのいつくかの利用可能なスロットを入手することと、
前記必要とされるいくつかのスロット及び前記いくつかの利用可能なスロットに少なくとも部分的に基づいて、前記プロバイダネットワークで作成されることが所望される１つ以上の仮想マシンタイプのそれぞれのためのいくつかのスロットを決定することと、
複数のワーカーエンティティのそれぞれによって、同時に１回以上、スロット再構成操作のセットを実行することであって、前記複数のワーカーエンティティのうちの１つのための前記スロット再構成操作のセットが、
第２の仮想マシンタイプの仮想マシンのために、電子デバイスの第１の１個以上のスロット登録解除すること、及び第１の仮想マシンタイプの仮想マシンのために、前記電子デバイスの第２の１個以上のスロットを登録することとであって、前記電子デバイスが、前記第２の仮想マシンタイプの対応する１つ以上の仮想マシンが実行する１個以上の他のスロットをさらに含む、前記登録解除すること及び前記登録することと、
前記第１の仮想マシンタイプの仮想マシンを起動する要求を受信することと、
前記電子デバイスが、前記第２の仮想マシンタイプの前記１つ以上の仮想マシンを実行し続ける一方、前記電子デバイスの前記第２の１個以上のスロットのうちの１つで前記第１の仮想マシンの前記仮想マシンを実行することと、
を含む、前記スロット再構成操作のセットを実行することと、
を含む、前記コンピュータ実装方法。
【０１０８】
２．前記ワーカーエンティティの前記１つのための前記スロット再構成操作のセットが、
前記第１の１個以上のスロットを登録解除する前に、前記電子デバイスを隔離に配置することであって、隔離中、前記電子デバイスは、前記第２の仮想マシンタイプの前記１つ以上の仮想マシンを実行し続けるが、追加の仮想マシンを配置させるために利用できない、前記隔離に配置することと、
前記第２の１個以上のスロットを登録解除した後に、前記電子デバイスを隔離から取り除くことと、
をさらに含む、条項１に記載のコンピュータ実装方法。
【０１０９】
３．前記ワーカーエンティティの前記１つ以上のための前記スロット再構成操作のセットが、
前記電子デバイスを隔離に配置した後、前記第１の１個以上のスロットが任意の仮想マシンを実行していないことを検証すること、
をさらに含む、条項２に記載のコンピュータ実装方法。
【０１１０】
４．コンピュータ実装方法であって、
プロバイダネットワーク内の第１のコンピュートインスタンスタイプのための利用可能なスロットの数が、前記第１のコンピュートインスタンスタイプのために必要とされるスロットの数に満たないと判断することと、
第２のコンピュートインスタンスタイプのコンピュートインスタンスのために、電子デバイスの第１の１個以上のスロットを登録解除すること、及び前記第１のコンピュートインスタンスタイプのコンピュートインスタンスのために、前記電子デバイスの第２の１個以上のスロットを登録することであって、前記電子デバイスが、前記第２のコンピュートインスタンスタイプの対応する１つ以上のコンピュートインスタンスが実行する１個以上の他のスロットをさらに含む、前記登録解除すること及び前記登録することと、
前記第１のコンピュートインスタンスタイプのコンピュートインスタンスを起動する要求を受信することと、
前記電子デバイスが、前記第２のコンピュートインスタンスタイプの前記１つ以上のコンピュートインスタンスを実行し続ける一方、前記電子デバイスの前記第２の１個以上のスロットの１つで前記第１のコンピュートインスタンスタイプの前記コンピュートインスタンスを実行することと、
を含む、前記コンピュータ実装方法。
【０１１１】
５．前記第１の１個以上のスロットが複数のスロットを含み、前記複数のスロットが、前記第２の１個以上のスロットに統合され、前記第２の１個以上のスロットが単一のスロットを含む、条項４に記載のコンピュータ実装方法。
【０１１２】
６．前記第１の１個以上のスロットが単一のスロットを含み、前記第２の１個以上のスロットが複数のスロットを含む、条項４〜５に記載のコンピュータ実装方法。
【０１１３】
７．前記第１の１個以上のスロットを登録解除する前に、前記電子デバイスを隔離に配置することであって、隔離中、前記電子デバイスが、前記第２のコンピュートインスタンスタイプの前記１つ以上のコンピュートインスタンスを実行し続けるが、その結果追加のコンピュートインスタンスを配置させるために利用できない、前記隔離に配置することと、
前記第２の１個以上のスロットを登録した後、前記電子デバイスを隔離から取り除くことと、
をさらに含む、条項４〜６のいずれか１つに記載のコンピュータ実装方法。
【０１１４】
８．前記電子デバイスを隔離に配置した後、前記第１の１個以上のスロットがいずれのコンピュートインスタンスも実行していないことを検証すること
をさらに含む、条項７に記載のコンピュータ実装方法。
【０１１５】
９．前記電子デバイスを隔離に配置した後、かつ前記電子デバイスを隔離から取り除く前に、
前記電子デバイスで実行する前記第２のコンピュートインスタンスタイプの前記１つ以上のコンピュートインスタンスの少なくとも１つを関係させるアクションを実行する要求を受信することと、
前記アクションを実行することと、
をさらに含む、条項７に記載のコンピュータ実装方法。
【０１１６】
１０．前記第１の１個以上のスロットの前記登録解除及び前記第２の１個以上のスロットの前記登録が、再構成操作の第１のセットの一部として第１のワーカーエンティティにより実行され、
第２のワーカーエンティティが、前記再構成操作の第１のセットと同時に再構成操作の第２のセットを実行する、条項４〜９のいずれか１つに記載のコンピュータ実装方法。
【０１１７】
１１．前記再構成操作の第２のセットが、
第３のコンピュートインスタンスタイプのコンピュートインスタンスのために、第２の電子デバイスの第３の１個以上のスロットを登録解除することと、
第４のコンピュートインスタンスタイプのコンピュートインスタンスのために、前記第２の電子デバイスの第４の１個以上のスロットを登録することと、
を含む、条項１０に記載のコンピュータ実装方法。
【０１１８】
１２．前記第１のコンピュートインスタンスタイプの前記コンピュートインスタンスのためのスロットを選択する要求を配置サービスに送信することと、
前記第２の１個以上のスロットのうちの１個の１つ以上の特徴を記述する、前記電子デバイスの前記第２の１個以上のスロットのうちの前記１個に対応するリソースベクトルを含む応答を前記配置サービスから受信することと、
前記リソースベクトルに基づいて、前記第１のコンピュートインスタンスタイプの前記コンピュートインスタンスのための配置場所として前記電子デバイスの前記第２の１個以上のスロットのうちの前記１個を識別することと、
をさらに含む、条項４〜１１のいずれか１つに記載のコンピュータ実装方法。
【０１１９】
１３．前記第１のコンピュートインスタンスタイプのコンピュートインスタンスのための前記電子デバイスの前記第２の１個以上のスロットを登録することが、
前記第２の１個以上のスロットの第１のスロットのためのスロット情報データ構造にレコードを挿入することであって、前記レコードが、前記電子デバイスの識別子、前記電子デバイスの文脈の中で一意であるスロット番号の識別子、及びリソースベクトルの識別子を含み、前記リソースベクトルが、前記第１のスロットの１つ以上の特徴を記述する、前記挿入すること、
を含む、条項４〜１２のいずれか１つに記載のコンピュータ実装方法。
【０１２０】
１４．システムであって、
カスタマの代わりにコンピュートインスタンスを実装するために複数の電子デバイスを含むプロバイダネットワークのハードウェア仮想化サービスと、
１つ以上の電子デバイスにより実装される前記プロバイダネットワークの制御プレーンであって、実行時に、前記制御プレーンに、
前記プロバイダネットワークの１つ以上のコンピュートインスタンスタイプごとのいくつかのスロットが作成されるべきであると判断することと、
前記複数の電子デバイスの２つ以上を利用可能なスロットを有するとして識別することと、
前記２つ以上の電子デバイスの前記利用可能なスロットのスロットを登録解除し、前記２つ以上の電子デバイスのための追加のスロットを登録して、前記１つ以上のコンピュートインスタンスタイプごとに前記いくつかのスロットを作成することであって、前記２つ以上の電子デバイスがさらに、対応する１つ以上のコンピュートインスタンスが、前記スロット再構成操作のセットを通して実行し続ける、１個以上の他のスロットを含む、前記作成することのために、複数のワーカーエンティティのそれぞれにより同時に１回以上スロット再構成操作のセットを実行することと、
を行わせる命令を含む、前記制御プレーンと、
を備える、前記システム。
【０１２１】
１５．前記スロット再構成操作のセットのうちの１つが、複数のスロットを登録解除することと、前記２つ以上の電子デバイスの第１の電子デバイスで単一のスロットを登録することとを含む、条項１４に記載のシステム。
【０１２２】
１６．前記スロット再構成操作のセットのうちの別のセットが、前記２つ以上の電子デバイスの第２の電子デバイスで単一のスロットを登録解除することと、複数のスロットを登録することとを含む、条項１５に記載のシステム。
【０１２３】
１７．前記スロット再構成操作のセットのうちの前記１つが、
前記複数のスロットの前記登録解除の前に、前記第１の電子デバイスを隔離に配置することであって、隔離中、前記第１の電子デバイスが、１つ以上のコンピューティングデバイスを実行し続けるが、追加のコンピュートインスタンスを配置させるために利用できない、前記隔離に配置することと、
前記単一のスロットの前記登録後に、前記第１の電子デバイスを隔離から取り除くことと、
をさらに含む、条項１５に記載のシステム。
【０１２４】
１８．前記スロット再構成操作のセットのうちの前記１つが、
前記第１の電子デバイスの隔離への前記配置後に、前記複数のスロットがいずれのコンピュートインスタンスも実行していないことを検証すること、
をさらに含む、条項１７に記載のシステム。
【０１２５】
１９．前記第１の電子デバイスの隔離への前記配置後、かつ前記第１の電子デバイスの隔離からの前記除去前に、前記命令が、実行時、前記制御プレーンにさらに、
前記第１の電子デバイスで実行する前記１つ以上のコンピュートインスタンスの少なくとも１つを関係させるアクションを実行する要求を受信することと、
前記アクションを実行することと、
を行わせる、条項１７に記載のシステム。
【０１２６】
２０．前記制御プレーンが、前記利用可能なスロットの前記スロットのうちの１個を登録解除するために、前記１個のスロットを有する電子デバイスの識別子及び前記１個のスロットの識別子を含むスロット登録解除要求メッセージを送信するためである、
条項１４〜１９のいずれか１つに記載のシステム。
【０１２７】
明細書及び図面は、相応して、制限的な意味よりむしろ例示的な意味で考慮されるべきである。しかしながら、多様な修正及び変更が、特許請求の範囲に述べられる本開示の精神及び範囲から逸脱することなくそれに加えられ得ることは明白である。
【図１】
2021502643.tif 000003
【図２】
2021502643.tif 000004
【図３】
2021502643.tif 000005
【図４】
2021502643.tif 000006
【図５】
2021502643.tif 000007
【図６】
2021502643.tif 000008
【図７】
2021502643.tif 000009
【図８】
2021502643.tif 000010
【図９】
2021502643.tif 000011
【国際調査報告】
2021502643.tif 000012
2021502643.tif 000013