Share Your AWS re:Post Experience - Quick 3 Question Survey
Help us improve AWS re:Post! We're interested in understanding how you use re:Post and its impact on your AWS journey. Please take a moment to complete our brief 3-question survey.
Como identifico quais volumes conectados à minha instância Linux do Amazon EC2 são volumes de armazenamento de instância (efêmeros)?
Tenho uma instância Linux do Amazon Elastic Compute Cloud (Amazon EC2) com volumes do Amazon Elastic Block Store (Amazon EBS) e volumes de armazenamento de instância anexados. Quero identificar os volumes anexados que são volumes de armazenamento de instância.
Breve descrição
Para identificar volumes de armazenamento de instância em instâncias Linux do Amazon EC2, primeiro verifique se o tipo de instância é compatível com os volumes de armazenamento de instância. Se a instância for compatível com volumes de armazenamento de instância, verifique o tipo de volumes de armazenamento de instância com o qual ela é compatível. Depois disso, revise as informações do volume do sistema operacional (SO).
Resolução
- Verifique o tipo de volume de armazenamento de instância (HDD, SSD ou SSD NVMe), se houver, que seja compatível com sua instância. Verifique quantidade, tamanho, tipo e otimizações de desempenho dos volumes de armazenamento de instância que estão disponíveis para cada tipo de instância compatível.
- Determine quais dos volumes anexados à sua instância são volumes de armazenamento de instância. O método de identificação depende de você ter volumes de armazenamento de instância SSD NVMe ou HDD/SSD.
Volumes de armazenamento de instância SSD NVMe
-
Instale o pacote de linha de comando NVMe, nvme-cli. Use as ferramentas de gerenciamento de pacotes para sua distribuição Linux. Para instâncias do Amazon Linux, use o comando yum para instalar o pacote nvme-cli. Para obter instruções de download e instalação para outras distribuições, consulte nvme-cli na documentação GitHub ou consulte a documentação da sua distribuição.
-
Execute o comando nvme list como usuário privilegiado:
$ sudo nvme list
A coluna Modelo neste exemplo de saída abaixo lista se cada dispositivo conectado é Amazon Elastic Block Store ou Amazon EC2 NVMe Instance Storage. A saída de exemplo é de um tipo de instância que oferece suporte para dispositivo SSD NVMe:
$ sudo nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 vol0923757ba05df9515 Amazon Elastic Block Store 1 0.00 B / 8.59 GB 512 B + 0 B 1.0 /dev/nvme1n1 AWS1A4FC25FB16B79F76 Amazon EC2 NVMe Instance Storage 1 50.00 GB / 50.00 GB 512 B + 0 B 0
Volumes de armazenamento de instância de HDD ou SSD
Para volumes de armazenamento de instância de HDD ou SSD, obtenha a lista de dispositivos de blocos conectados do sistema operacional. Em seguida, recupere a seção de mapeamento de dispositivos de blocos a partir dos metadados da instância.
-
Execute o comando lsblk. Se o comandolsblk não estiver presente, instale o pacote util-linux usando as ferramentas de gerenciamento de pacote da sua distribuição Linux. Para instâncias do Amazon Linux, instale o pacote util-linux usando o comando de instalação yum. Para obter instruções de download e instalação de outras distribuições, consulte a documentação específica da sua distribuição:
$ sudo lsblk
Esse exemplo de saída mostra a lista de dispositivos de bloco de uma instância que tem muitas unidades. Essa instância é executada em um tipo de instância compatível com volumes de armazenamento de instâncias SSD:
$ 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 745.2G 0 disk xvdc 202:32 0 745.2G 0 disk xvdd 202:48 0 745.2G 0 disk xvde 202:64 0 745.2G 0 disk
-
Identifique se xvdb, da saída do exemplo anterior, é uma unidade efêmera. Para isso, recupere os metadados de block-device-mapping. Use o URL base para todas as solicitações de metadados da instância (http://169.254.169.254/latest/meta-data/block-device-mapping):
$ curl http://169.254.169.254/latest/meta-data/block-device-mapping/ephemeral0 sdb $ ls -l /dev/sdb lrwxrwxrwx 1 root root 4 Aug 27 13:07 /dev/sdb -> xvdb
Neste exemplo, o mapeamento de dispositivos de blocos para ephemeral0 é para sdb. Este é um link simbólico para o xvdb. Isso significa que o xvdb é um dispositivo efêmero.
-
(Opcional) Você também pode usar esses comandos para automatizar o processo e mostrar os dispositivos efêmeros da sua instância:
Identifique os dispositivos de blocos do sistema operacional:
OSDEVICE=$(sudo lsblk -o NAME -n | grep -v '[[:digit:]]' | sed "s/^sd/xvd/g")
Defina o URL de mapeamento de dispositivos de blocos:
BDMURL="http://169.254.169.254/latest/meta-data/block-device-mapping/"
Percorra os dispositivos do sistema operacional e encontre o mapeamento no mapeamento de dispositivos de blocos:
for bd in $(curl -s ${BDMURL}); do MAPDEVICE=$(curl -s ${BDMURL}/${bd}/ | sed "s/^sd/xvd/g"); if grep -wq ${MAPDEVICE} <<< "${OSDEVICE}"; then echo "${bd} is ${MAPDEVICE}"; fi; done | grep ephemeral
Este exemplo mostra esses três comandos e uma saída:
$ OSDEVICE=$(sudo lsblk -o NAME -n | grep -v '[[:digit:]]' | sed "s/^sd/xvd/g") $ BDMURL="http://169.254.169.254/latest/meta-data/block-device-mapping/" $ for bd in $(curl -s ${BDMURL}); do MAPDEVICE=$(curl -s ${BDMURL}/${bd}/ | sed "s/^sd/xvd/g"); if grep -wq ${MAPDEVICE} <<< "${OSDEVICE}"; then echo "${bd} is ${MAPDEVICE}"; fi; done | grep ephemeral ephemeral0 is xvdb ephemeral1 is xvdc ephemeral2 is xvdd ephemeral3 is xvde

Conteúdo relevante
- feita há um mêslg...
- feita há um mêslg...
- feita há um mêslg...
- Resposta aceitafeita há um mêslg...
- feita há 2 meseslg...
- AWS OFICIALAtualizada há 2 anos
- AWS OFICIALAtualizada há 3 meses
- AWS OFICIALAtualizada há um ano
- AWS OFICIALAtualizada há 3 anos