en
Sprog
  • en
  • de
  • fr
  • es
  • br
  • ru
  • jp
  • kr
AI-oversættelse
  • ae
  • cn
  • vn
  • id
  • eu
  • il
  • gr
  • no
  • fi
  • dk
  • se
  • tr
  • bg
  • nl
  • it
  • pl
  • hu
  • ro
  • ua
  • cs

Nem virtuel maskine (VM)

Introduktion

Denne dokumentation er for virtuelle maskiner (VM) leveret af Easy Software til klienter, der har købt serverløsning. Den er gyldig for VM'er, der er genereret efter 1. marts 2022.

Det kan også tjene som inspiration til dit eget servermiljø, men i sådanne tilfælde er der ingen garantier på grund af de mange mulige komponenter og teknologier, du muligvis bruger.

VM'en er konfigureret kun til små websteder (ca. 10 samtidigt arbejdende brugere). VM er næsten produktionsklar men KRÆVER erfaren administrator for at installere VM i dit miljø, opsætte backup, overvågning, netværk, sikkerhedspolitikker osv. Easy Software kan ikke tage ansvar for at køre denne VM i dit dedikerede miljø, VM'en er et eksempel på hvordan applikationen kan være vært.
Denne README adresserer "Application", som kan erstattes af enten "Easy Project" eller "Easy Redmine".

Første skridt

Fordi VM'en blev genereret på et bestemt tidspunkt, er det muligt, at nogle komponenter allerede har udgivet nogle patches eller sikkerhedsrettelser på det tidspunkt, du implementerer den.
Derfor bør du altid starte med en backup efterfulgt af opdatering af OS. Den installerer de seneste sikkerhedsrettelser og opdaterer muligvis forældede komponenter.

VM beskrivelse

OS er Debian i 64-bit udgave.

De vigtige standardindstillinger er:

  • OS er tilgængeligt af SSH via port 22
  • Firewall er ikke indstillet (det er op til systemadministratorer)
  • Disken er ~100 GB
    • /boot 512M
    • / 30G
    • /hjem 60G
    • skift 4G
    • for at øge disken skal du bruge den tilgængelige LVM
  • Applikationen lytter på HTTPS, men med selvsigneret certifikat, så du skal erstatte det ASAP (flere detaljer nedenfor)
  • Applikationen kører i /home/easy/[application_name]/current.

Linux login:

  • brugernavn: let
  • adgangskode: e4syPwd-

Venligst skift det ASAP. For at gøre det skal du køre kommandoen passwd i terminal

Mysql login:
Brug blot kommandoen mysql dit_app_navn (alle prikker eller bindestreger i applikationsnavnet skal erstattes med understregninger. Eksempel: dit-app-navn skal være dit_app_navn)

Applikationslogin:
Standard login (i tilfælde af "ren" database) er

  • brugernavn: admin
  • adgangskode: admin

Standardlogin til VM'en med demo-data er:

  • brugernavn: manager
  • adgangskode: easy848


I tilfælde af database fra din Cloud-applikation forbliver adgangskoder, som du havde dem.

Struktur af ansøgningens hjem

.
├── sikkerhedskopier # backupscript gemmer data der
└── $APP_NAME
    ├── application.pid           
    ├── application.sock # nginx bruger denne socket
    ├── konfig
    │ ├── # prægenererede applikationskonfigurationer  
    │ ├── # (database, mailing, hemmeligheder, app-server osv...)
    │ └── ...
    ├── nuværende
    │ ├── config # alle applikationskonfigurationer
    │ │ ├── configuration.yml # opsæt konfiguration af udgående mail her
    │ │ ├── database.yml # databaseadgang konfigureret her
    │ │ └── ...
    │ ├── filer # vedvarende applikationsdata
    │ ├── log # applikationslogfiler
    │ ├── offentlige # statiske filer
    │ └── version # applikationsversion
    └── public_html -> /home/easy/$APP_NAME/current

Genstart af applikationen er simpelthen via "systemctl genstart puma@[application_name]" som sudo

Kundens ansvar

VM'en kører på den seneste anbefalede version af Debian. Systemet kræver almindelig vedligeholdelse som:

  • regelmæssige opdateringer
  • ressourceovervågning (fri plads, hukommelsesforbrug, belastning, ...)
  • sikkerhedskopiering af data til en uafhængig disk
  • sikkerhedspolitikker

opdateringer

Foretag sikkerhedsopdateringer af systemet ofte. Vi anbefaler at gøre det mindst en gang om ugen. Før opdatering skal du være sikker på, at den nyeste backup er tilgængelig og fungerer.

Officiel dokumentation, hvordan man kun kører sikkerhedsopdateringer https://wiki.debian.org/UnattendedUpgrades

Ressourceovervågning

Easy Software har god erfaring med Prometheus. Derfor er node_exporter en del af VM'en siden 1.3. 2022.

Den officielle meget grundlæggende dokumentation for Node Exporter og Prometheus er på https://prometheus.io/docs/guides/node-exporter/ Det bedste hurtigstart-grafana-dashboard er på https://grafana.com/grafana/dashboards/1860

Afhængigt af dit brug bør du justere VM-ressourceindstillingerne, for eksempel øge mængden af ​​RAM eller antallet af kerner, der leveres til VM. Alle disse konfigurationer bør regelmæssigt udføres af din virtuelle miljøadministrator.

Node-eksportør lytter på port 9100.

Deaktiver node_exporter

node_exporter kunne deaktiveres ved at køre:

