{"id":35024,"date":"2024-10-04T12:16:54","date_gmt":"2024-10-04T05:16:54","guid":{"rendered":"http:\/\/jupitek.maudemo.vip\/index.php\/2024\/10\/04\/use-the-aws-cli-with-object-storage\/"},"modified":"2024-10-04T12:16:54","modified_gmt":"2024-10-04T05:16:54","slug":"use-the-aws-cli-with-object-storage","status":"publish","type":"post","link":"https:\/\/jupitek.maudemo.vip\/index.php\/2024\/10\/04\/use-the-aws-cli-with-object-storage\/","title":{"rendered":"S\u1eed d\u1ee5ng AWS CLI v\u1edbi Object Storage"},"content":{"rendered":"<p>AWS CLI c\u1ee7a Amazon l\u00e0 m\u1ed9t c\u00f4ng c\u1ee5 d\u00f2ng l\u1ec7nh c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 giao ti\u1ebfp v\u1edbi d\u1ecbch v\u1ee5 L\u01b0u tr\u1eef \u0111\u1ed1i t\u01b0\u1ee3ng.<\/p>\n<p class=\"has-background\" style=\"background-color:#aef3d8\">H\u01b0\u1edbng d\u1eabn trong h\u01b0\u1edbng d\u1eabn n\u00e0y s\u1eed d\u1ee5ng AWS CLI phi\u00ean b\u1ea3n 2. C\u00e1c phi\u00ean b\u1ea3n c\u0169 h\u01a1n c\u00f3 th\u1ec3 kh\u00f4ng ho\u1ea1t \u0111\u1ed9ng. N\u1ebfu b\u1ea1n \u0111ang s\u1eed d\u1ee5ng phi\u00ean b\u1ea3n 1 (ho\u1eb7c c\u0169 h\u01a1n), b\u1ea1n c\u00f3 th\u1ec3 mu\u1ed1n g\u1ee1 c\u00e0i \u0111\u1eb7t n\u00f3 tr\u01b0\u1edbc khi ti\u1ebfp t\u1ee5c. Xem C\u00e0i \u0111\u1eb7t, c\u1eadp nh\u1eadt v\u00e0 g\u1ee1 c\u00e0i \u0111\u1eb7t AWS CLI (phi\u00ean b\u1ea3n 1).<\/p>\n<h2 id=\"h-cai-d\u1eb7t-aws-cli\">C\u00e0i \u0111\u1eb7t AWS CLI<\/h2>\n<p>Vi\u1ec7c c\u00e0i \u0111\u1eb7t AWS CLI phi\u00ean b\u1ea3n 2 th\u01b0\u1eddng \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n b\u1eb1ng c\u00e1ch t\u1ea3i xu\u1ed1ng g\u00f3i d\u00e0nh cho h\u1ec7 \u0111i\u1ec1u h\u00e0nh c\u1ee7a b\u1ea1n v\u00e0 c\u00e0i \u0111\u1eb7t g\u00f3i \u0111\u00f3. V\u00ec hi\u1ec7n t\u1ea1i kh\u00f4ng c\u00f3 c\u00e1ch ch\u00ednh th\u1ee9c \u0111\u1ec3 th\u1ef1c hi\u1ec7n vi\u1ec7c n\u00e0y th\u00f4ng qua tr\u00ecnh qu\u1ea3n l\u00fd g\u00f3i n\u00ean b\u1ea1n ph\u1ea3i t\u1ea3i xu\u1ed1ng g\u00f3i theo c\u00e1ch th\u1ee7 c\u00f4ng. \u0110\u1ec3 th\u1ef1c hi\u1ec7n vi\u1ec7c n\u00e0y, h\u00e3y l\u00e0m theo h\u01b0\u1edbng d\u1eabn d\u00e0nh cho h\u1ec7 \u0111i\u1ec1u h\u00e0nh c\u1ee7a b\u1ea1n trong h\u01b0\u1edbng d\u1eabn C\u00e0i \u0111\u1eb7t, c\u1eadp nh\u1eadt v\u00e0 g\u1ee1 c\u00e0i \u0111\u1eb7t AWS CLI.<\/p>\n<h2>\u0110\u1ecbnh c\u1ea5u h\u00ecnh AWS CLI<\/h2>\n<p>Ch\u1ea1y l\u1ec7nh sau trong thi\u1ebft b\u1ecb \u0111\u1ea7u cu\u1ed1i \u01b0a th\u00edch c\u1ee7a b\u1ea1n:<\/p>\n<pre class=\"wp-block-code\"><code><code>aws configure<\/code><\/code><\/pre>\n<p>Sau \u0111\u00f3, b\u1ea1n \u0111\u01b0\u1ee3c nh\u1eafc \u0111i\u1ec1n v\u00e0o m\u1ed9t v\u00e0i th\u00f4ng s\u1ed1:<\/p>\n<ul>\n<li>ID kh\u00f3a truy c\u1eadp AWS: Nh\u1eadp kh\u00f3a truy c\u1eadp b\u1ea1n mu\u1ed1n s\u1eed d\u1ee5ng. Xem Qu\u1ea3n l\u00fd kh\u00f3a truy c\u1eadp.<\/li>\n<\/ul>\n<ul>\n<li>Kh\u00f3a truy c\u1eadp b\u00ed m\u1eadt AWS: Nh\u1eadp kh\u00f3a b\u00ed m\u1eadt t\u01b0\u01a1ng \u1ee9ng v\u1edbi kh\u00f3a truy c\u1eadp. \u0110i\u1ec1u n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb m\u1ed9t l\u1ea7n khi t\u1ea1o kh\u00f3a truy c\u1eadp.<\/li>\n<\/ul>\n<ul>\n<li>T\u00ean v\u00f9ng m\u1eb7c \u0111\u1ecbnh: Nh\u1ea5n enter m\u00e0 kh\u00f4ng nh\u1eadp b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o \u0111\u1ec3 gi\u1eef nguy\u00ean v\u00f9ng m\u1eb7c \u0111\u1ecbnh c\u1ee7a ch\u00fang t\u00f4i. Kh\u00f4ng thay \u0111\u1ed5i \u0111i\u1ec1u n\u00e0y, ngay c\u1ea3 khi b\u1ea1n s\u1eed d\u1ee5ng B\u1ed9 l\u01b0u tr\u1eef \u0111\u1ed1i t\u01b0\u1ee3ng \u1edf khu v\u1ef1c b\u00ean ngo\u00e0i Hoa K\u1ef3.<\/li>\n<\/ul>\n<ul>\n<li>\u0110\u1ecbnh d\u1ea1ng \u0111\u1ea7u ra m\u1eb7c \u0111\u1ecbnh: Nh\u1ea5n enter m\u00e0 kh\u00f4ng nh\u1eadp b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o.<\/li>\n<\/ul>\n<p>Xem c\u00e1c h\u01b0\u1edbng d\u1eabn sau t\u1eeb AWS \u0111\u1ec3 bi\u1ebft th\u00eam chi ti\u1ebft v\u1ec1 c\u00e1ch \u0111\u1ecbnh c\u1ea5u h\u00ecnh CLI: Thi\u1ebft l\u1eadp v\u00e0 \u0111\u1ecbnh c\u1ea5u h\u00ecnh nhanh AWS CLI.<\/p>\n<h2>Tham s\u1ed1 b\u1ed5 sung cho l\u1ec7nh AWS CLI<\/h2>\n<p>URL \u0111i\u1ec3m cu\u1ed1i: Khi s\u1eed d\u1ee5ng AWS CLI v\u1edbi d\u1ecbch v\u1ee5 kh\u00f4ng ph\u1ea3i AWS, nh\u01b0 Object Storage, b\u1ea1n ph\u1ea3i lu\u00f4n ch\u1ec9 \u0111\u1ecbnh url \u0111i\u1ec3m cu\u1ed1i trong m\u1ed7i l\u1ec7nh. \u0110i\u1ec1u n\u00e0y \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n th\u00f4ng qua tham s\u1ed1 &#8211;endpoint. Khi s\u1eed d\u1ee5ng c\u00e1c l\u1ec7nh trong h\u01b0\u1edbng d\u1eabn n\u00e0y, h\u00e3y lu\u00f4n thay th\u1ebf [endpoint-url] b\u1eb1ng URL c\u1ee5m t\u01b0\u01a1ng \u1ee9ng v\u1edbi trung t\u00e2m d\u1eef li\u1ec7u b\u1ea1n \u0111ang s\u1eed d\u1ee5ng (xem URL c\u1ee5m (\u0111i\u1ec3m cu\u1ed1i S3)).<\/p>\n<h2>T\u01b0\u01a1ng t\u00e1c v\u1edbi x\u00f4<\/h2>\n<p><strong>Li\u1ec7t k\u00ea c\u00e1c nh\u00f3m<\/strong><\/p>\n<p>Li\u1ec7t k\u00ea t\u1ea5t c\u1ea3 c\u00e1c nh\u00f3m trong trung t\u00e2m d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c ch\u1ec9 \u0111\u1ecbnh trong qu\u00e1 tr\u00ecnh \u0111\u1ecbnh c\u1ea5u h\u00ecnh.<\/p>\n<p>L\u1ec7nh: aws s3 ls &#8211;endpoint=[endpoint-url], thay th\u1ebf [endpoint-url]<\/p>\n<p>V\u00ed d\u1ee5: Li\u1ec7t k\u00ea t\u1ea5t c\u1ea3 c\u00e1c nh\u00f3m tr\u00ean t\u00e0i kho\u1ea3n trong trung t\u00e2m d\u1eef li\u1ec7u Atlanta:<\/p>\n<pre class=\"wp-block-code\"><code>aws s3 ls --endpoint=https:\/\/us-southeast-1.linodeobjects.com<\/code><\/pre>\n<p><strong>t\u1ea1o bucket<\/strong><\/p>\n<p>T\u1ea1o m\u1ed9t nh\u00f3m c\u00f3 nh\u00e3n nh\u00f3m \u0111\u01b0\u1ee3c ch\u1ec9 \u0111\u1ecbnh. Xem h\u01b0\u1edbng d\u1eabn T\u1ea1o v\u00e0 qu\u1ea3n l\u00fd nh\u00f3m \u0111\u1ec3 bi\u1ebft c\u00e1c quy t\u1eafc \u0111\u1eb7t t\u00ean cho nh\u00f3m.<\/p>\n<p>L\u1ec7nh: aws s3 mb s3:\/\/[bucket-label] &#8211;endpoint=[endpoint-url] &#8211;khu v\u1ef1c=us-east-1, thay th\u1ebf [nh\u00e3n nh\u00f3m] b\u1eb1ng nh\u00e3n b\u1ea1n mu\u1ed1n s\u1eed d\u1ee5ng cho x\u00f4 m\u1edbi.<\/p>\n<p>V\u00ed d\u1ee5: T\u1ea1o m\u1ed9t nh\u00f3m c\u00f3 nh\u00e3n &#8220;example-bucket&#8221; trong trung t\u00e2m d\u1eef li\u1ec7u Atlanta:<\/p>\n<pre class=\"wp-block-code\"><code>aws s3 mb s3:\/\/example-bucket --endpoint=https:\/\/us-southeast-1.linodeobjects.com --khu v\u1ef1c=us-east-1<\/code><\/pre>\n<h2>X\u00f3a m\u1ed9t nh\u00f3m<\/h2>\n<p><strong>X\u00f3a nh\u00f3m c\u00f3 nh\u00e3n \u0111\u01b0\u1ee3c ch\u1ec9 \u0111\u1ecbnh.<\/strong><\/p>\n<p>L\u1ec7nh: s3cmd rb s3:\/\/[bucket-label], thay th\u1ebf [nh\u00e3n nh\u00f3m] b\u1eb1ng nh\u00e3n c\u1ee7a nh\u00f3m b\u1ea1n mu\u1ed1n x\u00f3a.<\/p>\n<p>V\u00ed d\u1ee5: X\u00f3a nh\u00f3m c\u00f3 nh\u00e3n &#8220;example-bucket&#8221;:<\/p>\n<pre class=\"wp-block-code\"><code>s3cmd rb s3:\/\/example-bucket<\/code><\/pre>\n<p>\u0110\u1ec3 x\u00f3a m\u1ed9t nh\u00f3m c\u00f3 t\u1ec7p trong \u0111\u00f3, h\u00e3y th\u00eam t\u00f9y ch\u1ecdn &#8211;recursive (ho\u1eb7c -r) v\u00e0 t\u00f9y ch\u1ecdn &#8211;force (ho\u1eb7c -f). H\u00e3y th\u1eadn tr\u1ecdng khi ch\u1ea1y l\u1ec7nh n\u00e0y:<\/p>\n<pre class=\"wp-block-code\"><code>s3cmd rb -r -f s3:\/\/example-bucket\/<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>AWS CLI c\u1ee7a Amazon l\u00e0 m\u1ed9t c\u00f4ng c\u1ee5 d\u00f2ng l\u1ec7nh c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 giao ti\u1ebfp v\u1edbi d\u1ecbch v\u1ee5 L\u01b0u tr\u1eef \u0111\u1ed1i t\u01b0\u1ee3ng. H\u01b0\u1edbng d\u1eabn trong h\u01b0\u1edbng d\u1eabn n\u00e0y s\u1eed d\u1ee5ng AWS CLI phi\u00ean b\u1ea3n 2. C\u00e1c phi\u00ean b\u1ea3n c\u0169 h\u01a1n c\u00f3 th\u1ec3 kh\u00f4ng ho\u1ea1t \u0111\u1ed9ng. N\u1ebfu b\u1ea1n \u0111ang s\u1eed d\u1ee5ng phi\u00ean b\u1ea3n<\/p>\n","protected":false},"author":1,"featured_media":36230,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[103],"tags":[],"class_list":["post-35024","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-clients-and-tooling"],"_links":{"self":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts\/35024","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/comments?post=35024"}],"version-history":[{"count":0,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts\/35024\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/media\/36230"}],"wp:attachment":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/media?parent=35024"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/categories?post=35024"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/tags?post=35024"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}