iT邦幫忙

2025 iThome 鐵人賽

DAY 4
0

界面介紹

下圖是 Amazon S3 的操作界面,先別急著滑到最下面按 Create bucket,我們先來認識一下 S3 主控台的界面。畢竟 AWS 的 UI 設計哲學就是——「按鈕都給你放這裡,至於要按哪個?自己猜啊 ^_^」。
https://ithelp.ithome.com.tw/upload/images/20250914/20141071Pr4U1kkYUx.png
左手邊:功能區選單
在這裡你可以切換到:

  • Buckets:今天的主角,所有 Bucket 都列在這裡。
  • Access Points / Storage Lens / Batch Operations:名字聽起來很酷,實際上點進去後多半是「之後再慢慢研究」。
    工程師日常就是:老闆只叫你「放個檔案」,結果你在左邊看到一排選單,瞬間覺得自己要考專業證照了。

中間大舞台:Bucket 列表
這裡就是全部 Bucket 的清單,會直接列出:

  • Bucket 名稱
  • 建立在哪個 Region
  • 建立時間

右上角:操作按鈕集散地
你要對 Bucket 下狠手的功能都在這:

  • Create bucket:建立新 Bucket,人生新希望。
  • Empty:清空 Bucket,比 rm -rf 還恐怖,因為一按就全沒了。
  • Delete:直接刪除 Bucket,名字也跟著放生,結果隔天別的團隊就搶走了,你只能在 Slack 裡問「誰把我們專案名用掉了?」(要刪除 Bucket 的前置條件就是 Bucket 要是空的,如果裡面 還有檔案,就刪不了哦!!!)
    所以建議每次在這區操作,都要先喝口水冷靜一下,不然手滑就是一場事故報告。

S3 使用概念:Bucket 跟 Object 到底差在哪

  • Bucket:想像是雲端的大資料夾,但更嚴謹,地點(Region)要先選、名字全宇宙唯一(準確說是區域分割區內唯一),還能掛一堆規則(版控、加密、Policy…)。
  • Object:就是你丟進去的檔案本體(含 metadata)。人話版:Bucket = 大樓Object = 進駐的公司/文件。你在意的讀寫權限、版本、加密,大部分都跟 Object 打交道。

冷知識補充:
「S3 有資料夾嗎?」— UI 讓你看起來像有,但實際上只是 Object Key 用 / 當目錄分隔的字串。所以別再問「資料夾大小」了。

使用 Bucket 的常識補充

在開始建立 Bucket 之前有一些常識要先補充一下:

Bucket 的命名規則

  • 名稱長度必須介於 3 (最小值) 到 63 (最大值) 個字元之間
  • 名稱只能包含小寫字母、數字、句點 (.) 和連字號 ()-
  • 名稱的開頭和結尾必須為字母或數字
  • 不得格式化為 IP 地址 (例如 192.168.5.4)
    細節請見官方文件: 一般用途儲存貯體命名規則

注意事項(踩雷清單)

  • 名稱在 同區域分割區 要是 唯一。刪掉就可能被別人搶走,然後你就會說:「靠,專案名被佔了。」
  • 不要放敏感資訊 在 Bucket 名稱。因為它會出現在 URL 裡,被人一眼看穿你的公司縮寫和專案代號,資安會寄給你一封溫暖你全身的信。

命名的最佳實務

  • 選擇不太可能導致命名衝突的儲存貯體命名方案
  • 在 Bucket 名稱中加入 GUIDs 是個很好的方案,例如:amzn-s3-demo-bucket-01107ac6-e0be-4b3d-b724-example11111,
    在 PowerShell 中可用以下指令 [guid]::NewGuid() 來隨機產生一組 GUID。
PS C:\Users\user> [guid]::NewGuid()
Guid
----
01107ac6-e0be-4b3d-b724-94b230d65a7e

在 Linux環境下可用以下指令來產生 GUID

