ECS : Comment tester les opérations de création de bucket, de téléchargement d’objet, de lecture d’objet, de suppression d’objet et de suppression e bucket dans S3 avec le script s3test.sh

摘要: Comment tester S3 pour créer un bucket, télécharger un objet, lire un objet, supprimer un objet, supprimer un bucket avec le script s3test.

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

说明

Avant de continuer, consultez la section suivante de la base de connaissances relative à s3curl pour vous aider à confirmer la fonctionnalité S3 : 
ECS : Exécution d’opérations S3 de base à l’aide du script s3curl.pl.


1: Connectez-vous au nœud ECS via SSH en tant qu’utilisateur root.

2: Utilisez vi pour créer le fichier : 
  /usr/share/s3curl/s3test.sh

3: Copiez le contenu suivant dans le fichier. Veillez à modifier les adresses IP CIBLE pour qu’elles correspondent à celles de votre ECS, car le script s’exécute sur les adresses IP placées dans TARGET. En ce qui concerne le S3CURL_ID, voir ECS : Exécution d’opérations S3 de base à l’aide du script s3curl.pl.

!/bin/bash
TARGET="10.xx.xx.xx7 10.xx.xx.xx8 10.xx.xx.xx9 10.xx.xx.xx0"
S3CURL="/usr/share/s3curl/s3curl.pl"
S3CURL_ID="--id=friendlymick"
OBJECT_NAME="newfile"cat
echo "s3curl upload test" > $OBJECT_NAME
PASS="echo -e \e[32mPASSED\e[0m"
FAIL="echo -e \e[31mFAILED\e[0m"

for ip in $(echo $TARGET)
do
  echo
  echo "Node - $ip"
  BUCKET_NAME="bucket_$(date +%d%b_%H%M)_${ip}"
  echo "Bucket/Object name: $BUCKET_NAME/$OBJECT_NAME"
  echo "---------------------------------------------------------"

  # Test bucket  creation
  echo -n "Create Bucket: "
  STATUS=$($S3CURL $S3CURL_ID --createBucket -- http://${ip}:9020/${BUCKET_NAME} -s -w "%{http_code}" -o /dev/null 2> /dev/null)
  test ${STATUS:-0} -eq 200 && $PASS || { $FAIL; continue; }

  # Upload Object
  echo -n "Upload Object: "
  STATUS=$($S3CURL $S3CURL_ID --put $OBJECT_NAME -- http://${ip}:9020/${BUCKET_NAME}/${OBJECT_NAME} -s -w "%{http_code}" -o /dev/null 2> /dev/null)
  test ${STATUS:-0} -eq 200 && $PASS || $FAIL

  # Read Object
  echo -n "Read Object:   "
  STATUS=$($S3CURL $S3CURL_ID -- http://${ip}:9020/${BUCKET_NAME}/${OBJECT_NAME} -s 2> /dev/null)
  test "$STATUS" == "s3curl upload test" && $PASS || $FAIL

  # Delete Object
  echo -n "Delete Object: "
  STATUS=$($S3CURL $S3CURL_ID --delete -- http://${ip}:9020/${BUCKET_NAME}/${OBJECT_NAME} -s -w "%{http_code}" -o /dev/null 2> /dev/null)
  test ${STATUS:-0} -eq 204 && $PASS || $FAIL

  # Delete Bucket
  echo -n "Delete Bucket: "
  STATUS=$($S3CURL $S3CURL_ID --delete -- http://${ip}:9020/${BUCKET_NAME} -s -w "%{http_code}" -o /dev/null 2> /dev/null)
  test ${STATUS:-0} -eq 204 && $PASS || $FAIL

  # Verifying Deletion
  echo -n "Verify Deletion of bucket: "
  STATUS=$($S3CURL $S3CURL_ID -- http://${ip}:9020/${BUCKET_NAME} -s -w "%{http_code}" -o /dev/null 2> /dev/null)
  test ${STATUS:-0} -eq 404 && $PASS || $FAIL
done


4 : Exécutez la commande suivante pour exécuter le script :  
   # sh s3test.sh

Tous les tests doivent être réussis. Si certains tests ne sont pas RÉUSSIS, contactez le support ECS.

provo:/usr/share/s3curl # sh s3test.sh

Node - 10.xx.xx.xx7
Bucket/Object name: bucket_14Apr_1009_10.xx.xx.xx7/newfile
---------------------------------------------------------
Create Bucket: PASSED
Upload Object: PASSED
Read Object:   PASSED
Delete Object: PASSED
Delete Bucket: PASSED
Verify Deletion of bucket: PASSED

Node - 10.xx.xx.xx8
Bucket/Object name: bucket_14Apr_1009_10.xx.xx.xx8/newfile
---------------------------------------------------------
Create Bucket: PASSED
Upload Object: PASSED
Read Object:   PASSED
Delete Object: PASSED
Delete Bucket: PASSED
Verify Deletion of bucket: PASSED

Node - 10.xx.xx.xx9
Bucket/Object name: bucket_14Apr_1009_10.xx.xx.xx9/newfile
---------------------------------------------------------
Create Bucket: PASSED
Upload Object: PASSED
Read Object:   PASSED
Delete Object: PASSED
Delete Bucket: PASSED
Verify Deletion of bucket: PASSED

Node - 10.xx.xx.xx0
Bucket/Object name: bucket_14Apr_1009_10.xx.xx.xx0/newfile
---------------------------------------------------------
Create Bucket: PASSED
Upload Object: PASSED
Read Object:   PASSED
Delete Object: PASSED
Delete Bucket: PASSED
Verify Deletion of bucket: PASSED

受影响的产品

ECS Appliance Hardware Gen1 U-Series

产品

ECS Appliance Hardware Gen1 U-Series, ECS Appliance Software with Encryption, ECS Appliance Software without Encryption
文章属性
文章编号: 000023816
文章类型: How To
上次修改时间: 08 9月 2025
版本:  6
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。