bitintheskud.ansible-role-ecs-agent
CentOS ECS Agent Ansible Rolle
Diese Rolle ermöglicht die Konfiguration des ECS-Container-Agenten auf reinen CentOS 7-Hosts.
Anforderungen
- Ansible 2.2+
- Getestet auf CentOS 7.4.1708
Rollenvariablen
Weitere Informationen finden Sie unter:
http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
ecs_agent_loglevel
:ECS_LOGLEVEL
(Standard: info)ecs_agent_cluster_name
:ECS_CLUSTER
(Standard: default)ecs_agent_enable_iam_role
:ECS_ENABLE_TASK_IAM_ROLE
(Standard: true)ecs_agent_enable_task_iam_role_network_host
:ECS_ENABLE_TASK_IAM_ROLE_NETWORK_HOST
(Standard: true)ecs_agent_reserved_ports
:ECS_RESERVED_PORTS
(Standard: "[22, 2375, 2376, 51678]")ecs_agent_container_stop_timeout
:ECS_CONTAINER_STOP_TIMEOUT
(Standard: 30s)ecs_agent_auth_type
:ECS_ENGINE_AUTH_TYPE
(Standard: "")ecs_agent_auth_data
:ECS_ENGINE_AUTH_DATA
(Standard: "")ecs_agent_data_dir
:ECS_DATADIR
(Standard: "/data")ecs_agent_log_file
:ECS_LOGFILE
(Standard: "/log/ecs_agent.log")
Abhängigkeiten
Docker muss installiert und aktiv sein.
Siehe:
Hinweise
Diese Rolle richtet den AWS ECS-Agenten gemäß der Dokumentation ein, einschließlich der Hinzufügung von iptables-Regeln. Beachten Sie jedoch, dass diese Rolle nicht dafür zuständig ist, die iptables-Regeln für Sie zu speichern (über iptables-save
oder ähnliche Methoden). Wenn Sie die iptables-Regeln auf der Festplatte speichern möchten, damit sie nach einem Neustart erhalten bleiben, sollten Sie dies außerhalb dieser Rolle erledigen.
Beispiel-Playbook
---
- name: AWS ECS Agent Playbook
hosts: all
become: yes
vars:
- ecs_agent_cluster_name: MeinClusterName
roles:
- ansible-role-ecs-agent
Verbesserungen in der nächsten Version
- Travis-Build hinzufügen.
- Unterstützung für den Logging-Treiber hinzufügen. Siehe: https://github.com/open-guides/og-aws#ecs-tips
- Unterstützung für Reinigungsoptionen hinzufügen:
ECS_ENGINE_TASK_CLEANUP_WAIT_DURATION
Diese Variable gibt die Zeit an, die gewartet werden soll, bevor Container von gestoppten Aufgaben entfernt werden. Der Image-Reinigungsprozess kann ein Image nur löschen, wenn kein Container mehr darauf verweist. Sobald Images nicht mehr von Containern (entweder gestoppt oder aktiv) referenziert werden, werden sie für die Reinigung in Betracht gezogen. Standardmäßig ist dieser Parameter auf 3 Stunden gesetzt, kann jedoch auf bis zu 1 Minute reduziert werden, wenn dies für Ihre Anwendung erforderlich ist.
ECS_DISABLE_IMAGE_CLEANUP
Wenn Sie diese Variable auf true setzen, wird die automatische Image-Reinigung auf Ihrer Containerinstanz deaktiviert und keine Images werden automatisch entfernt.
ECS_IMAGE_CLEANUP_INTERVAL
Diese Variable gibt an, wie oft der automatisierte Image-Reinigungsprozess nach zu löschenden Images suchen soll. Der Standardwert ist alle 30 Minuten, kann jedoch auf bis zu 10 Minuten verkürzt werden, um Images häufiger zu entfernen.
ECS_IMAGE_MINIMUM_CLEANUP_AGE
Diese Variable gibt die minimale Zeitspanne zwischen dem Abruf eines Images und dem Zeitpunkt, zu dem es zur Entfernung in Betracht gezogen werden kann, an. Dies dient dazu, die Reinigung von Images zu verhindern, die gerade abgerufen wurden. Der Standardwert beträgt 1 Stunde.
ECS_NUM_IMAGES_DELETE_PER_CYCLE
Diese Variable gibt an, wie viele Images während eines einzelnen Reinigungszyklus entfernt werden dürfen. Der Standardwert beträgt 5, das Minimum ist 1.
Lizenz
Lizenziert unter der MIT-Lizenz. Siehe die LICENSE-Datei für Details.