$ uuidgen
ce4a09dd-0b6e-4fbe-bb93-298ebfc84005
  • 避免用 .(dot):SSL 與某些相容性情境會比較雷,能不用就不用。
  • 名字取得漂亮想長期佔著?清空 Object 就好,Bucket 先別刪。空的 Bucket 不收錢,名字還能霸住,一舉兩得。

建立 Bucket

接著讓我們實作建立一個 Bucket,只要依著 UI 一步步設定就可以囉!下圖是 S3 建立 Bucket 的畫面,我們一步步來說明。
https://ithelp.ithome.com.tw/upload/images/20250914/20141071oftZT8HoeZ.png

  1. Region(區域)
    • 決定資料住哪、錢包多痛、延遲多低。
    • 速記心法:
      • 看價格:美東/美西通常省(但要算跨區傳輸)。
      • 看速度:離使用者近就對了,台灣/日本常見。
    • 記得一開始就選好,別開到一半才想換,不然你會開始思考「跨區搬家」要怎麼寫腳本。
  2. Bucket type
    • General purpose 請直接選它。
    • 另有 Directory 是走特殊情境。九成九新手用不到,用到的人早就知道自己在幹嘛了,我也不用多說明了。
  3. Bucket Name
    • 照前面的規則取名。弄錯了 UI 的檢查邏輯會打臉你。
    • 小撇步:<code-name>-<env>-<guid>,例如 lalago-prod-01107ac6…
    • 看到 mybucket 這種名字請大喊:「這誰命名的!」,命名取太爛,沒多久就會記不清這個 bucket 之前建出來是要做什麼用的。
  4. Object Ownership(物件擁有權 / ACL)
    • 新專案建議:ACLs disabled(預設),用 Bucket policy + IAM 管權限,乾淨好維護。
    • 只有在你真的需要第三方跨帳戶、歷史包袱奇形怪狀時,才會動用 ACLs enabled
    • 預判資安會問:為什麼開 ACL?請準備一頁簡報,不然會被盯。
  5. Block Public Access(封鎖公開存取)
    • 新建 Bucket 一律 全勾,先把門鎖好,之後需要公開再「精準解鎖」。
    • 如果存放的是私有資料庫快照、內部備份、合約檔案?通通鎖死,絕對不能開。
    • 把它當成「預設安全姿勢」,別直接把資料權限外露。
  6. Bucket Versioning(版本控管)
    • 開了之後每次覆寫都會留版。救命用超好:誤刪檔?回舊版。
    • 但也用量會變多:版本多了錢也跟著多。
    • 建議:
      • 重要資料:開 + 設 Lifecycle 自動過期舊版。
      • 臨時/測試:不要手賤開,不然月底對帳會想辭職。
  7. Tags(標籤)
    • 成本歸戶的靈魂:Project=foo, Env=prod, Owner=team-bar,可以追蹤錢都花哪去了。
    • 沒貼 Tag 的資源 = 月底財務會議的壞消息來源,找不出是誰花的錢,最糟的情況就是公攤了。
    • 老闆問:「這個月又爆預算了是誰?」你就會感謝當初有貼好 Tag。
  8. Default encryption(預設加密)
    • SSE-S3:一鍵安心,AWS 管金鑰,便宜好用。
    • SSE-KMS:自己選 KMS Key,審計/分權更細,但KMS 請求要錢,大量小檔可能把你敲到懷疑人生。
    • 公開靜態網站素材通常 SSE-S3 就夠;如果公司要求極度嚴格,想合規/金流資料請上 KMS。
      最後選擇右下角的 Create Bucket 來完成建立 Bucket 的操作。

才寫一下又到半夜了,今天先到這裡,明天再接著繼續講古哦。

參考資料:Amazon S3 使用者指南官方文件 - https://docs.aws.amazon.com/zh_tw/AmazonS3/latest/userguide/Welcome.html


上一篇
Day 3 - Amazon S3的隱藏服務 - 2
系列文
最適合小型工作室精打細算的服務使用法4
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言