Configurare i limiti di risorse dei container

Con Docker Swarm

Con la piattaforma di base in versione 5.14, i container dispongono ora di limiti di risorse predefiniti per la memoria e la CPU. Questi limiti sono visibili eseguendo il comando docker stats sulla macchina in cui è installata la piattaforma di base. In caso di istanze di grandi dimensioni, i limiti possono risultare troppo bassi. È quindi possibile aumentarli seguendo la procedura seguente:

  1. Arrestare l’istanza Cyberwatch

    sudo cyberwatch stop
    
  2. Modificare o creare il file /etc/cyberwatch/99-custom.yml Aggiungere i nuovi limiti di risorse nella forma seguente:

    services:
      <CONTENEUR>:
         deploy:
            resources:
              limits:
                cpus: '<CPU>'
                memory: '<MÉMOIRE>'
    

    Ad esempio, per aumentare il limite di memoria del container del database db e passare dagli 8 GB predefiniti a 10 GB:

    services:
      db:
        deploy:
          resources:
            limits:
              memory: '10G'
    

    Fare attenzione a non impostare un valore superiore a quanto offerto dal sistema, altrimenti Docker non potrà avviare i container. In tal caso, per i container interessati verrà visualizzato un errore con il comando sudo cyberwatch status.

  3. Riavviare l’istanza Cyberwatch

     sudo cyberwatch start
    
  4. Verificare che i container funzionino correttamente:

     sudo cyberwatch status
    
  5. Verificare che i nuovi limiti siano stati applicati:

     docker stats