Egyszerű virtuális gép (VM)
Bevezetés
Ez a dokumentáció az Easy Software által biztosított virtuális gépekre (VM) vonatkozik azon ügyfelek számára, akik kiszolgálómegoldást vásároltak. A 1. március 2022. után generált virtuális gépekre érvényes.
Inspirációként is szolgálhat saját szerverkörnyezetében, de ebben az esetben nincs garancia az Ön által használt lehetséges összetevők és technológiák sokfélesége miatt.
A virtuális gép csak kis helyek számára van konfigurálva (kb. 10 egyidejűleg dolgozó felhasználó). A VM az majdnem gyártásra kész, de SZÜKSÉGES tapasztalt rendszergazdára, hogy telepítse a virtuális gépet a környezetébe, állítsa be a biztonsági mentést, a megfigyelést, a hálózatkezelést, a biztonsági házirendeket stb. Az Easy Software nem vállal felelősséget a virtuális gép dedikált környezetben való futtatásáért, a virtuális gép egy példa arra, hogy az alkalmazás hogyan tud házigazdája legyen.
Ez a README az "Alkalmazás"-ra vonatkozik, amely az "Easy Project" vagy az "Easy Redmine" kifejezéssel helyettesíthető.
Első lépések
Mivel a virtuális gépet egy bizonyos időpontban hozták létre, előfordulhat, hogy egyes összetevők már kiadtak néhány javítást vagy biztonsági javítást a telepítés idejére.
Ezért mindig egy biztonsági mentéssel kell kezdenie, majd azt követi az operációs rendszer frissítése. Telepíti a legújabb biztonsági javításokat, és frissíti az esetlegesen elavult összetevőket.
VM leírás
Az operációs rendszer Debian 64 bites kiadásban.
A fontos alapértelmezett értékek a következők:
- Az operációs rendszert az SSH a 22-es porton keresztül éri el
- A tűzfal nincs beállítva (ez a rendszergazdákon múlik)
- A lemez mérete ~100 GB
- /boot 512M
- / 30G
- /otthon 60G
- cserélj 4G-t
- a lemez növeléséhez használja a rendelkezésre álló LVM-et
- Az alkalmazás HTTPS-en figyel, de önaláírt tanúsítvánnyal, ezért mielőbb le kell cserélnie (további részletek lent)
- Az alkalmazás a /home/easy/[alkalmazásnév]/current mappában fut.
Linux bejelentkezés:
- felhasználónév: könnyű
- jelszó: e4syPwd-
Kérjük, mielőbb változtassa meg. Ehhez futtassa a parancsot passwd terminálban
Mysql bejelentkezés:
Egyszerűen használja a parancsot mysql az alkalmazásod_neve (az alkalmazás nevében az összes pontot vagy kötőjelet aláhúzással kell helyettesíteni. Példa: az alkalmazás neve az Ön_alkalmazásának_neve legyen)
Alkalmazás bejelentkezés:
Az alapértelmezett bejelentkezés ("tiszta" adatbázis esetén).
- felhasználónév: admin
- jelszó: admin
The default login for the VM with the demó adatok a következő:
- felhasználónév: menedzser
- jelszó: easy848
A Cloud-alkalmazásból származó adatbázisok esetében a jelszavak a régiek maradnak.
Az alkalmazás kezdőlapjának felépítése
.
├── biztonsági mentések # biztonsági mentési szkript adatok mentése oda
└── $APP_NAME
├── application.pid
├── application.sock # nginx ezt a socketet használja
├── konfig
│ ├── # előre generált alkalmazáskonfiguráció
│ ├── # (adatbázis, levelezés, titkok, alkalmazásszerver stb...)
│ └── ...
├── aktuális
│ ├── config # minden alkalmazáskonfiguráció
│ │ ├── configuration.yml # itt állíthatja be a kimenő levelek konfigurációját
│ │ ├── database.yml # itt konfigurálva az adatbázis-hozzáférés
│ │ └── ...
│ ├── fájlok # állandó alkalmazásadatok
│ ├── napló # alkalmazásnaplók
│ ├── nyilvános # statikus fájl
│ └── verzió # alkalmazásverzió
└── public_html -> /home/easy/$APP_NAME/current
Az alkalmazás újraindítása egyszerűen a "systemctl restart puma@[alkalmazás_neve]" segítségével történik, mint sudo
Az ügyfél felelőssége
A virtuális gép a Debian legújabb ajánlott verzióján fut. A rendszer általános karbantartást igényel, például:
- rendszeres frissítések
- erőforrás-felügyelet (szabad hely, memóriahasználat, terhelés, ...)
- adatok biztonsági mentése független lemezre
- biztonsági politikák
Frissítés
Rendszeresen frissítse a rendszert. Javasoljuk, hogy hetente legalább egyszer végezze el. A frissítés előtt győződjön meg arról, hogy a legújabb biztonsági másolat elérhető és működik.
Hivatalos dokumentáció csak a biztonsági frissítések futtatásához https://wiki.debian.org/UnattendedUpgrades
Erőforrás figyelés
Az Easy Software jó tapasztalatokkal rendelkezik a Prometheusszal kapcsolatban. Ezért a node_exporter a virtuális gép része, mivel az 1.3. 2022.
A Node Exporter és a Prometheus hivatalos alapvető dokumentációja a következő címen található: https://prometheus.io/docs/guides/node-exporter/ A legjobb gyorsindítási grafana irányítópult a https://grafana.com/grafana/dashboards/1860 címen található.
A használattól függően módosítania kell a virtuális gép erőforrás-beállításait, például növelnie kell a RAM mennyiségét vagy a virtuális gép számára biztosított magok számát. Ezeket a beállításokat rendszeresen el kell végeznie a virtuális környezet rendszergazdájának.
A csomópont-exportőr a 9100-as porton figyel.
Node_exporter letiltása
A node_exporter letiltható a következő futtatásával:
systemctl stop node_exporter.service
systemctl letiltja a node_exporter.service
systemctl maszk node_exporter.service
Megakadályozza a csomópontexportőr elindítását a következő újraindítás után...
Ha teljes körű környezeti támogatásra van szüksége az Easy Software-től (biztonsági és teljesítményoptimalizálás, biztonsági mentés, figyelés stb.), javasoljuk, hogy térjen át a felhőmegoldásainkra.
Adatmentések
A virtuális gépben található előre konfigurált biztonsági mentés egy működő példa, amelynek illeszkednie kell az infrastruktúrához, és figyelni kell. Ne feledje, hogy a megfelelő biztonsági mentésnek a következőknek kell lennie:
- ellenőrizve a biztonsági mentési folyamat befejezése után (ellenőrizze legalább a biztonsági másolat méretét)
- biztonságos helyen tartva
- távol a futó környezettől (legalábbis egy másik városban)
- időnként visszaállítva, hogy tesztelje a helyreállítási képességét
Az alkalmazás két helyen tárolja az adatokat, ezért ne felejtsen el biztonsági másolatot készíteni mindkettőről.
DB
Az adatbázis biztonsági mentése nagyon könnyen elvégezhető hibásan. A mysql adatbázis biztonsági mentésének legjobb és legbiztonságosabb módja az adatbázis kiíratása, amint az a példaszkriptben látható. Verziófüggetlen biztonsági mentéseket készít, amelyeket egészben vissza lehet állítani, vagy lehetővé teszi a régi adatok csak egy részének beszerzését.
Példa:
mysqldump --add-drop-tables --rutinok --triggerek --flush-logs $ADATBÁZIS_NÉV > elérési út/fájl_ahol_adatbázis_tárolandó.sql
Fájlok másolása a /var/lib/mysql könyvtárból HELYTELEN módja a DB biztonsági mentések mentésének.
Fájlok
Minden feltöltött fájl/melléklet az alkalmazásban tárolva van /home/easy/$APP_NAME/current/files. A könyvtár teljes tartalmáról biztonsági másolatot kell készíteni. Ebben az esetben egyszerűen átmásolhatja a tartalmat.
Biztonsági politikák
A virtuális gép SSH-kulcsokat tartalmaz az Easy Software mérnökei számára a home/easy/.ssh/authorized_keys mappában. Ezenkívül az iptables tűzfalra vonatkozó szabályok az /etc/iptables fájlban lehetővé teszik az Easy Software IP-címének elérését.
Mindkét szabályzat arra szolgál, hogy munkatársaink az Ön kérésére esetlegesen távoli támogatást nyújtsanak. A hozzáférési szabályzat teljes mértékben az Ön ellenőrzése alatt áll.
Automatikus feladatok
Az összes automatikus feladatot a CRON és a Sidekiq ütemezi, amely 5 méterenként elindítja az ütemezett feladatokat. Javasoljuk, hogy ezeket a feladatokat ne futtassa rövidebb időközönként a magas teljesítményigényük miatt. A módosítások végrehajtásához szerkesztheti azokat az alábbi parancs futtatásával a user easy alatt
crontab -e
A cron részletes dokumentációja
https://www.easyredmine.com/resources/redmine-installation/common-troubles/cron-not-working-helpdesk-emails-alerts-repeating-tasks-etc-are-not-automatically-processed
Adatok migrálása erre a virtuális gépre
Régebbi alkalmazás- vagy Redmine-adatok (SOURCE) importálása a virtuális gépbe (TARGET). Ez a legtöbb esetben működik, de előfordulhat, hogy ez az eljárás nem működik, ha harmadik féltől származó beépülő modulokat használ a Redmine forráspéldányában.
1. Hozzon létre a (SOURCE) MySQL dump fájlból:
mysqldump --opt easy > backup.sql
2. a backup.sql fájl átvitele ide: (TARGET)
3. lépjen az Alkalmazás mappába a (TARGET) oldalon
cd /home/easy/[alkalmazás_neve]/current
4. újra létrehozni (TARGET) adatbázist
bundle exec rake db:drop db:create RAILS_ENV=termelés DISABLE_DATABASE_ENVIRONMENT_CHECK=1
5. import backup.sql
mysql [db_name] < backup.sql
6. mellékletek és egyéb fájlok átvitele a (FORRÁS)[redmine]/files mappából a (TARGET)/home/easy/[alkalmazásnév]/current/files mappába
7. futás:
bundle exec rake easyproject: install RAILS_ENV = termelés
8. indítsa újra az alkalmazást
sudo systemctl restart puma@[alkalmazás_neve]
Hibaelhárítás
Hiányzik sidekiq
Egyes gépeken a sidekiq@.service fájl nincs hozzáadva. Kérjük, ellenőrizze az /etc/systemd/system mappát, ha megjelenik a sidekiq@.service fájl. Ha nem, kérjük, adja hozzá. Tartalmaznia kell a következőt:
[Egység]
Description=SIDEKIQ szolgáltatás %i számára
After=redis.service
PartOf=puma@%i.service unicorn@%i.service
[Szolgáltatás]
Type = egyszerű
PIDFile=/home/easy/%i/sidekiq.pid
Környezetvédelmi = RAILS_ENV = termelés
Környezet=MALLOC_ARENA_MAX=2
User = könnyű
Csoport=www-adatok
WorkingDirectory=/home/easy/%i/public_html
ExecStart=/usr/local/rvm/bin/rvm alapértelmezett az exec sidekiq -e termelés kötegelése
ExecReload=/bin/kill -s TSTP $MAINPID
Restart = Mindig
[Telepítés]
WantedBy=multi-user.target puma@%i.service unicorn@%i.service
A fájl létrehozása után futtassa
sudo systemctl daemon-reload
indítsa újra a pumát
A MYSQL biztonsági másolatok rossz adatbázisra vannak célozva
A probléma megoldásához nyissa meg a /usr/local/bin/mysql-backups.sh fájlt, és cserélje le az „easy” DB nevet az alkalmazás DB-re (általában megegyezik az alkalmazás nevével, de minden kötőjelet és pontot aláhúzással kell helyettesíteni).