en
Език
  • en
  • de
  • fr
  • es
  • br
  • ru
  • jp
  • kr
AI превод
  • ae
  • cn
  • vn
  • id
  • eu
  • il
  • gr
  • no
  • fi
  • dk
  • se
  • tr
  • bg
  • nl
  • it
  • pl
  • hu
  • ro
  • ua
  • cs

Лесна виртуална машина (VM)

Въведение

Тази документация е за виртуални машини (VM), предоставена от Easy Software за клиенти, закупили сървърно решение. Той е валиден за VM, генерирани след 1 март 2022 г.

Може също да служи като вдъхновение за вашата собствена сървърна среда, но в такъв случай няма гаранции поради разнообразието от възможни компоненти и технологии, които може да използвате.

Виртуалната машина е конфигурирана само за малки сайтове (около 10 едновременно работещи потребители). VM е почти готов за производство, но ИЗИСКВА опитен администратор да инсталира VM във вашата среда, да настрои архивиране, наблюдение, работа в мрежа, политики за сигурност и т.н. Easy Software не може да поеме отговорност за работата на тази VM във вашата специална среда, VM е пример как приложението може бъде домакин.
Този README адресира „Приложение“, което може да бъде заменено с „Easy Project“ или „Easy Redmine“.

Първи стъпки

Тъй като виртуалната машина е генерирана в определен момент от време, е възможно някои компоненти да са пуснали някои корекции или корекции на сигурността до момента, в който го разгръщате.
Ето защо винаги трябва да започвате с архивиране, последвано от актуализация на ОС. Той ще инсталира най-новите корекции на сигурността и ще актуализира евентуално остарели компоненти.

Описание на VM

ОС е Debian в 64-битово издание.

Важните настройки по подразбиране са:

  • OS е достъпна чрез SSH през порт 22
  • Защитната стена не е зададена (това зависи от системните администратори)
  • Диска е ~100 GB
    • /зареждане 512M
    • / 30G
    • /вкъщи 60гр
    • смяна на 4G
    • за да увеличите диска, използвайте наличния LVM
  • Приложението слуша на HTTPS, но със самоподписан сертификат, така че трябва да го замените възможно най-скоро (повече подробности по-долу)
  • Приложението работи в /home/easy/[application_name]/current.

Вход в Linux:

  • потребителско име: лесно
  • парола: e4syPwd-

Моля, променете го възможно най-скоро. За да направите това, изпълнете командата ако съществува в терминал

Вход в Mysql:
Просто използвайте командата mysql име на вашето_приложение (всички точки или тирета в името на приложението трябва да бъдат заменени с подчертаване. Пример: името на вашето приложение трябва да бъде името на вашето_приложение)

Вход в приложението:
Входът по подразбиране (в случай на "чиста" база данни) е

  • потребителско име: admin
  • парола: админ

The default login for the VM with the демо данни е:

  • потребителско име: мениджър
  • парола: easy848


В случай на база данни от вашето облачно приложение, паролите остават такива, каквито сте ги имали.

Структура на дома на приложението

.
├── backups # архивен скрипт запазва данни там
└── $APP_NAME
    ├── application.pid           
    ├── application.sock # nginx използва този сокет
    ├── конфигурация
    │ ├── # предварително генерирани конфигурации на приложението  
    │ ├── # (база данни, поща, тайни, сървър на приложения и т.н...)
    │ └── ...
    ├── ток
    │ ├── config # всички конфигурации на приложението
    │ │ ├── configuration.yml # настройте конфигурацията за изходяща поща тук
    │ │ ├── database.yml # тук е конфигуриран достъп до базата данни
    │ │ └── ...
    │ ├── файлове # постоянни данни на приложението
    │ ├── log # регистрационни файлове на приложението
    │ ├── публични # статични файлове
    │ └── версия # версия на приложението
    └── public_html -> /home/easy/$APP_NAME/current

Рестартирането на приложението става просто чрез "systemctl restart puma@[application_name]" като sudo

Отговорности на клиентите

Виртуалната машина работи с най-новата препоръчана версия на Debian. Системата изисква обща поддръжка като:

  • редовни актуализации
  • мониторинг на ресурсите (свободно пространство, използване на паметта, натоварване, ...)
  • архивиране на данни на независим диск
  • политики за сигурност

Updates

Правете често актуализации на сигурността на системата. Препоръчваме да го правите поне веднъж седмично. Преди да актуализирате, моля, уверете се, че най-новото архивиране е налично и работи.

Официална документация как да стартирате само актуализации на защитата https://wiki.debian.org/UnattendedUpgrades

Мониторинг на ресурсите

Easy Software има добър опит с Prometheus. Следователно, node_exporter е част от VM от 1.3. 2022 г.

Официалната много основна документация за Node Exporter и Prometheus е на https://prometheus.io/docs/guides/node-exporter/ Най-доброто табло за бързо стартиране на grafana е на https://grafana.com/grafana/dashboards/1860

В зависимост от вашето използване трябва да настроите настройките на ресурсите на VM, например да увеличите количеството RAM или броя на ядрата, предоставени на VM. Всички тези конфигурации трябва да се извършват редовно от вашия администратор на виртуална среда.

Експортерът на възел слуша на порт 9100.

Деактивирайте node_exporter

node_exporter може да бъде деактивиран, като изпълни:

systemctl стоп node_exporter.service
systemctl деактивира node_exporter.service
systemctl маска node_exporter.service

