

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon ECS 受管協助程式
<a name="managed-daemons"></a>

Amazon ECS Managed Daemons 可讓您在 Amazon ECS 受管執行個體上的容器基礎設施中部署和管理軟體代理程式，例如安全性、可觀測性和聯網代理程式。Managed Daemons 會將協助程式生命週期管理與應用程式操作分離。您可以獨立部署、更新和監控代理程式，而無需重新部署工作負載或協調跨服務的變更。

## 協助程式重要性
<a name="managed-daemons-criticality"></a>

您可以根據協助程式失敗是否會導致 Amazon ECS 耗盡容器執行個體，將每個受管協助程式設定為關鍵或非關鍵。
+ **關鍵** - 預設。Amazon ECS 會在將應用程式任務放置在執行個體之前啟動協助程式任務，如果協助程式任務停止或運作狀態不佳，Amazon ECS 會耗盡並取代容器執行個體。
+ **非關鍵** - 將 `critical` 參數設定為 `false`。協助程式任務的運作與容器執行個體運作狀態無關。如果非關鍵協助程式任務失敗、停止或變得運作狀態不佳，Amazon ECS 會保持容器執行個體處於作用中狀態。現有的應用程式任務會持續執行，而 Amazon ECS 會持續在其中放置新的應用程式任務。非關鍵協助程式永遠不會封鎖執行個體註冊，因此即使協助程式無法啟動，也可以立即放置應用程式任務。

## Managed Daemons 的運作方式
<a name="managed-daemons-how-it-works"></a>

若要使用受管協助程式，請先註冊協助程式任務定義。協助程式任務定義是描述形成協助程式之容器的範本。註冊協助程式任務定義後，請建立協助程式，並將其與叢集和一或多個 Amazon ECS 受管執行個體容量提供者建立關聯。然後，Amazon ECS 可確保在透過這些容量提供者佈建的每個 Amazon EC2 執行個體上執行一個協助程式任務。

協助程式不會獨立啟動執行個體。當您在 Amazon ECS 受管執行個體容量提供者上執行應用程式任務時，Amazon ECS 會佈建 Amazon EC2 執行個體、啟動協助程式任務，然後才將應用程式任務轉換為 `RUNNING`。無論重要性為何，Amazon ECS 都會對每個協助程式使用此順序，以便在應用程式開始處理請求之前，執行記錄、追蹤和指標集合等跨截斷函數。

關鍵性控制當協助程式任務未啟動或稍後停止時，Amazon ECS 會做什麼。對於關鍵協助程式，無法啟動的任務會讓執行個體保持作用中狀態。在執行個體處於作用中狀態後停止或變成運作狀態不佳的任務，會導致 Amazon ECS 耗盡並取代執行個體。這種自動修復行為可維持可靠的協助程式涵蓋範圍，無需手動介入。

非關鍵協助程式永遠不會封鎖執行個體，也不會觸發耗盡。即使協助程式任務無法啟動，執行個體也會變成作用中，並在協助程式任務停止或稍後變得運作狀態不佳時保持作用中狀態。您的應用程式任務會持續執行，而 Amazon ECS 會持續在執行個體上放置新的應用程式任務。

當您將協助程式更新為新的任務定義修訂時，Amazon ECS 會在關聯容量提供者中的所有執行個體之間執行滾動部署。在部署期間，Amazon ECS 會同時耗盡可設定的執行個體百分比、使用更新的協助程式佈建取代執行個體，並自動取代您的 Amazon ECS 服務任務。Amazon ECS 提供內建斷路器保護。您可以設定製作時間和 CloudWatch 警示，讓 Amazon ECS 在更新所有執行個體後監控部署，並在發生問題時自動轉返。Amazon ECS 會發出 EventBridge 事件，並在協助程式任務無法啟動時，針對關鍵和非關鍵協助程式記錄服務動作日誌。

## 主要優點
<a name="managed-daemons-benefits"></a>
+ **解耦生命週期管理** - 獨立於應用程式部署更新協助程式。
+ **保證涵蓋**範圍 - Amazon ECS 會在每個執行個體上的應用程式任務之前啟動協助程式任務，因此跨切割函數會在應用程式開始處理請求之前運作。對於關鍵協助程式，無法啟動的協助程式任務也會讓執行個體無法註冊，因此執行個體永遠不會在沒有協助程式的情況下提供應用程式任務。
+ **可靠的版本更新** - 當您更新協助程式版本時，Amazon ECS 會將其推展到關聯容量提供者中的所有執行個體，並內建斷路器保護和自動推展，以確保每個執行個體執行目標修訂。
+ **改善資源使用率** - 每個執行個體執行單一協助程式任務可消除sidecar-per-task模型，減少叢集的資源負荷。
+ **自動執行個體修復** - 對於關鍵協助程式，如果協助程式任務停止或運作狀態不佳，Amazon ECS 會自動耗盡並取代該容器執行個體。這可維持可靠的協助程式涵蓋範圍，無需手動介入。
+ **工作負載持續性** - 非關鍵協助程式可讓應用程式工作負載持續執行，即使協助程式任務失敗、停止或運作狀態不佳也一樣。

**注意**  
Amazon ECS 為 Amazon EC2 啟動類型的 Amazon EC2 服務提供 DAEMON 排程策略。Managed Daemons 是為 Amazon ECS 受管執行個體建置的新功能，可簡化協助程式部署並提供更強大的協助程式涵蓋範圍保證。

## 開始使用
<a name="managed-daemons-getting-started"></a>

若要開始使用，請註冊指定容器映像的協助程式任務定義，然後在叢集中建立具有相關聯容量提供者的協助程式。您可以使用 AWS 管理主控台、 AWS CLI CloudFormation、 或 AWS SDKs。如需逐步說明，請參閱 [建立和管理協助程式](managed-daemons-create-manage.md)。