ЕКС: Як протестувати S3 створення сегмента, завантаження об'єкта, читання об'єкта, видалення об'єкта, видалення сегмента за допомогою скрипта s3test.sh
Summary: Як протестувати S3 створення сегмента, завантаження об'єкта, читання об'єкта, видалення об'єкта, видалення сегмента за допомогою скрипта s3test.
Instructions
Перш ніж продовжити, перегляньте наступну пов'язану базу даних для s3curl, щоб допомогти підтвердити функціональність S3:
ЕКС: Як виконувати базові операції S3 за допомогою скрипта s3curl.pl.
1: Увійдіть у вузол ECS через SSH як користувач root.
2: Використовуйте vi для створення файлу:
/usr/share/s3curl/s3test.sh
3: Скопіюйте у файл наведений нижче вміст. Переконайтеся, що ви змінили IP-адреси TARGET , щоб вони відповідали IP-адресам вашого ECS, оскільки скрипт працює на будь-яких IP-адресах, розміщених у TARGET. Щодо S3CURL_IDдив. Як виконувати базові операції S3 за допомогою скрипта 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: Для запуску скрипту видайте наступну команду:
# ш s3test.sh
Всі аналізи повинні повернутися як пройдені. Якщо деякі тести не відповідають як ЗДАНО, зверніться до служби підтримки 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