Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Leggi le istantanee di Amazon EBS con EBS direct APIs
I passaggi seguenti descrivono come utilizzare EBS Direct APIs per leggere le istantanee:
-
Usa l' ListSnapshotBlocks azione per visualizzare tutti gli indici di blocco e i token di blocco dei blocchi in un'istantanea. Oppure usa l' ListChangedBlocks azione per visualizzare solo gli indici di blocco e i token di blocco dei blocchi che sono diversi tra due istantanee dello stesso volume e dello stesso lignaggio delle istantanee. Queste operazioni ti consentono di identificare i token e gli indici di blocco per i quali vuoi ottenere dati.
-
Usa l' GetSnapshotBlock azione e specifica l'indice di blocco e il token di blocco del blocco per il quale desideri ottenere i dati.
Non puoi usare EBS direct APIs con istantanee archiviate.
I seguenti esempi mostrano come leggere le istantanee utilizzando EBS Direct. APIs
Elenco dei blocchi in uno snapshot
- AWS CLI
-
Il comando di list-snapshot-blocksesempio seguente restituisce gli indici di blocco e i token di blocco dei blocchi presenti nell'istantanea. snap-0987654321
Il parametro --starting-block-index
limita i risultati agli indici di blocco maggiori di 1000
e il parametro --max-results
limita i risultati ai primi 100
blocchi.
aws ebs list-snapshot-blocks --snapshot-id snap-0987654321
--starting-block-index 1000
--max-results 100
La seguente risposta di esempio per il comando precedente elenca gli indici e i token di blocco nello snapshot. Utilizza il comando get-snapshot-block
e specifica l'indice e il token del blocco per cui vuoi ottenere i dati. I token di blocco sono validi fino all'ora di scadenza indicata.
{
"Blocks": [
{
"BlockIndex": 1001,
"BlockToken": "AAABAV3/PNhXOynVdMYHUpPsetaSvjLB1dtIGfbJv5OJ0sX855EzGTWos4a4"
},
{
"BlockIndex": 1002,
"BlockToken": "AAABATGQIgwr0WwIuqIMjCA/Sy7e/YoQFZsHejzGNvjKauzNgzeI13YHBfQB"
},
{
"BlockIndex": 1007,
"BlockToken": "AAABAZ9CTuQtUvp/dXqRWw4d07eOgTZ3jvn6hiW30W9duM8MiMw6yQayzF2c"
},
{
"BlockIndex": 1012,
"BlockToken": "AAABAQdzxhw0rVV6PNmsfo/YRIxo9JPR85XxPf1BLjg0Hec6pygYr6laE1p0"
},
{
"BlockIndex": 1030,
"BlockToken": "AAABAaYvPax6mv+iGWLdTUjQtFWouQ7Dqz6nSD9L+CbXnvpkswA6iDID523d"
},
{
"BlockIndex": 1031,
"BlockToken": "AAABATgWZC0XcFwUKvTJbUXMiSPg59KVxJGL+BWBClkw6spzCxJVqDVaTskJ"
},
...
],
"ExpiryTime": 1576287332.806,
"VolumeSize": 32212254720,
"BlockSize": 524288
}
- AWS API
-
La seguente richiesta di ListSnapshotBlocksesempio restituisce gli indici di blocco e i token di blocco dei blocchi presenti nell'istantanea. snap-0acEXAMPLEcf41648
Il parametro startingBlockIndex
limita i risultati agli indici di blocco maggiori di 1000
e il parametro maxResults
limita i risultati ai primi 100
blocchi.
GET /snapshots/snap-0acEXAMPLEcf41648
/blocks?maxResults=100
&startingBlockIndex=1000
HTTP/1.1
Host: ebs.us-east-2.amazonaws.com
Accept-Encoding: identity
User-Agent: <User agent parameter>
X-Amz-Date: 20200617T231953Z
Authorization: <Authentication parameter>
La seguente risposta di esempio per la richiesta precedente elenca gli indici e i token di blocco nello snapshot. Usa l' GetSnapshotBlock azione e specifica l'indice di blocco e il token di blocco del blocco per il quale desideri ottenere i dati. I token di blocco sono validi fino all'ora di scadenza indicata.
HTTP/1.1 200 OK
x-amzn-RequestId: d6e5017c-70a8-4539-8830-57f5557f3f27
Content-Type: application/json
Content-Length: 2472
Date: Wed, 17 Jun 2020 23:19:56 GMT
Connection: keep-alive
{
"BlockSize": 524288,
"Blocks": [
{
"BlockIndex": 0,
"BlockToken": "AAUBAcuWqOCnDNuKle11s7IIX6jp6FYcC/q8oT93913HhvLvA+3JRrSybp/0"
},
{
"BlockIndex": 1536,
"BlockToken": "AAUBAWudwfmofcrQhGVlLwuRKm2b8ZXPiyrgoykTRC6IU1NbxKWDY1pPjvnV"
},
{
"BlockIndex": 3072,
"BlockToken": "AAUBAV7p6pC5fKAC7TokoNCtAnZhqq27u6YEXZ3MwRevBkDjmMx6iuA6tsBt"
},
{
"BlockIndex": 3073,
"BlockToken": "AAUBAbqt9zpqBUEvtO2HINAfFaWToOwlPjbIsQOlx6JUN/0+iMQl0NtNbnX4"
},
...
],
"ExpiryTime": 1.59298379649E9,
"VolumeSize": 3
}
Elenco dei blocchi diversi tra due snapshot
Quando effettui richieste paginate per elencare i blocchi modificati tra due snapshot, tieni presente quanto indicato di seguito:
-
La risposta può includere uno o più array ChangedBlocks
vuoti. Esempio:
L'elencazione dei blocchi modificati per questi snapshot con StartingBlockIndex = 0
e MaxResults = 100
restituisce un array di ChangedBlocks
vuoto. Occorre richiedere i risultati rimanenti utilizzando nextToken
fino a quando il blocco modificato non viene restituito nella decima serie di risultati, che include blocchi con indici blocco 900
- 999
.
-
La risposta può saltare blocchi non scritti negli snapshot. Esempio:
Elencando i blocchi modificati per questi snapshot con StartingBlockIndex = 0
e MaxResults = 100
, la risposta salta gli indici blocco 0
- 1999
e include l'indice blocco 2000
. La risposta non includerà array ChangedBlocks
vuoti.
- AWS CLI
-
Il comando di list-changed-blocksesempio seguente restituisce gli indici di blocco e i token di blocco dei blocchi che sono diversi tra le istantanee e. snap-1234567890
snap-0987654321
Il parametro --starting-block-index
limita i risultati agli indici di blocco maggiori di 0
e il parametro --max-results
limita i risultati ai primi 500
blocchi.
aws ebs list-changed-blocks --first-snapshot-id snap-1234567890
--second-snapshot-id snap-0987654321
--starting-block-index 0
--max-results 500
La seguente risposta di esempio per il comando precedente mostra che gli indici di blocco 0, 6000, 6001, 6002 e 6003 sono diversi tra i due snapshot. Inoltre, gli indici di blocco 6001, 6002 e 6003 esistono solo nel primo ID snapshot specificato e non nel secondo perché nella risposta non è presente un secondo token di blocco.
Utilizza il comando get-snapshot-block
e specifica l'indice e il token del blocco per cui vuoi ottenere i dati. I token di blocco sono validi fino all'ora di scadenza indicata.
{
"ChangedBlocks": [
{
"BlockIndex": 0,
"FirstBlockToken": "AAABAVahm9SO60Dyi0ORySzn2ZjGjW/KN3uygGlS0QOYWesbzBbDnX2dGpmC",
"SecondBlockToken": "AAABAf8o0o6UFi1rDbSZGIRaCEdDyBu9TlvtCQxxoKV8qrUPQP7vcM6iWGSr"
},
{
"BlockIndex": 6000,
"FirstBlockToken": "AAABAbYSiZvJ0/R9tz8suI8dSzecLjN4kkazK8inFXVintPkdaVFLfCMQsKe",
"SecondBlockToken": "AAABAZnqTdzFmKRpsaMAsDxviVqEI/3jJzI2crq2eFDCgHmyNf777elD9oVR"
},
{
"BlockIndex": 6001,
"FirstBlockToken": "AAABASBpSJ2UAD3PLxJnCt6zun4/T4sU25Bnb8jB5Q6FRXHFqAIAqE04hJoR"
},
{
"BlockIndex": 6002,
"FirstBlockToken": "AAABASqX4/NWjvNceoyMUljcRd0DnwbSwNnes1UkoP62CrQXvn47BY5435aw"
},
{
"BlockIndex": 6003,
"FirstBlockToken": "AAABASmJ0O5JxAOce25rF4P1sdRtyIDsX12tFEDunnePYUKOf4PBROuICb2A"
},
...
],
"ExpiryTime": 1576308931.973,
"VolumeSize": 32212254720,
"BlockSize": 524288,
"NextToken": "AAADARqElNng/sV98CYk/bJDCXeLJmLJHnNSkHvLzVaO0zsPH/QM3Bi3zF//O6Mdi/BbJarBnp8h"
}
- AWS API
-
La seguente richiesta di ListChangedBlocksesempio restituisce gli indici di blocco e i token di blocco dei blocchi che sono diversi tra le istantanee e. snap-0acEXAMPLEcf41648
snap-0c9EXAMPLE1b30e2f
Il parametro startingBlockIndex
limita i risultati agli indici di blocco maggiori di 0
e il parametro maxResults
limita i risultati ai primi 500
blocchi.
GET /snapshots/snap-0c9EXAMPLE1b30e2f
/changedblocks?firstSnapshotId=snap-0acEXAMPLEcf41648
&maxResults=500
&startingBlockIndex=0
HTTP/1.1
Host: ebs.us-east-2.amazonaws.com
Accept-Encoding: identity
User-Agent: <User agent parameter>
X-Amz-Date: 20200617T232546Z
Authorization: <Authentication parameter>
La seguente risposta di esempio per la richiesta precedente mostra che gli indici di blocco 0
, 3072
, 6002
e 6003
sono diversi tra i due snapshot. Inoltre, gli indici di blocco 6002
e 6003
esistono solo nel primo ID snapshot specificato e non nel secondo perché nella risposta non è presente un secondo token di blocco.
Utilizza l'operazione GetSnapshotBlock
e specifica l'indice e il token del blocco per cui vuoi ottenere i dati. I token di blocco sono validi fino all'ora di scadenza indicata.
HTTP/1.1 200 OK
x-amzn-RequestId: fb0f6743-6d81-4be8-afbe-db11a5bb8a1f
Content-Type: application/json
Content-Length: 1456
Date: Wed, 17 Jun 2020 23:25:47 GMT
Connection: keep-alive
{
"BlockSize": 524288,
"ChangedBlocks": [
{
"BlockIndex": 0,
"FirstBlockToken": "AAUBAVaWqOCnDNuKle11s7IIX6jp6FYcC/tJuVT1GgP23AuLntwiMdJ+OJkL",
"SecondBlockToken": "AAUBASxzy0Y0b33JVRLoYm3NOresCxn5RO+HVFzXW3Y/RwfFaPX2Edx8QHCh"
},
{
"BlockIndex": 3072,
"FirstBlockToken": "AAUBAcHp6pC5fKAC7TokoNCtAnZhqq27u6fxRfZOLEmeXLmHBf2R/Yb24MaS",
"SecondBlockToken": "AAUBARGCaufCqBRZC8tEkPYGGkSv3vqvOjJ2xKDi3ljDFiytUxBLXYgTmkid"
},
{
"BlockIndex": 6002,
"FirstBlockToken": "AAABASqX4/NWjvNceoyMUljcRd0DnwbSwNnes1UkoP62CrQXvn47BY5435aw"
},
{
"BlockIndex": 6003,
"FirstBlockToken": "AAABASmJ0O5JxAOce25rF4P1sdRtyIDsX12tFEDunnePYUKOf4PBROuICb2A"
},
...
],
"ExpiryTime": 1.592976647009E9,
"VolumeSize": 3
}
Recupero dei dati di blocco da uno snapshot
- AWS CLI
-
Il comando di get-snapshot-blockesempio seguente restituisce i dati nell'indice di blocco 6001
con il token AAABASBpSJ2UAD3PLxJnCt6zun4/T4sU25Bnb8jB5Q6FRXHFqAIAqE04hJoR
di blocco, in uno snapshot. snap-1234567890
I dati binari vengono memorizzati nel file data
nella directory C:\Temp
in un computer Windows. Se esegui il comando in un computer Linux o Unix, sostituisci il percorso di output /tmp/data
in modo che i dati vengano inseriti nel file data
nella directory /tmp
.
aws ebs get-snapshot-block --snapshot-id snap-1234567890
--block-index 6001
--block-token AAABASBpSJ2UAD3PLxJnCt6zun4/T4sU25Bnb8jB5Q6FRXHFqAIAqE04hJoR
C:/Temp/data
La risposta di esempio seguente per il comando precedente mostra la dimensione dei dati restituiti, il checksum per convalidare i dati e l'algoritmo del checksum. I dati binari vengono salvati automaticamente nella directory e nel file specificati nel comando di richiesta.
{
"DataLength": "524288",
"Checksum": "cf0Y6/Fn0oFa4VyjQPOa/iD0zhTflPTKzxGv2OKowXc=",
"ChecksumAlgorithm": "SHA256"
}
- AWS API
-
La seguente richiesta di GetSnapshotBlockesempio restituisce i dati nell'indice di blocco 3072
con il token di bloccoAAUBARGCaufCqBRZC8tEkPYGGkSv3vqvOjJ2xKDi3ljDFiytUxBLXYgTmkid
, in un'istantaneasnap-0c9EXAMPLE1b30e2f
.
GET /snapshots/snap-0c9EXAMPLE1b30e2f
/blocks/3072
?blockToken=AAUBARGCaufCqBRZC8tEkPYGGkSv3vqvOjJ2xKDi3ljDFiytUxBLXYgTmkid
HTTP/1.1
Host: ebs.us-east-2.amazonaws.com
Accept-Encoding: identity
User-Agent: <User agent parameter>
X-Amz-Date: 20200617T232838Z
Authorization: <Authentication parameter>
La seguente risposta di esempio per la richiesta precedente mostra la dimensione dei dati restituiti, il checksum per la convalida dei dati e l'algoritmo utilizzato per generare il checksum. I dati binari vengono trasmessi nel corpo della risposta e sono rappresentati come BlockData
nell'esempio seguente.
HTTP/1.1 200 OK
x-amzn-RequestId: 2d0db2fb-bd88-474d-a137-81c4e57d7b9f
x-amz-Data-Length: 524288
x-amz-Checksum: Vc0yY2j3qg8bUL9I6GQuI2orTudrQRBDMIhcy7bdEsw=
x-amz-Checksum-Algorithm: SHA256
Content-Type: application/octet-stream
Content-Length: 524288
Date: Wed, 17 Jun 2020 23:28:38 GMT
Connection: keep-alive
BlockData