2017年,AWS 推出了 Fargate,這是一個用於部署和管理容器的模式,代表用戶無需管理 EC2 基礎設施。 Fargate 的核心理念就是 Serverless ,讓 ECS 用戶專注於任務和服務定義,而不是管理集群基礎設施,Fargate 可配合用於 ECS 和 EKS。
ECS (Elastic Container Service) 和 EKS(Elastic Kubernetes Service)都是 AWS 上提供的 Container Orchestration ( 容器管理工具 ),核心都是中央控制管理運行的容器化應用程式,以下來簡單介紹一下吧。
前面有介紹用 dp 方式把這題給解了,但看一下 Related Topics 發現也可以用 Binary Search 求解,上網參考大神們的解法,感覺特別巧妙。因為這題可用 dp 和 Binary Search,也變成是一道高頻難題。 這邊記錄一下大神們的想法。
隨著系統的擴充, Terraform 配置也會變得越來越複雜,這時可能會需要做一些 Refactor,例如 :
- 將某些 terraform resource 移動到其他 module
- change resource ID
這時候用 terraform plan 檢查一下,會發現 terraform 打算把原本的 resource 移除,然後重新建立一個新的 resource。但 resource 中間被刪掉,之後再造回來是會影響服務的。我們必須讓 Terraform 知道我只是重新命名,這就是 Terraform move 想做的事情。
cloud-init 是一個 package,可以藉由配置 cloud-init 來執行各種任務,自動初始化 cloud instance。在初次開機時就將想要的檔案或設定與系統一併弄好而不用手動處理。大部分雲平台都支持 cloud-init,目前是 industry standard (行業標準)。
使用 Packer 建立 AWS EC2 AMI 或者是 GCP Machine Image,兩個都會有機率發生一些問題, 有時候是 image 內一些應用程式安裝出現問題;有時候是再最後啟動 AWS 或 GCP 虛擬機時,使用 user-data 或 startup-script 時會出現問題,共同的錯誤訊息是 no installation candidate. 。 AWS 機率發生體感機率比 GCP 高不少。那問題的根源是什麼呢,來看看吧!