Skip to content

Manuell uppdatering ​

Använd den här sidan när uppdateringen inte går att göra från adminportalen: portalen eller eurion-updater fungerar inte, servern är offline och du föredrar kommandoraden, eller support ber dig köra ett steg för hand.

Alla kommandon körs på servern som root (med sudo).

Installera en uppdateringsfil med eurion-ctl ​

Det här är samma installation som portalen gör, med samma säkerhetskopia, kontroller och automatiska återgång.

  1. För över filen till servern:

    bash
    scp eurion-update-1.6.4.tar admin@server.example.se:/tmp/
  2. Installera:

    bash
    sudo eurion-ctl upgrade /tmp/eurion-update-1.6.4.tar

    eurion-ctl kontrollerar signaturen mot nycklarna i det installerade kitet, packar upp filen under /opt/eurion/updates/ och kör paketets eget installationsskript. Du får se versionerna och bekräfta med y.

  3. Följ loggen om du vill, i ett annat fönster:

    bash
    sudo tail -f /opt/eurion/logs/upgrade-*.log

Flaggor ​

FlaggaBetydelse
--yesFråga inte om bekräftelse.
--skip-backupIngen säkerhetskopia före uppdateringen. En misslyckad uppdatering kan då inte återställa databasen. Använd inte utan att support ber dig.
--no-rollbackGå inte tillbaka automatiskt om något misslyckas; lämna servern som den är för felsökning. Gå tillbaka senare med eurion-ctl rollback-update --restore-db.

Osignerade paket

eurion-ctl upgrade vägrar installera paket som inte är signerade av Eurion. Flaggan --allow-unsigned är bara till för utveckling. Använd den aldrig på en server i drift.

Köra paketets installationsskript direkt ​

Om eurion-ctl saknas eller är skadat kan du köra skriptet som följer med varje uppdateringsfil:

bash
mkdir -p /tmp/eu
tar -xf /tmp/eurion-update-1.6.4.tar -C /tmp/eu
sudo /tmp/eu/apply-update.sh

Skriptet tar samma flaggor som ovan (--yes, --skip-backup, --no-rollback). Det kontrollerar kontrollsummorna men inte signaturen. Kontrollera signaturen själv först:

bash
sudo bash /opt/eurion/deploy/scripts/verify-bundle.sh /tmp/eurion-update-1.6.4.tar \
  --keys-dir /opt/eurion/deploy/keys

Svaret ska börja med OK. BAD SIGNATURE eller UNSIGNED: installera inte, kontakta support.

Ta bort /tmp/eu när uppdateringen är klar.

Gå tillbaka till föregående version ​

bash
sudo eurion-ctl rollback-update               # databasen behålls
sudo eurion-ctl rollback-update --restore-db  # återställer även säkerhetskopian från före uppdateringen

Bekräfta med YES. Skillnaden förklaras i Uppdatera från adminportalen. Vill du hoppa över frågan, lägg till --yes.

Utan eurion-ctl:

bash
sudo bash /opt/eurion/deploy/scripts/apply-update.sh --rollback

Köra kitet för hand ​

Om en uppdatering stannat halvvägs och den automatiska återgången inte lyckades, kan du köra kitet direkt. Det är samma Ansible-spelböcker som installationen och uppdateringarna använder. Kör dem bara om du vet vilken version som ligger i /opt/eurion/deploy:

bash
grep eurion_version /opt/eurion/deploy/generated/group_vars/all.yml

Uppdateringsspelboken ​

Migrerar databaserna och byter till versionen i generated/group_vars/all.yml. Avbildningarna för versionen måste redan vara inlästa (docker images | grep eurion-gateway).

bash
cd /opt/eurion/deploy
sudo ansible-playbook -i generated/inventory/hosts.yml ansible/upgrade.yml \
  -e @generated/group_vars/all.yml -e @generated/group_vars/secrets.yml

Hela installationen igen ​

Skriver om all konfiguration och startar det som ändrats, för versionen i all.yml. Data och lösenord påverkas inte.

bash
cd /opt/eurion/deploy
sudo ansible-playbook -i generated/inventory/hosts.yml ansible/site.yml \
  -e @generated/group_vars/all.yml -e @generated/group_vars/secrets.yml

Bara konfiguration och containrar, utan systempaket och säkerhetskopia:

bash
sudo ansible-playbook -i generated/inventory/hosts.yml ansible/site.yml \
  -e @generated/group_vars/all.yml -e @generated/group_vars/secrets.yml \
  --tags configure,deploy

Ett tidigare kit ​

Före varje uppdatering sparas det gamla kitet i /opt/eurion/deploy.prev, och vid en misslyckad uppdatering det nya i /opt/eurion/deploy.failed. eurion-ctl rollback-update använder deploy.prev; flytta inte de katalogerna själv om support inte ber dig.

Offline-server ​

Med updates.channel_url: "" installerar du uppdateringar antingen genom att ladda upp filen i portalen (se Offline-server) eller med eurion-ctl upgrade som ovan. Signaturen kontrolleras på samma sätt i båda fallen.

Uppdateringsfilen innehåller Eurions egna avbildningar. Tredjepartsavbildningar som är nya i en version hämtas från internet; en server helt utan internet behöver få dem inlästa i förväg med docker load. Kontakta support innan du uppdaterar en sådan server.

Efter en manuell uppdatering ​

bash
sudo eurion-ctl status
sudo docker ps --filter health=unhealthy --filter status=restarting   # ska vara tom
tail -n 5 /opt/eurion/logs/upgrade-history.log

upgrade-history.log har en rad per lyckad uppdatering. Portalens System Updates visar den installerade versionen.

Eurion — kommunikation som körs på din egen server.