ec2ストレージのどの部分が一時的であるかを知る方法


10

これはばかげた質問かもしれませんが、私の無知を失礼します。

次のように実行されているインスタンスがあります。 AWsコンソール

DOES ルートデバイス:EBSは EBS上で私の全体のシステムを意味しているのですか?

ここでapacheとperlアプリを構成しましたが、すべての構成とファイルがなくなるわけではありませんか?

エフェメラルストレージで実行されているものとEBSで実行されているものを知るにはどうすればよいですか?管理コンソールでインスタンスをクリックして下部の詳細を見ると、次のように表示されEBS Optimized: falseます。これは正確にはどういう意味ですか?

私のストレージは次のようになります:

[ec2-user@<MY_IP> ~]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda1            7.9G  1.7G  6.2G  22% /
tmpfs                 298M     0  298M   0% /dev/shm

[ec2-user@<MY_IP> ~]$ mount
/dev/xvda1 on / type ext4 (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

2
t1.microインスタンスには一時ストレージはありません。m1.small以上のみにあります。
number5 2013年

あ、いいね。それを知りませんでした。オプションが表示されないのも不思議ではありません。
ギデオン2013年

回答:


4

ルートデバイスはあなたの「/」です。この場合は/ dev / xvda1で、EBSドライブです。

エフェメラルデバイスは(私が知っているとおり)です。

  • sdb(xvdb)
  • sdc(xvdc)
  • sdd(xvdd)
  • sde(xvde)

AWS UIを使用して、どのデバイスがEBSドライブであるかをいつでも確認できます:EC2->インスタンス-> [自分のものを選択]->デバイスのブロック


驚くばかり。感謝:)いただきましたすべてのsysfs1devptそしてものではありません。
ギデオン2013年

1
tmpfsはramfsに似ており、ファイルを高速RAMに保持できます。devptsとsysfsは、いくつかのカーネルデータへのアクセスを提供する「仮想」Linuxファイルシステムです。あなたはグーグルでもっとチェックすることができます-それらについてのたくさんの記事があります。
Tomasz Olszewski

xvda1 Xvdd xvdc xvdbこれらはEBSボリュームです。これらは短命であるとどのように言えますか?

3
上記の答えは正しくないため、「答え」としてチェックしないでください
Andrew S

これは間違っています!!
eyeApps LLC、

12

エフェメラルデバイスとebsデバイスは、文字の付いたデバイスファイル名をほとんどとることができるため、デバイス名だけに依存しないでください。デバイス名は、以下で概要を説明するように、一時的であるかどうかを判断するために重要です。「ephemeral」または「ebs」という単語を含むマウントポイント名に依存することも同様に信頼できません。

これの一部はEC2 GUIを介して実行できますが、サーバー自体でいくつかのコマンドを実行する必要があるため、ここでは「すべてのコマンドライン」メソッドを提供します。m3.medium CentOSミニマル6.5インスタンスストア(エフェメラル)を使用したAMIの例を紹介します。

1)wgetユーティリティをインストールします yum install -y wget

2)実行 wget -q 169.254.169.254/latest/meta-data/block-device-mapping/ -O -

この例のインスタンスストアでサポートされているAMI-上記のコマンド#2の出力は次のとおりです。

ami ephemeral0

比較のために、EBSボリュームのみ(一時的なドライブなし)のEBSバックアップCentOSサーバーからの出力例を以下に示します。

ami ebs2 ebs3

後でEBSボリュームを持つEBSバックアップインスタンスに戻ります。とりあえず、エフェメラルドライブを示す元のインスタンスストアでサポートされたAMIの例から続けましょう。

エフェメラルドライブにマップされているデバイスファイルを確認するには、もう一度wgetを実行します。今回は、上記の#2で検出したエフェメラルドライブの名前をURLに追加します。

3) wget -q 169.254.169.254/latest/meta-data/block-device-mapping/ephemeral0 -O -

そして、この例では、出力は/でした:

sdb

これは、/ dev / sdb〜/ dev / sdeがebsデバイスであると想定できないという上記の私のポイントを強調しています。かもしれないけど- EBSあるの/ dev / xvdbは/ dev / xvdeていること本当である私のシステムでは、常には/ dev / xvde1で始まるこれらのデバイスの手紙の存在はおそらくあなたが使用している、OS、地域、AMIなどに依存して、。余談ですが、「ebs」名があれば#3を実行でき(例:)、ebs2同様の出力が得られます。

4)次に、実行します lsblk

この場合、出力は次のようになります。

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvde1 202:65 0 8G 0 disk / xvdf 202:80 0 4G 0 disk

これは、デバイスが一時的なものであるかどうかを通知するためにマウントポイントに依存することはできないという上からの私のポイントを強調しています。

また、EC2デバイスのボリューム文字とOSのマッピング文字の間のマッピングが一致していないことにも気づくでしょう。ここで良いニュースの小さな断片は、ドライブ文字自体が一致しない場合でも、ドライブ文字が同じ順序で増加することです。それでは、デバイスマッピングのメタデータから「その他」のドライブ文字を取得しましょう。上記のように、2つのデバイスマッピングがあり、1つはともう1つはamiと呼ばれていましたephemeral0。ephemeral0はすでに調べたので、amiを調べてみましょう。

5) wget -q 169.254.169.254/latest/meta-data/block-device-mapping/ami -O -

出力は次のとおりです。

sda1

OSマッピングの最下位の文字はEC2ブロックデバイスマッピングの最下位の文字であると自信を持って結論付けることができ、そこから上にインクリメントできます。したがって:

/dev/sda1 = /dev/xvde1 そして /dev/sdb = /dev/xvdf

最後に重要なことですが、ブロックデバイスマッピングamiは、それがEBSに基づいているか、インスタンスストアに基づいているかにはすぐには対応しません。実行するコマンドがもう1つあります。

6) wget -q 169.254.169.254/latest/meta-data/ami-manifest-path -O -

私は、特定の EBSが唯一のインスタンスストアボリュームがマニフェスト(S3におけるAMIのバンドルセグメントのマニフェストリスト名とパス)を持っているので、AMIのマニフェストのパスを持っていないバックアップされていること。私がチェックした場合、インスタンスストアamiに対して実行したときの上記の#6の結果は次のようなものです。

someamibucketname/someamidescription/someamidescription.manifest.xml

一方、EBSを使用したAMIに対して#6を実行すると、次のようになります。

(unknown)


1

sudo lsblkヒントを与えるはずです。IE

[ec2-user@ec2-host ~]$ sudo lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk 
└─xvda1 202:1    0   8G  0 part /
xvdb    202:16   0   4G  0 disk /media/ephemeral0
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.