0

PHPスクリプトを使用して、プログラムで新しいWindowsインスタンスを作成し、テストを実行しています。

(マイクロの代わりに)小さなインスタンスを使用するようにアップグレードするまで、すべてがうまくいきました。当初、Windows 2008 のC:\ ドライブ サイズは 160 GB になると思っていましたが、そうではなく、このスペースを有効にする必要があるようです。

私はよくグーグルで調べたところ、コマンドラインを使用するか、このPHP関数modify_instance_attributeを使用して、このストレージをプログラムで有効にできることがわかりました

ただし、それを行う方法はまだ明確ではありません。私の質問は、このインスタンス ストレージにD:\ (たとえば) としてアクセスできるかどうかです。もしそうなら、どうすればPHPでこれを行うことができますか? すなわち。

$ec2->modify_instance_attribute($instance_id, 
       array('BlockDeviceMapping' => array(
            'DeviceName' => '/dev/sdc=ephemeral0'
       )
));

PS。データの整合性は気にしません。自動テスト用にその場でランダム データを生成するために、160 GB が必要なだけです。

4

2 に答える 2

2

これを試して:

  1. m1.small インスタンスを作成する
  2. RDP 経由で接続し、[スタート] メニュー --> [コンピューター] --> [管理] に移動します
  3. サーバー マネージャー ウィンドウの [GoTo Storage ] では、下部のパネルにインスタンス ストレージが未割り当て領域 (149GB) として表示されているはずです。
  4. それを右クリックして、オンラインを選択します
  5. もう一度右クリックして、新しいハードドライブとしてマウントします
  6. この新しいドライブをフォーマットし、そこにあることをエクスプローラーで再確認します
  7. ログオフし、Amazon コントロール パネルに移動して、この実行中のインスタンスを新しいイメージとして保存します

それで全部です。今後、PHP から新しいスモール インスタンスを起動するときはいつでも、160GB ドライブが既にマウントされ、利用可能になっているはずです。

PS。modify_instance_attribute() 関数は必要ありません。run_instances() を使用してこれを行うことができます。

<?php
$ec2 = new AmazonEC2();
$ec2->set_region(AmazonEC2::REGION_EU_W1);
$ec2->run_instances($ami_image_id, 1, 1, array(
                    'KeyName'       => 'my-Key',
                    'Placement'     => array('AvailabilityZone' => 'eu-west-1a'),
                    'BlockDeviceMapping' => array(
                              'VirtualName'    => 'ephemeral0',
                              'DeviceName'     => '/dev/xvdb'
                     ),
                     'InstanceType'  => 'm1.small',
                     'SecurityGroup' => 'my-RDP-group'
 ));
?>
于 2012-04-29T18:02:33.597 に答える
0

Amazon EC2インスタンスが起動された後に、インスタンス ストレージをプログラムで有効化/マッピングすることはできません。 Amazon EC2 インスタンス ストレージの使用シナリオのインスタンスでインスタンス ストアを使用できるようにするセクションを参照してください。

ルート デバイスに Amazon EBS を使用するインスタンスは、デフォルトでは、起動時にインスタンス ストアを利用できません。EBS-backed インスタンスでインスタンス ストアを使用する場合は、インスタンスの起動時にインスタンス ストアをデバイスに明示的にマッピングする必要があります[鉱山を強調]

これを達成するために必要な高レベルの手順もそのページで概説されており、m1.xlarge インスタンスで不足している一時ディスクに対する Cyber​​x86 の回答は、利用可能な 2 つの方法の優れた要約を提供します。

于 2012-04-29T14:01:02.913 に答える