Création de bucket impossible : redirection vers Amazon !
BMPCreated with Sketch.BMPZIPCreated with Sketch.ZIPXLSCreated with Sketch.XLSTXTCreated with Sketch.TXTPPTCreated with Sketch.PPTPNGCreated with Sketch.PNGPDFCreated with Sketch.PDFJPGCreated with Sketch.JPGGIFCreated with Sketch.GIFDOCCreated with Sketch.DOC Error Created with Sketch.
question

Création de bucket impossible : redirection vers Amazon !

Par
BriceM9
Créé le 2022-07-11 09:10:21 (edited on 2024-09-04 11:50:47) dans Stockage et Sauvegardes

Bonjour,

Je souhaite créer un bucket depuis un serveur Debian 11.

J'ai créé un Object Storage, ajouté et associé un utilisateur, et récupéré le openrc.sh

Après l'avoir sourcé et tapé le bon mot de passe, je peux créer mes « credentials ».

Ils existent, car openstack ec2 credentials list me les renvoie bien.

J'ai configuré le ~/.aws correctement. L'utilisateur est un user quelconque, pas root.

Pourtant, quand je tente de créer un bucket,

$ aws s3 mb s3://toto
make_bucket failed: s3://toto Could not connect to the endpoint URL: "https://toto.s3.SBG.amazonaws.com/"

Je me dis que aws ne tient pas compte du plugin awscli-plugin-endpoint, donc je tape la même chose avec

$ aws --endpoint-url https://s3.SBG.perf.cloud.ovh.net --profile default s3 mb s3://toto
make_bucket failed: s3://toto Could not connect to the endpoint URL: "https://s3.sbg.amazonaws.com/toto"

Donc aws renvoie toujours chez Amazon, jamais chez OVH, même en forçant le endpoint !

Un coup de --debug montre qu'une partie du boulot est faîte :

(je ne montre que la fin de la première partie, sinon il y a une part d'info perso) :

2022-07-11 09:04:04,450 - MainThread - botocore.endpoint - DEBUG - Making request for OperationModel(name=CreateBucket) with params: {'url_path': '/armariumpdf1', 'query_string': {}, 'method': 'PUT', 'headers': {'User-Agent': 'aws-cli/1.19.1 Python/3.9.2 Linux/5.10.0-14-amd64 botocore/1.20.0'}, 'body': b'SBG', 'url': '**https://s3.SBG.perf.cloud.ovh.net/toto**', 'context': {'client_region': 'SBG', 'client_config': , 'has_streaming_input': False, 'auth_type': None, 'signing': {'bucket': 'toto'}}}
2022-07-11 09:04:04,453 - MainThread - botocore.hooks - DEBUG - Event request-created.s3.CreateBucket: calling handler >
2022-07-11 09:04:04,454 - MainThread - botocore.hooks - DEBUG - Event choose-signer.s3.CreateBucket: calling handler
2022-07-11 09:04:04,454 - MainThread - botocore.hooks - DEBUG - Event before-sign.s3.CreateBucket: calling handler >
2022-07-11 09:04:04,454 - MainThread - botocore.utils - DEBUG - Using S3 path style addressing.
2022-07-11 09:04:04,454 - MainThread - botocore.auth - DEBUG - Calculating signature using v4 auth.
2022-07-11 09:04:04,454 - MainThread - botocore.auth - DEBUG - CanonicalRequest:
PUT
/toto

Donc a priori, c'est censé fonctionner (avec les bons paramètres), puisque le put est lancé :)

Sauf que cela continue après en cherchant à joindre cette fois les serveurs d'Amazon :(

host:s3.sbg.amazonaws.com
x-amz-content-sha256:XX
x-amz-date:20220711T070404Z

host;x-amz-content-sha256;x-amz-date
XXXX
2022-07-11 09:04:04,488 - MainThread - botocore.auth - DEBUG - StringToSign:
AWS4-HMAC-SHA256
20220711T070404Z
20220711/sbg/s3/aws4_request
XXX
2022-07-11 09:04:04,488 - MainThread - botocore.auth - DEBUG - Signature:
XX
2022-07-11 09:04:04,488 - MainThread - botocore.endpoint - DEBUG - Sending http request:

Qu'est-ce qui se passe ? Évidemment, je ne crée pas mon bucket...

Pour info, j'ai tenté avec une installation pip ou une installation système des outils utilisés, mais avec le même résultat à chaque fois...

Merci de vos retours,


1 réponse ( Latest reply on 2022-07-11 12:22:12 Par
BriceM9
)

Bon, j'ai partiellement résolu mon problème.

La région est case-sensitive : donc il faut écrire sbg et non SBG.

Ainsi, cela fonctionne, pourvu que je garde les endpoint à la main. Si j'omets les endpoint-url, alors je retombe sur le même problème : aws tente de se connecter sur un serveur Amazon.

aws ne semble pas lire le ~/.aws/config, seulement le credentials ?