3

インスタンスを起動すると、インスタンススワップファイルが消えます。

Ubuntu ec2インスタンスがあり、https: //help.ubuntu.com/community/SwapFaqの「スワップファイルを追加するための4つのステップのプロセス」の手順に従います。

sudo dd if=/dev/zero of=/mnt/512MiB.swap bs=1024 count=524288
sudo chmod 600 /mnt/512MiB.swap
sudo mkswap /mnt/512MiB.swap
sudo swapon /mnt/512MiB.swap

次に、/ etc/fstabを変更して次のものを含めました。

/mnt/512MiB.swap  none  swap  sw  0 0

私ははるかに大きなスワップを使用しているので、このプロセスには時間がかかり、開始するたびにそれを実行したくありません。私はむしろストレージの代金を払いたいです。ただし、インスタンスを起動すると、スワップが表示されなくなりました。'top'と入力すると、インスタンスで使用中のスワップファイルがありません。

私は何をすべきか?

4

1 に答える 1

6

使用しているAmazon EC2インスタンスにはEBSでバックアップされたルート デバイス ストレージがありますが、すべてのEC2 インスタンス タイプには、使用可能なEC2 インスタンス ストレージ(エフェメラル ストアとも呼ばれます) と、より小さなインスタンス タイプ (例: m1.small およびc1.medium) もデフォルトで取り付けられ、マウントされ/mntています (大きいものはそうではありません!)。

注意すべきこのストレージ タイプの最も重要な特徴は、インスタンス ストア ボリューム上のデータは、関連付けられた Amazon EC2 インスタンスの存続期間中のみ保持されるということです。

このステートメントは、最近では少し誤解を招く可能性があります。これは、EBS でバックアップされたインスタンスの停止にも適用される (再起動ではありません) 場合に限られます。つまり、そのインスタンスを停止すると、マウントされた一時ボリューム/mntが切り離されて削除され、そこに保存されているすべてのデータが失われます。もちろん、スワップファイルを含みます。インスタンスを再起動すると、新しいエフェメラル ボリュームがアタッチされ、 にマウントされ/mntます。

解決

何をしているかを正確に把握している場合は、 EC2インスタンス ストレージ (豊富で無料) を引き続き使用できます (以下の「背景」セクションを参照)。たとえば、キャッシュなどの需要。

もちろん、スワップ ファイルもこの要件に一致するため、質問で概説したコマンドを使用してスクリプトを作成し、インスタンスの開始時にそれを実行して、スワップ ファイルを再作成するだけです。ただし、インスタンスストレージは再起動後も存続するため、ガードを配置する必要があります。つまり、実際の停止/開始サイクルだけで、再起動時にスワップファイルを再作成する必要はなく、再作成する必要もありません。


バックグラウンド

Amazon EC2 が最初に導入されたときは、インスタンス ストレージが唯一のストレージ オプションでしたが、幸いなことに、日常的な使用に対する厳しい制限は、使用しているAmazon Elastic Block Store (EBS)によって改善されました。Eric Hammond は最近、Amazon EC2 で EBS ブート インスタンスを使用する必要がある理由について、まさにこのトピックに対処する優れた要約を提供しました。

Amazon EC2 を使い始めたばかりの場合は、EBS ブート インスタンスを使用して、この記事を読むのをやめてください。instance-store について聞いたことがあるということは忘れて、先ほど言及したことをお詫びします。EC2 での EBS ブート インスタンスの使用に完全に慣れたら、ここに戻って、適切な決定を下した理由を読みたいと思うかもしれません (またはしたくないかもしれません)。

于 2012-04-21T15:00:12.400 に答える