systemctl stop node_exporter.service
systemctl deaktiver node_exporter.service
systemctl maske node_exporter.service

Det forhindrer at starte node-eksportør efter næste genstart...

Hvis du har brug for fuld miljøsupport fra Easy Software (sikkerheds- og ydeevneoptimeringer, backup, overvågning osv.), anbefaler vi at du overfører til vores Cloud-løsninger.

Sikkerhedskopier af data

Den forudkonfigurerede backup, der er til stede i VM'en, er et fungerende eksempel, som skal passe til din infrastruktur og skal overvåges. Husk, at en ordentlig backup bør være:

  • kontrolleret efter sikkerhedskopieringsprocessen er afsluttet (tjek mindst størrelsen af ​​sikkerhedskopien)
  • opbevares et sikkert sted
  • fjernt fra løbemiljøet (i det mindste i en anden by)
  • gendannet en gang imellem for at teste din evne til at udføre restitution

Applikationen gemmer data to steder, så glem ikke at tage backup af dem begge.

DB

Database backup kan meget nemt laves forkert. Den bedste og mest sikre måde, hvordan man laver backup af mysql-databasen, er via databasedump, som du kan se i eksempelscriptet. Det laver versionsuafhængige sikkerhedskopier, som kan gendannes hele eller giver dig mulighed for kun at få en del af de gamle data.

Eksempel:

mysqldump --add-drop-tables --rutiner --triggers --flush-logs $DATABASE_NAME > sti/til/fil_hvor_db_will_be_stored.sql

Kopiering af filer fra /var/lib/mysql er en FORKERT måde at gemme DB-sikkerhedskopier på.

Filer

Hver uploadet fil/vedhæftet fil i applikationen gemmes i /home/easy/$APP_NAME/current/files. Hele indholdet af denne mappe bør sikkerhedskopieres. I dette tilfælde kan du blot kopiere indholdet.

Sikkerhedspolitik

VM'en indeholder SSH-nøgler til Easy Software-ingeniører i home/easy/.ssh/authorized_keys. Også reglerne for iptables firewall i /etc/iptables tillader adgang til en Easy Software IP-adresse.

Begge disse politikker er beregnet til eventuel fjernsupport af vores personale på din anmodning. Adgangspolitikkerne er fuldstændig under din kontrol.

Automatiske opgaver

Alle automatiske opgaver er planlagt af CRON og Sidekiq, som starter planlagte job hver 5. m. Vi anbefaler ikke at køre disse job med kortere intervaller på grund af deres høje ydeevnekrav. For at foretage ændringer kan du redigere dem ved at køre kommandoen nedenfor under let bruger

crontab -e

Detaljeret dokumentation for cron
https://www.easyredmine.com/resources/redmine-installation/common-troubles/cron-not-working-helpdesk-emails-alerts-repeating-tasks-etc-are-not-automatically-processed

Migrer data til denne VM

Sådan importeres ældre applikations- eller Redmine-data (SOURCE) til VM (TARGET). Dette virker i de fleste tilfælde, men denne procedure virker muligvis ikke, hvis du bruger 3. parts plugins i din Redmine-kildeinstans.

1. fra din (KILDE) oprette MySQL dump-fil:

mysqldump --opt easy > backup.sql

2. overfør backup.sql til (TARGET)

3. gå til Application folder på (TARGET)

cd /home/easy/[application_name]/current

4. genskabe (TARGET) database

bundle exec rake db:drop db:create RAILS_ENV=produktion DISABLE_DATABASE_ENVIRONMENT_CHECK=1

5. importer backup.sql

mysql [db_name] < backup.sql

6. overfør vedhæftede filer og andre filer fra (SOURCE)[redmine]/filer til (MÅL)/home/easy/[application_name]/current/files

7. løb:

bundle exec rake easyproject: installere RAILS_ENV = produktion

8. genstart programmet

sudo systemctl genstart puma@[applikationsnavn]

Fejlfinding

Mangler sidekiq

På nogle af maskinerne er sidekiq@.service-filen ikke tilføjet. Tjek venligst /etc/systemd/system-mappen, hvis sidekiq@.service-filen er præsenteret. Hvis ikke - så tilføj det. Det skal indeholde følgende:


[Enhed]
Description=SIDEKIQ-tjeneste for %i
After=redis.service
PartOf=puma@%i.service unicorn@%i.service

[Service]
Type = enkel
PIDFile=/home/easy/%i/sidekiq.pid

Miljø = RAILS_ENV = produktion
Miljø=MALLOC_ARENA_MAX=2

Bruger = let
Gruppe=www-data
WorkingDirectory=/home/easy/%i/public_html

ExecStart=/usr/local/rvm/bin/rvm standard bundle exec sidekiq -e produktion
ExecReload=/bin/kill -s TSTP $MAINPID

Genstart = altid

[Installere]
WantedBy=multi-user.target puma@%i.service unicorn@%i.service

Kør efter filen er oprettet

sudo systemctl daemon-reload

genstart puma

MYSQL-sikkerhedskopier er målrettet mod forkert database

For at løse dette problem skal du åbne filen /usr/local/bin/mysql-backups.sh og erstatte DB-navnet "nemt" til app-DB (normalt er det det samme som appnavnet, men alle tankestreger og prikker skal erstattes med understregninger)

Prøv Easy Redmine i 30 dages gratis prøveperiode

Fuldstændige funktioner, SSL-beskyttet, daglige backups, i din geolocation