Primeiros passos com a API Swift S3
Saiba como utilizar a API Swift S3
Saiba como utilizar a API Swift S3
Esta tradução foi automaticamente gerada pelo nosso parceiro SYSTRAN. Em certos casos, poderão ocorrer formulações imprecisas, como por exemplo nomes de botões ou detalhes técnicos. Recomendamos que consulte a versão inglesa ou francesa do manual, caso tenha alguma dúvida. Se nos quiser ajudar a melhorar esta tradução, clique em "Contribuir" nesta página.
Última atualização: 22/09/2020
O middleware Swift s3api que assegura a compatibilidade da API S3 foi ativado em todas as regiões do Public Cloud.
Este guia ajudá-lo-á a aceder aos objetos de Swift através de um software concebido para interagir com pontos terminais compatíveis com S3.
user@host:~$ source <user_name>-openrc.sh
Please enter your OpenStack Password for project <project_name> as user <user_name>:
user@host:~$
user@host:~$ pip install python-openstackclient
user@host:~$
Encontre a referência das encomendas Openstack cliente aqui.
Os tokens S3 são diferentes, precisa de 2 parâmetros (acessos e segredo) para gerar um token S3. Estas informações de identificação serão armazenadas com toda a segurança em Keystone. Para gerá-la:
user@host:~$ openstack ec2 credentials create
+------------+----------------------------------------------------------------------------------------------------------------------------+
| Field | Value |
+------------+----------------------------------------------------------------------------------------------------------------------------+
| access | 5a4d8b8d88104123a862c527ede5a3d3 |
| links | {u'self': u'https://auth.cloud.ovh.net/v3/users/d74d05ff121b44bea9216495e7f0df61/credentials/OS- |
| | EC2/5a4d8b8d88104123a862c527ede5a3d3'} |
| project_id | 20e124b71be141299e111ec26b1892fa |
| secret | 925d5fcfcd9f436d8ffcb20548cc53a2 |
| trust_id | None |
| user_id | d74d05ff121b44bea9216495e7f0df61 |
+------------+----------------------------------------------------------------------------------------------------------------------------+
. openrc.sh
TMP_FILE=$(mktemp)
OS_USER_ID=$(curl -s -D $TMP_FILE -X POST "${OS_AUTH_URL}auth/tokens" -H "Content-Type: application/json" -d '{"auth":{"identity":{"methods":["password"],"password":{"user":{"name":"'$OS_USERNAME'","domain":{"id":"default"},"password":"'$OS_PASSWORD'"}}},"scope":{"project":{ "id":"'$OS_TENANT_ID'","domain":{"id":"default"}}}}}' | jq -r '.["token"]["user"]["id"]')
OS_TOKEN=$(awk '/^X-Subject-Token/ {print $2}' $TMP_FILE | tr -d "\r")
curl -s -X POST -H "Content-Type: application/json" -H "X-Auth-Token: $OS_TOKEN" -d '{"tenant_id": "'$OS_TENANT_ID'"}' "${OS_AUTH_URL}users/${OS_USER_ID}/credentials/OS-EC2" | jq .
{
"credential": {
"user_id": "d74d05ff121b44bea9216495e7f0df61",
"links": {
"self": "https://auth.cloud.ovh.net/v3/users/d74d05ff121b44bea9216495e7f0df61/credentials/OS-EC2/660c89cfc4764271ba169941c7b2f310"
},
"tenant_id": "20e124b71be141299e111ec26b1892fa",
"access": "660c89cfc4764271ba169941c7b2f310",
"secret": "fc9e8eb545724accadcfabbd99207df1",
"trust_id": null
}
}
Instale o cliente AWS e configure-o da seguinte forma:
user@host:~$ pip install awscli awscli-plugin-endpoint
[...]
user@host:~$ cat ~/.aws/credentials
[default]
aws_access_key_id = <access_key>
aws_secret_access_key = <secret_key>
user@host:~$ cat ~/.aws/config
[plugins]
endpoint = awscli_plugin_endpoint
[profile default]
region = <region>
s3 =
endpoint_url = https://s3.<region>.cloud.ovh.net
signature_version = s3v4
s3api =
endpoint_url = https://s3.<region>.cloud.ovh.net
O acesso de tipo alojado virtual
e o acesso de tipo caminho de acesso
são geridos em todas as regiões, mas recomendamos que utilize o estilo alojado virtual
pois o acesso de tipo caminho de acesso
ficará desativado após 30 de setembro de 2020.
Para obter a lista de Buckets (containers), utilize o seguinte comando:
user@host:~$ aws --profile default s3 ls
Utilize o seguinte comando para criar um novo bucket:
user@host:~$ aws --profile default s3 mb s3://bucket
Os buckets S3 só podem ser criados na estratégia PCS (Armazenamento de objetos).
O nome do container deve respeitar as seguintes regras
Utilize o seguinte comando para transferir um ficheiro local para Swift:
user@host:~$ aws --profile default s3 cp file.txt s3://bucket/file.txt
Para descarregar um objeto a partir de Swift, utilize o seguinte comando:
user@host:~$ aws --profile default s3 cp s3://bucket/file.txt file.txt
Utilize o seguinte comando para eliminar um objeto Swift:
user@host:~$ aws --profile default s3 rm s3://bucket/file.txt
Para eliminar um bucket, utilize o seguinte comando:
user@host:~$ aws --profile default s3 rb s3://bucket
Junte-se à nossa comunidade de utilizadores em https://community.ovh.com/en/.
Não hesite em propor-nos sugestões de melhoria para fazer evoluir este manual.
Imagens, conteúdo, estrutura... Não hesite em dizer-nos porquê para evoluirmos em conjunto!
Os seus pedidos de assistência não serão tratados através deste formulário. Para isso, utilize o formulário "Criar um ticket" .
Obrigado. A sua mensagem foi recebida com sucesso.
Aceda ao seu espaço comunitário. Coloque as suas questões, procure informações e interaja com outros membros do OVHcloud Community.
Discuss with the OVHcloud community