Преминете към основното съдържание

Подготовка на хоста

LOSPOR Hospital работи върху виртуална машина или сървър с Ubuntu Server 24.04 LTS. Два включени файла го подготвят, без да се въвеждат списъци с пакети:

  • infra/host/autoinstall/user-data е файл за автоматична инсталация на Ubuntu. Работи еднакво в Hyper-V, VMware и върху физически сървър.
  • infra/host/hyperv/New-LosporHospitalVm.ps1 създава виртуална машина в Hyper-V от този файл.
  • infra/host/hyperv/Install-LosporHospital.ps1 е помощникът около него: едни въпроси в Windows, след което Ubuntu и LOSPOR се инсталират сами.

И двата са във версията, както и в хранилището на същите пътища.

Какво инсталира файлът​

  • минималния сървър на Ubuntu, с LVM, за да може обемът за данни да расте;
  • OpenSSH, който приема само ключове и никога парола;
  • Docker Engine и Compose от хранилището на Docker, с ключ за подпис, закрепен по пълния му отпечатък;
  • OpenSSL, curl, Python 3, gzip, tar и whiptail;
  • автоматични обновявания за сигурност и синхронизация на часа;
  • потребител за конзолата lospor. Няма обща начална парола: скриптът за Hyper-V създава еднократна парола за всяка виртуална машина, а който използва файла директно, задава своя (вижте VMware или физически сървър по-долу).

Когато Ubuntu е инсталиран, машината се изключва, за да могат инсталационните носители да бъдат премахнати, преди да стартира отново. При първото влизане в конзолата предлага да стартира инсталацията. Не го предлага през SSH или след като LOSPOR е инсталиран.

Hyper-V с помощника (препоръчително)​

Изтеглете lospor-hospital-X.Y.Z-windows-kit.zip, щракнете с десен бутон и изберете Extract All («Извличане на всички»). За болница без интернет го разархивирайте в папката с файловете на изданието от USB паметта на поддържащия. (Разархивирана папка на изданието съдържа същите файлове и също работи.) След това щракнете два пъти върху Install LOSPOR Hospital. Помощникът иска администраторски права, работи на български или английски и проверява всеки отговор, преди да създаде каквото и да е:

СтраницаПитаПопълва или открива
Виртуалната машинаиме, мрежов комутатор, ядра, памет, диск, папка, шифроване на дисканаличните комутатори (първо външен), процесорите и паметта на машината; попълнени 8 ядра, 24 GB и 400 GB, никога под 8, 16 и 256
Вход в сървърапаролата на lospor, публичен SSH ключ (изберете файла .pub или го поставете)
Болницатаклиничен адрес и адрес за изследвания, име и град на болницатадали двете имена вече са в DNS
Сертификатътсобственият удостоверителен център на болницата (един .pfx и паролата му или PEM сертификат, ключ и CA), Let's Encrypt (имейл) или локалендали .pfx се отваря, покрива двете имена, е валиден още 30 дни и съдържа корена, или е нужен файл на CA
Администраторътимейл, потребителско име, собствено име и фамилия, паролаправилата за пароли на системата
Проверка и инсталиранеUbuntu ISO или изтеглянебез мрежа, когато пълните файлове на изданието са до комплекта, иначе онлайн, винаги със собствената версия на комплекта

След това нищо не се въвежда, а прозорецът следи докрай:

  1. Ubuntu се инсталира сам и машината се изключва (около 20 минути).
  2. Помощникът премахва инсталационните носители. При инсталиране без мрежа добавя диск с файловете на изданието, след което стартира машината.
  3. При първото стартиране сървърът инсталира LOSPOR сам:
    • Ако двете DNS имена още ги няма, казва това заедно с адреса на сървъра и продължава, когато ИТ ги добави.
    • Инсталаторът му проверява подписа на поддържащия точно както в конзолата.
  4. Прозорецът завършва с адреса на страницата «Готовност» или с причината за спирането и sudo sh /usr/local/lib/lospor/losporctl-install.sh, която при повторно изпълнение предлага --resume, ако опитът е оставил нещо.

Как пътуват отговорите:

  • Извън файла за инсталация на Ubuntu: паролата на администратора и файловете на сертификата са на инсталационния диск до него, защото инсталаторът на Ubuntu пази този файл в дневниците си.
  • В Windows: копията на помощника са в папка, достъпна само за администратори, и се презаписват, щом машината ги получи. Инсталационният диск се изтрива, щом Ubuntu е инсталиран.
  • На сървъра: първото стартиране първо прочита паролата и сертификата и ги изтрива от диска. Файл .pfx става верига от сертификати, частен ключ и доверен корен в secrets/tls.