Той предотвратява стартирането на експортиране на възли след следващото рестартиране...

Ако имате нужда от пълна поддръжка на средата от Easy Software (оптимизации на сигурността и производителността, архивиране, наблюдение и т.н.), препоръчваме да преминете към нашите облачни решения.

Архивиране на данни

Предварително конфигурираното архивиране, което присъства във виртуалната машина, е работещ пример, който трябва да е подходящ за вашата инфраструктура и трябва да бъде наблюдаван. Моля, имайте предвид, че правилното архивиране трябва да бъде:

  • проверено след приключване на процеса на архивиране (проверете поне размера на архива)
  • съхранявани на сигурно място
  • далеч от средата за бягане (поне в друг град)
  • възстановява се от време на време, за да тествате способността ви да извършвате възстановяване

Приложението съхранява данни на две места, така че не забравяйте да архивирате и двете.

DB

Архивирането на база данни може много лесно да се направи неправилно. Най-добрият и най-сигурният начин как да правите резервни копия на mysql база данни е чрез дъмп на база данни, както можете да видите в примерния скрипт. Той прави резервни копия, независими от версиите, които могат да бъдат възстановени цели или ви позволяват да получите само част от старите данни.

Пример:

mysqldump --add-drop-tables --routines --triggers --flush-logs $DATABASE_NAME > път/до/file_where_db_will_be_stored.sql

Копирането на файлове от /var/lib/mysql е НЕПРАВИЛЕН начин за запазване на резервни копия на DB.

Файлове

Всеки качен файл/прикачен файл в приложението се съхранява в /home/easy/$APP_NAME/current/files. Цялото съдържание на тази директория трябва да бъде архивирано. В този случай можете просто да копирате съдържанието.

Политики за сигурност

Виртуалната машина съдържа SSH ключове за инженерите на Easy Software в home/easy/.ssh/authorized_keys. Освен това правилата за защитната стена на iptables в /etc/iptables позволяват достъп до IP адрес на Easy Software.

И двете политики са предназначени за евентуална дистанционна поддръжка от нашия персонал по ваше искане. Политиките за достъп са изцяло под ваш контрол.

Автоматични задачи

Всички автоматични задачи се планират от CRON и Sidekiq, които стартират планирани задачи на всеки 5 метра. Препоръчваме да не изпълнявате тези задания на по-кратки интервали поради високите им изисквания за производителност. За да направите каквито и да е промени, можете да ги редактирате, като изпълните командата по-долу под user easy

кронтаб -е

Подробна документация за cron
https://www.easyredmine.com/resources/redmine-installation/common-troubles/cron-not-working-helpdesk-emails-alerts-repeating-tasks-etc-are-not-automatically-processed

Мигрирайте данни към тази виртуална машина

Как да импортирате по-стари данни от приложението или Redmine (ИЗТОЧНИК) във VM (ЦЕЛ). Това работи в повечето случаи, но тази процедура може да не работи в случай, че използвате плъгини на трети страни във вашия изходен екземпляр на Redmine.

1. от вашия (ИЗТОЧНИК) създайте дъмп файл на MySQL:

mysqldump --opt easy > backup.sql

2. прехвърлете backup.sql в (TARGET)

3. отидете в папката с приложения на (ЦЕЛ)

cd /home/easy/[име_на_приложение]/current

4. пресъздайте (ЦЕЛ) база данни

пакет exec rake db:drop db:create RAILS_ENV=производство DISABLE_DATABASE_ENVIRONMENT_CHECK=1

5. импортирайте backup.sql

mysql [db_name] < backup.sql

6. прехвърляне на прикачени файлове и други файлове от (SOURCE)[redmine]/files в (TARGET)/home/easy/[application_name]/current/files

7. бягай:

пакет EXEC рейк easyproject: инсталиране RAILS_ENV = производство

8. рестартирайте приложението

sudo systemctl рестартирайте puma@[име_на_приложение]

Отстраняване на проблеми

Липсва sidekiq

На някои от машините файлът sidekiq@.service не е добавен. Моля, проверете папката /etc/systemd/system дали е представен файл sidekiq@.service. Ако не - моля, добавете го. Той трябва да съдържа следното:


[Мерна единица]
Описание=SIDEKIQ услуга за %i
След=redis.service
PartOf=puma@%i.service unicorn@%i.service

[Обслужване]
Тип = прост
PIDFile=/home/easy/%i/sidekiq.pid

Околна среда = RAILS_ENV = производство
Среда=MALLOC_ARENA_MAX=2

Потребителят = лесно
Група=www-данни
WorkingDirectory=/home/easy/%i/public_html

ExecStart=/usr/local/rvm/bin/rvm default do bundle exec sidekiq -e production
ExecReload=/bin/kill -s TSTP $MAINPID

Рестарт = винаги

[Инсталирай]
WantedBy=multi-user.target puma@%i.service unicorn@%i.service

След като файлът е създаден, стартирайте

sudo systemctl демон-презареждане

рестартирайте puma

Резервните копия на MYSQL са насочени към грешна база данни

За да отстраните този проблем, моля, отворете файл /usr/local/bin/mysql-backups.sh и заменете името на DB "easy" с DB на приложението (обикновено е същото като името на приложението, но всички тирета и точки трябва да бъдат заменени с подчертаване)

Опитайте Easy Redmine за 30 дни безплатен пробен период

Пълни функции, SSL защитени, ежедневни архиви, във вашето геолокация