Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Definizioni delle attività daemon
Una definizione di task daemon è il modello per il tuo demone. Amazon ECS Managed Daemons utilizza una risorsa dedicata per la definizione delle attività dei daemon, distinta dalle definizioni di attività standard di Amazon ECS. Registri una definizione di attività daemon per specificare l'immagine del contenitore, i requisiti di risorse e la configurazione per il tuo daemon.
Creazione di una definizione di attività daemon
È possibile creare una definizione di attività daemon utilizzando o il. Console di gestione AWS AWS CLI
Usando il Console di gestione AWS
-
Apri la console Amazon ECS. Nella barra di navigazione a sinistra, scegli Definizioni delle attività Daemon.
-
Scegli Crea una nuova definizione di attività daemon.
-
Per la famiglia di definizioni di attività Daemon, inserisci un nome univoco. Il nome può contenere fino a 255 caratteri alfanumerici, trattini e caratteri di sottolineatura.
-
(Facoltativo) Per il ruolo Task, scegli un ruolo IAM che conceda le autorizzazioni alle applicazioni in esecuzione nei tuoi contenitori. Lascia vuoto questo campo se i contenitori non chiamano. AWS APIs
-
(Facoltativo) Per Ruolo di esecuzione dell'attività, selezionare
ecsTaskExecutionRole. Amazon ECS richiede questo ruolo per estrarre le immagini dei container e pubblicare i log. -
(Facoltativo) Per le dimensioni dell'attività, specifica la CPU e la memoria da riservare per il tuo demone. Ad esempio,
0.25 vCPUe memoria.512 MB -
Configura i dettagli del contenitore:
-
Nome del contenitore: inserisci un nome per il contenitore. Il nome può contenere fino a 255 caratteri alfanumerici, trattini e caratteri di sottolineatura.
-
Contenitore essenziale: seleziona Sì. Ogni definizione di attività daemon richiede almeno un contenitore essenziale. Se un container essenziale si guasta, Amazon ECS interrompe l'intera operazione.
-
URI dell'immagine: inserisci l'URI dell'immagine Docker. Puoi sfogliare le immagini di Amazon ECR o utilizzare immagini pubbliche da Docker Hub o da altri registri.
-
-
(Facoltativo) Configura l'allocazione delle risorse, il controllo dello stato, le variabili di ambiente, la raccolta dei log e i tag in base alle esigenze.
-
Controlla la configurazione e scegli Crea.
Usando il AWS CLI
Registra una definizione di attività daemon creando un file JSON e utilizzando il comando. register-daemon-task-definition
Di seguito è riportato un esempio di file JSON:
{ "family": "my-daemon-task", "containerDefinitions": [ { "name": "daemon-container", "image": "public.ecr.aws/docker/library/busybox:latest", "essential": true, "command": ["sh", "-c", "while true; do echo 'Daemon running'; sleep 30; done"], "memoryReservation": 512 } ] }
Eseguite il comando seguente per registrare la definizione del task daemon:
aws ecs register-daemon-task-definition --cli-input-json file://daemon-taskdef.json
Parametri di definizione del task Daemon
È possibile utilizzare i seguenti parametri quando si registra una definizione di attività daemon.
Parametri obbligatori
-
family- Il nome della famiglia della definizione dell'attività. Questo raggruppa più revisioni della stessa definizione di attività daemon. -
containerDefinitions- Una serie diDaemonContainerDefinitionoggetti che descrivono i contenitori del task daemon.
Parametri opzionali
-
cpu- Unità CPU a livello di attività come stringa (ad esempio,)."256" -
memory- Memoria a livello di attività in MiB come stringa (ad esempio,)."512" -
taskRoleArn- L'ARN del ruolo IAM che concede le autorizzazioni ai contenitori nell'attività daemon. -
executionRoleArn- L'ARN del ruolo IAM che l'agente container Amazon ECS utilizza per effettuare chiamate AWS API per tuo conto (ad esempio, estrarre immagini da Amazon ECR). -
volumes- Una serie di oggetti.DaemonVolumeI volumi Daemon supportano solo i bind mount con e.hostsourcePathLe definizioni delle attività daemon non supportano Amazon EBS, Amazon EFS, FSx per Windows File Server, volumi Docker o storage temporaneo. -
tags- Una serie di coppie chiave-valore per etichettare la definizione dell'attività daemon.
Modalità di rete
I daemon utilizzano una modalità di daemon_bridge rete speciale che Amazon ECS imposta automaticamente. Non è possibile specificare una modalità di rete nella definizione dell'attività del demone. Tutti i daemon su un'istanza condividono un unico namespace di rete e sono accessibili localmente tramite un indirizzo IP statico del daemon bridge (per o per). 169.254.172.2 IPv4 fd00:ec2::172:2 IPv6 Le attività applicative (diverse dai demoni) possono comunicare con i demoni a questo indirizzo senza ulteriori configurazioni di rete.
Poiché i demoni vengono eseguiti in uno spazio dei nomi di rete separato dalle attività applicative, le attività non demoniache non devono preoccuparsi dei conflitti di porta con i daemon. Tuttavia, poiché tutte le attività daemon condividono lo stesso spazio dei nomi, i demoni sulla stessa istanza non possono collegarsi alla stessa porta. Quando distribuisci più daemon, assicurati che ogni daemon utilizzi una porta unica.
Funzionalità privilegiate
Su Amazon ECS Managed Instances, i daemon supportano funzionalità Linux privilegiate per operazioni a livello di sistema. Gli agenti di sicurezza, gli strumenti di monitoraggio della rete e gli agenti di osservabilità spesso richiedono l'accesso a livello di kernel per funzionare correttamente.
È possibile concedere funzionalità in due modi:
La modalità con privilegi completi concede tutte le funzionalità Linux al contenitore. Usala quando il tuo agente richiede un ampio accesso al sistema:
{ "containerDefinitions": [{ "name": "security-daemon", "image": "my-security-agent:latest", "privileged": true }] }
Le funzionalità individuali concedono solo le autorizzazioni necessarie al demone, secondo il principio del privilegio minimo. Utilizza il linuxParameters.capabilities campo per aggiungere funzionalità individuali comeSYS_ADMIN,, e: NET_ADMIN SYS_PTRACE BPF
{ "containerDefinitions": [{ "name": "monitoring-daemon", "image": "my-monitoring-agent:latest", "linuxParameters": { "capabilities": { "add": ["NET_ADMIN", "SYS_PTRACE"] } } }] }
Volumi
I Managed Daemons supportano i bind mount utilizzando volumi host con una specifica. sourcePath Ciò consente ai contenitori daemon di montare le directory host per accedere a log, metriche e informazioni di sistema sull'istanza Amazon EC2 sottostante. Gli agenti di raccolta dei log, gli esportatori di metriche e gli scanner di sicurezza lo utilizzano comunemente per ottenere visibilità sui dati a livello di host.
La definizione del task daemon supporta le specifiche del volume host con. sourcePath I volumi daemon persistono per tutto il ciclo di vita dell'istanza del contenitore sottostante.
Nota
I volumi Amazon EBS, i volumi Amazon EFS, FSx per i volumi Windows File Server, i volumi Docker e lo storage temporaneo non sono supportati nelle definizioni delle attività daemon.
Nota
I daemon non supportano la condivisione di volumi tra loro. Ogni demone funziona con una propria configurazione di volume indipendente.
L'esempio seguente mostra un demone di raccolta di log con un bind mount:
{ "containerDefinitions": [{ "name": "log-collector", "image": "fluent/fluentd:latest", "mountPoints": [{ "sourceVolume": "var-log", "containerPath": "/var/log" }] }], "volumes": [{ "name": "var-log", "host": { "sourcePath": "/var/log" } }] }
Parametri del contenitore supportati
Le definizioni dei contenitori Daemon supportano i seguenti parametri:
-
image(obbligatorio) - URI dell'immagine del contenitore -
name(obbligatorio) - Nome del contenitore -
cpu- Unità CPU riservate al contenitore -
memory/memoryReservation- Limiti di memoria rigida e software -
essential- Se il contenitore è essenziale (impostazione predefinita: true) -
command/entryPoint- Sostituisci il comando o il punto di ingresso del contenitore -
environment/environmentFiles/secrets- Configurazione dell'ambiente -
privileged- Esegui il contenitore in modalità privilegiata -
user- Utente con cui eseguire il contenitore -
workingDirectory- Cartella di lavoro all'interno del contenitore -
readonlyRootFilesystem- Monta il filesystem root in modalità di sola lettura -
mountPoints- Punti di montaggio del volume (bind mount solo con host e SourcePath) -
logConfiguration- Configurazione della registrazione (supporta awslogs, splunk, awsfirelens) -
healthCheck- Configurazione del controllo dello stato del contenitore -
dependsOn- Dipendenze di avvio del contenitore -
ulimits- Limiti delle risorse -
systemControls- Parametri del kernel -
linuxParameters.capabilities- Funzionalità Linux da aggiungere o eliminare -
linuxParameters.initProcessEnabled- Esegui un processo di inizializzazione nel contenitore -
repositoryCredentials- Credenziali per registri privati -
restartPolicy- Politica di riavvio del contenitore