Напредъкът стига до Windows чрез обмена ключ-стойност на Hyper-V. За него файлът за инсталация поставя linux-cloud-tools-generic, с който Hyper-V Manager показва и адреса на машината.

На Windows Server Core, където няма работен плот, изпълнете powershell -ExecutionPolicy Bypass -File .\infra\host\hyperv\Install-LosporHospital.ps1 от разархивираната папка: същите въпроси се задават като текст.

Hyper-V от PowerShell​

Скриптовете не са подписани с код. Копирайте цялата разархивирана папка на версията на Hyper-V хоста (в нея са infra\host и инсталаторът в scripts) и изпълнете в тази папка, в PowerShell с администраторски права:

Get-ChildItem .\infra\host -Recurse -Filter *.ps1 | Unblock-File
.\infra\host\hyperv\New-LosporHospitalVm.ps1 -SwitchName "Hospital LAN" -DownloadDirectory D:\iso -WhatIf
.\infra\host\hyperv\New-LosporHospitalVm.ps1 -SwitchName "Hospital LAN" -DownloadDirectory D:\iso

-WhatIf показва какво ще се случи и нищо не променя. Скриптът:

  • отказва несъществуващ комутатор и никога не създава или променя комутатор;
  • изтегля Ubuntu 24.04.5 (или използва -IsoPath) и отказва ISO, чийто SHA-256 се различава от публикувания от Canonical;
  • записва копие на това ISO, чието меню за зареждане добавя autoinstall, за да не спира инсталаторът на Ubuntu с въпроса "Continue with autoinstall?" (файловете на инсталатора не се променят; копието се записва с вградените компоненти на Windows). Ако те липсват или е зададен -ConfirmInstall, се използва ISO на Canonical и инсталаторът пита веднъж;
  • създава виртуална машина Generation 2 със Secure Boot, 24 GB памет, 8 процесора и диск от 400 GB, който расте с използването, променяни с -MemoryGB, -ProcessorCount и -DiskGB. Проверката за готовност на инсталатора изисква поне 16 GB, 8 процесора и 200 GB свободни, след като Ubuntu, образите, базите данни и локалните архиви са на място, затова 256 GB е най-малкият диск.

-AuthorizedKeyPath добавя вашия публичен SSH ключ. -EncryptDisk пита за парола за шифроване на целия диск. Пазете я в сейфа на болницата: без нея сървърът не стартира.

Скриптът пренася и инсталатора на самата версия върху виртуалната машина, така че първото влизане предлага това копие, вместо да изтегля друго.

Щом виртуалната машина стартира, скриптът показва еднократна парола за потребителя lospor. Запишете я: тя не се съхранява никъде и не се показва отново. След това изчаква инсталирането на Ubuntu (около 15–20 минути; отворете конзолата, за да наблюдавате, не е нужно да пишете нищо). Когато Ubuntu приключи и изключи машината, скриптът премахва инсталационните носители, изтрива своето копие на ISO (то би изтрило всяка машина, която стартира от него) и стартира машината. С -NoWait връща управлението веднага и показва тези стъпки, за да ги направите сами.

Влезте в конзолата като lospor с еднократната парола, изберете нова и приемете предложението да инсталирате LOSPOR. С -AuthorizedKeyPath SSH с този ключ работи веднага щом машината е стартирала, без влизане в конзолата; еднократната парола тогава е за sudo, докато не я смените с passwd.

VMware или физически сървър​

Във вашето копие на user-data заменете LOSPOR_PASSWORD_HASH с хеша на парола за lospor: openssl passwd -6 го извежда. Инсталацията спира веднага, ако заместителят остане. Поставете user-data и празен meta-data на обем с етикет CIDATA: малък виртуален диск, USB памет или ISO. В Linux cloud-localds seed.iso user-data meta-data създава ISO. Свържете го или го поставете заедно с ISO на Ubuntu 24.04 server и стартирайте; следва същото еднократно потвърждение. Когато машината се изключи, премахнете двата носителя и я стартирайте. За шифроване на диска добавете password: "…" под storage: layout: във вашето копие на файла или използвайте шифроването на хипервайзора или хранилището.

Използван така, файлът не пренася инсталатор, затова първото влизане показва онлайн и офлайн командите, без да изпълнява някоя от тях.

След това​

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