Podręcznik użytkownika systemu EZD RP

Instrukcja instalacji EZD RP – środowiska testowe, rozwojowe lub edukacyjne

Instrukcja dotyczy instalacji jednowęzłowej instancji Kubernetesa w wersji RKE2 dla instancji testowej/rozwojowej/edukacyjnej EZD RP.

Rekomendowane parametry dla jednej instancji

OS: Ubuntu Server (do instalacji systemu EZD RP należy użyć Ubuntu 24.04 LTS)
vCPU: 24
RAM: 64 GB
Pamięć masowa (HDD): rekomendowane co najmniej 1 TB przestrzeni na szybkich dyskach NVMe/SSD na potrzeby obliczeń i bufora danych plus dyski SSD/HDD na potrzeby przechowywania danych.

Uwaga! Należy sprawdzić, czy podczas instalacji partycja zawierająca katalog „/” wykorzystuje cały dostępny dysk. Domyślnie instalator przydziela jej połowę przestrzeni.

Inne: certyfikat Wildcard dla witryny, klucz prywatny i publiczny w formacie Unix, dane konta e-mailowego przeznaczonego do powiadomień systemowych (host_ip, username, password, port). RKE2 domyślnie korzysta z adresacji 10.42.0.0/16 i 10.43.0.0/16

Prezentujemy opis przykładowej instalacji złożonej z:

  • serwera NFS – 1 × Ubuntu (storage NFS) – 2 vCPU, 4 GB RAM, minimum 100 GB dysku
  • serwera bazodanowego – 1 × Ubuntu (baza danych PostgresSQL, RabbitMQ, Redis) – 6 vCPU, 12 GB RAM, minimum 100 GB dysku
  • serwera aplikacyjnego – 1 × Ubuntu (master 1, Rancher) – 16 vCPU, 48 GB RAM, minimum 200 GB dysku

Krok 1. Instalacja serwera NFS

1.1 Aktualizacja systemu i instalacja narzędzi

Aby rozpocząć instalację serwera NFS, najpierw należy zaktualizować system oraz zainstalować niezbędne narzędzia, co zapewni stabilność i aktualność oprogramowania.

sudo apt update && sudo apt upgrade

1.2 Instalacja NFS

Po zaktualizowaniu systemu, kolejnym krokiem jest instalacja serwera NFS, który umożliwi udostępnianie zasobów plikowych w sieci.

sudo apt install nfs-server


1.3 Konfiguracja pliku exports i przygotowanie folderu NFS

W celu udostępnienia folderów w sieci, konieczna jest konfiguracja pliku exports oraz przygotowanie odpowiedniego katalogu NFS, który będzie dostępny dla innych użytkowników.

sudo nano /etc/exports
Aby wprowadzić zmiany, należy edytować pliki za pomocą edytorów tekstowych, takich jak vi, vim, nano. W naszym przypadku użyliśmy edytora nano, w którym nawigujemy za pomocą klawiszy strzałek oraz skrótów klawiaturowych wyświetlanych na dole ekranu. Zmiany zapisujemy za pomocą skrótu Ctrl+x.


Dodajemy wpis jak poniżej, gdzie XXX.XXX.XXX.XXX to adres IP naszego serwera aplikacyjnego. Dostęp kolejnych maszyn wymaga podania ich adresów IP.

/nfs XXX.XXX.XXX.XXX(rw,sync,no_subtree_check,no_root_squash) 

Należy utworzyć folder NFS.

sudo mkdir /nfs

Następnie nadajemy uprawnienia.

sudo chown -R nobody:nogroup /nfs

Ten etap kończymy restartem serwera NFS.

sudo systemctl restart nfs-server

Krok 2. Instalacja baz danych

Przed przystąpieniem do instalacji zewnętrznych baz danych (PostgreSQL, Redis) i oprogramowania pośredniczącego (RabbitMQ) należy przygotować maszynę wirtualną lub sprzęt fizyczny (serwer) spełniające określone wymagania. Niniejszy scenariusz instalacji przewiduje użycie serwera Ubuntu jako serwera baz danych oraz serwera Ubuntu Server 24.04 LTS (x64) jako środowiska, z którego jest przeprowadzany cały proces instalacji zdalnej (poprzez logowanie SSH).

Instalację baz danych należy wykonać z serwera aplikacyjnego.

2.1 Przygotowanie Ubuntu pod instalację baz danych z Ansible

Po wcześniejszym przygotowaniu serwera z systemem Ubuntu oraz utworzeniu konta z uprawnieniami administratora (sudo), z którego przeprowadzimy instalację, możemy przystąpić do dalszych kroków konfiguracji.

Wiele dystrybucji Linuksa zawiera domyślnie zainstalowany Git. Aby to sprawdzić, należy otworzyć Terminal w systemie Ubuntu (wszystkie poniższe polecenia wykonujemy w Terminalu) i uruchomić polecenie, które wyświetla aktualność pakietów.

sudo apt update && sudo apt upgrade

Pojawi się prośba o podanie utworzonego podczas instalacji Ubuntu hasła użytkownika z uprawnieniami root. Należy je wpisać i nacisnąć Enter. Poniżej widoczny jest przykład zaktualizowanych pakietów.

Następnie wykonujemy polecenie sprawdzające, czy w systemie jest zainstalowany Git.

git version

Jeżeli w odpowiedzi uzyskamy komunikat podobny do pokazanego poniżej, można pominąć kolejny punkt (2.2 Instalacja Git).

2.2 Instalacja Git

Aby pobrać paczkę instalacyjną baz danych dla EZD RP, trzeba najpierw sklonować repozytorium przy użyciu Git. Jeżeli Git nie był zainstalowany w naszej dystrybucji domyślnie, należy go zainstalować za pomocą Terminala (wykonujemy w nim wszystkie poniższe polecenia).

sudo apt install git

W celu weryfikacji poprawności instalacji należy wykonać kolejne polecenie.

git version

W odpowiedzi powinniśmy uzyskać komunikat podobny do pokazanego poniżej.

2.3 Instalacja Ansible 2.20

W pierwszej kolejności trzeba sklonować repozytorium.

git clone --branch=stable-2.20 https://github.com/ansible/ansible.git

Rozpocznie się proces klonowania, po którym wyświetli się szczegółowa informacja o wykonaniu zadania.

Następnie należy zainstalować sshpass.

sudo apt install sshpass

Po wykonaniu polecenia rozpocznie się proces instalacji.

Instalujemy CPython PIP (menedżer pakietów).

sudo apt install python3-pip

Pojawi się pytanie z opcją zatwierdzenia procesu instalacji. Wybieramy Y i naciskamy Enter.

Po rozpoczęciu instalacji wyświetli się komunikat.

W następnej kolejności wykonujemy symlink (dowiązanie symboliczne) dla Pythona 3.

sudo ln -s /usr/bin/python3 /usr/bin/python

Przechodzimy do sklonowanego katalogu.

cd ansible

Instalujemy środowisko Ansible.

source ./hacking/env-setup

Po poprawnym wykonaniu polecenia pojawi się stosowny komunikat.

Następnie doinstalowujemy moduły Pythona niezbędne do poprawnego działania Ansible.

python -m pip install --user -r ./requirements.txt --break-system-packages

Rozpocznie się proces pobierania i instalacji modułów Pythona. Po poprawnej instalacji pojawi się komunikat.

Kolejna czynność to weryfikacja instalacji.

ansible --version

Rezultatem wykonania powyższego polecenia powinien być wynik podobny do widocznego na zrzucie.

2.4 Pobieranie paczki instalacyjnej baz danych dla EZD RP

Najpierw przechodzimy do katalogu domowego.

cd $HOME

Pobieramy paczkę instalacyjną za pomocą poniższego polecenia.

wget https://podrecznik.ezdrp.gov.pl/site/uploads/ezd-database-install.tar --no-check-certificate

Po pobraniu paczki pojawi się komunikat, że została ona zapisana.

Następnie należy rozpakować paczkę i przejść do katalogu ezd-database-install.

tar -xvf ezd-database-install.tar

Po wykonaniu powyższej komendy paczka zostanie rozpakowana.

Przechodzimy do rozpakowanego katalogu.

cd ezd-database-install/

Na tym etapie mamy gotowe następujące elementy:

  • serwer Ubuntu,
  • serwer Ubuntu z Git oraz Ansible,
  • rozpakowaną paczkę instalacyjną baz danych dla EZD RP.

2.5 Instalacja Ansible Collections

Zanim przystąpimy do konfiguracji playbooków, musimy wykonać instalację kolekcji. W tym celu należy przejść do utworzonego wcześniej katalogu domowego za pomocą komendy cd $HOME/ezd-database-install.
Następnie należy wykonać w Terminalu wszystkie poniższe polecenia (osobno).

ansible-galaxy collection install community.general
ansible-galaxy collection install community.postgresql
ansible-galaxy collection install community.rabbitmq

Po pomyślnie przeprowadzonej instalacji wyświetlone zostaną stosowne komunikaty „successfully”.

2.6 Przygotowanie hosta

Kolejną czynnością, jaką należy wykonać, jest przygotowanie pliku, dzięki któremu będzie możliwa komunikacja Ubuntu z serwerem bazodanowym. Plik do edycji znajduje się w lokalizacji:

nano inventory/hosts.yaml

Przykładowa budowa pliku inventory widoczna jest poniżej. Jeżeli hasło zawiera znaki specjalne to należy całość umieścić w cudzysłowiu.

all:
  vars:
    ansible_user: twoj_uzytkownik
    ansible_ssh_pass: twoje_haslo
    ansible_sudo_pass: twoje_haslo
    host_key_checking: false
 
db:
  hosts:
    db-1:
      ansible_host: XXX.XXX.XXX.XXX
 
redisrabbit:
  hosts:
    db-2:
      ansible_host: XXX.XXX.XXX.XXX

Wprowadzamy utworzonego wcześniej użytkownika z uprawnieniami sudo i jego hasło, a w linijce ansible_host podajemy w dwóch miejscach ten sam adres IP serwera bazodanowego Ubuntu.

2.7 Weryfikacja poprawności konfiguracji

Na tym etapie sprawdzamy, czy możliwa jest komunikacja z serwerem bazdanowym. Wykonujemy w Terminalu poniższe polecenie.

ansible db -m ping

O poprawnym wykonaniu polecenia informuje komunikat.

2.8 Modyfikacja plików konfiguracyjnych bazy danych (opcjonalnie)

Aby zmienić domyślne nazwy użytkowników i baz danych, można je zmodyfikować w poniższym pliku.

nano group_vars/all.yaml

2.9 Instalacja bazy danych pod MS SQL, zamiast postgresql (opcjonalnie)

W przypadku gdy wybrany został silnik MS SQL, to należy wykonać dodatkowo punkt 1 i 2 z instrukcji.

2.10 Instalacja usług

W ostatnim kroku wykonujemy instalację i konfigurację baz danych (PostgreSQL, Redis) oraz RabbitMQ.

ansible-playbook main_playbook.yaml

Efektem końcowym instalacji będzie podsumowanie z danymi dostępowymi do baz danych. Trzeba je skopiować i przechowywać w bezpiecznym miejscu.

Szczególną uwagę należy zwrócić na licznik przy pozycji failed. Jeśli pojawią się jakieś błędy, musimy sprawdzić powyższego loga i zweryfikować konfigurację.

Zalecenia

Po prawidłowym zainstalowaniu baz danych i skopiowanych danych uwierzytelniających, zalecamy usunięcie pliku inventory Ansible.

rm inventory/hosts.yaml

Krok 3. Instalacja aplikacji

3.1 Przełączenie się na konto roota

Wszystkie opisane czynności wykonujemy jako użytkownik root. Aby przełączyć się na konto roota, należy użyć polecenia:

sudo su -

3.2 Aktualizacja systemu oraz instalacja narzędzi

Wykonujemy poniższe polecenia, aby pobrać najnowsze informacje o dostępnych pakietach, zaktualizować wszystkie zainstalowane pakiety do najnowszych wersji oraz zainstalować klienta NFS.

apt update && sudo apt upgrade

apt install nfs-client

3.3 Status firewalla

Sprawdzamy, czy firewall jest wyłączony za pomocą jednej z dwóch poniższych komend.

ufw status
iptables -v -L

Wynikiem powinien być komunikat o wyłączonym firewallu.

3.4 Wyłączenie partycji SWAP

Partycja wymiany (SWAP) jest to systemowa partycja występująca w systemach typu Unix. Służy do tymczasowego przechowywania danych, gdy ich ilość przekracza dostępne zasoby pamięci RAM lub gdy korzystniejsze jest ich przechowywanie (w całości lub częściowo) na dysku twardym.

Pierwszą czynnością jest wyłączenie partycji SWAP.

swapoff -a

Następnie należy usunąć obraz pliku swap i zakomentować odpowiedni wpis w pliku fstab, aby partycja SWAP nie była uruchamiana przy starcie systemu operacyjnego.

rm -f /swap.img
sed -i 's/\/swap.img/#\/swap.img/g' /etc/fstab

Weryfikujemy wykomentowanie za pomocą poniższego polecenia.

cat /etc/fstab

Rezultatem powinien być wynik podobny do poniższego.

3.5 Instalacja Dockera

Docker to popularna platforma typu open source służąca do wirtualizacji na poziomie systemu operacyjnego (tzw. konteneryzacji). Kontener Docker to lekki, autonomiczny i wykonywalny pakiet, który zawiera wszystko, co jest potrzebne do uruchomienia aplikacji (biblioteki, narzędzia systemowe, kod i środowisko uruchomieniowe).

Kontenery upraszczają dostarczanie rozproszonych aplikacji i zyskują na popularności, ponieważ organizacje coraz częściej wykorzystują hybrydowe środowiska wielochmurowe. Więcej informacji można znaleźć na oficjalnej stronie Dockera.

W pierwszej kolejności należy pobrać Dockera.

curl -fsSL https://get.docker.com -o get-docker.sh

Uruchamiamy instalację Dockera.

sh get-docker.sh

Po poprawnej instalacji otrzymamy komunikat jak niżej.

3.6 Ponowne uruchomienie maszyny

Aby pozbyć się pliku swap i uruchomić silnik Dockera, należy zrestartować maszynę.

reboot

3.7 Instalacja Ranchera

Rancher to system orkiestracji i zarządzania hostami platformy Docker, który umożliwia łatwe tworzenie usług składających się z wielu kontenerów uruchamianych na wielu hostach Dockera.

sudo su -
docker run -d --restart=unless-stopped --name rancher -p 8081:80 -p 8443:443 --privileged rancher/rancher:v2.12.3

Komunikat o prawidłowej instalacji widoczny jest poniżej.

3.8 Instalacja i uruchomienie systemu RKE2

3.8.1 Instalacja RKE2 – jednowęzłowa instancja Kubernetesa

Aby zainstalować RKE2 (jednowęzłową instancję Kubernetesa), wykonaj poniższe polecenie:

curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_VERSION=v1.34.1+rke2r1 sh -

Następnie uruchamiamy RKE2.

systemctl enable --now rke2-server.service
Należy odczekać około 1 min, aż pojawi się znak zachęty $ lub #, co oznacza, że klaster RKE2 został pomyślnie uruchomiony.

Poniżej widoczny jest przykładowy komunikat o uruchomieniu klastra RKE2.

3.8.2 Utworzenie symlinka do kubectl i jej konfiguracji do folderu domowego

Aby utworzyć dowiązanie symboliczne (symlink) do narzędzia kubectl i skonfigurować je w folderze domowym, należy wykonać następujące polecenia:

mkdir ~/.kube && ln -sv /var/lib/rancher/rke2/bin/kubectl /usr/bin/ && cp -v /etc/rancher/rke2/rke2.yaml ~/.kube/config

3.8.3 Edycja parametru max_user_instances

Aby zmienić wartość parametru max_user_instances, należy wykonać poniższe polecenie.

echo fs.inotify.max_user_instances=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

3.9 Uzyskanie hasła startowego do Ranchera

Po użyciu poniższej komendy uzyskujemy hasło startowe do Ranchera.

docker logs rancher 2>&1 | grep "Bootstrap Password:"

Powinien się wyświetlić komunikat zawierający hasło.

Jeżeli nie widzimy komunikatu z hasłem, oznacza to, że Rancher jeszcze się nie uruchomił. Trzeba spróbować za chwilę ponownie, a następnie skopiować wyświetlone hasło startowe do Ranchera.

3.10 Uruchomienie, konfiguracja oraz instalacja EZD RP w Rancherze

Czysta instalacja serwera Ubuntu nie ma uruchomionego firewalla. Zainstalowany Rancher dostępny będzie pod adresem: https://ip_serwera:8443. Po zaakceptowaniu certyfikatu wyświetli się strona strona powitalna Ranchera. Wklejamy wcześniej skopiowane hasło i logujemy się.

Następnie ustalamy swoje nowe hasło.

Domyślny login do Ranchera to admin.

Po uruchomieniu Rancher pokazuje jeden aktywny klaster lokalny. Następny krok to dodanie nowego klastra, którym chcemy zarządzać za pomocą Ranchera. Klikamy Import Existing > Generic, a następnie wpisujemy nazwę klastra i klikamy przycisk Create.

Uruchomi się kreator dodawania nowego klastra z nadanym statusem Pending. Rancher oczekuje na połączenie się nowego klastra, który można dodać na kilka sposobów, przedstawionych na poniższym ekranie. Wybieramy drugi sposób – z wykorzystaniem polecenia curl. Kopiujemy całe polecenie, wklejamy je do konsoli serwera Ubuntu i wykonujemy jako użytkownik root.

Po wklejeniu polecenia otrzymamy infomację jak niżej.

Po około 1-5 min status klastra zmieni się z Waiting na Active.

Przechodzimy do nowo uruchomionego klastra. Rozwijamy główne menu dostępne w lewym górnym rogu i wybieramy dodany klaster. W naszym przykładzie nosi on nazwę pilotaz.

Aby dodać do systemu repozytoria, należy wybrać zakładkę Apps > Repositories, a następnie kliknąć przycisk Create.

Dodajemy dwa repozytoria, wypełniając pola w przedstawiony niżej sposób:

  • Name – dowolna nazwa, np. ezdrepo
  • Index URLhttps://git.eadministracja.nask.pl/api/packages/ezdrp/helm
  • Authentication – None

Dla drugiego repozytorium wypełniamy pola w następujący sposób:

  • Name – dowolna nazwa, np. nfs
  • Index URLhttps://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
  • Authentication – None (jest to repozytorium publiczne i nie wymaga logowania)

Po dodaniu repozytoriów należy utworzyć nowy projekt, a w nim nową przestrzeń nazw. W tym celu wybieramy zakładkę Cluster > Projects/Namespaces i klikamy przycisk Create Project.

Podajemy nazwę nowego projektu, np. ezdrp i klikamy przycisk Create.

W głównym oknie na dole wyświetli się nasz nowo utworzony projekt. Należy kliknąć znajdujący się przy nim przycisk Create Namespace.

Podajemy nazwę nowej przestrzeni nazw, np. ezd i klikamy przycisk Create.

Aby przejść do dalszych czynności, należy rozwinąć listę dostępną w górnym menu i wskazać utworzony przez nas projekt oraz przestrzeń nazw.

Następnie wybieramy zakładkę Storage > Secrets i klikamy przycisk Create.

Wybieramy TLS Certificate.

W wyświetlonym oknie wprowadzamy nazwę „certyfikat”, po lewej stronie formularza wprowadzamy klucz prywatny, natomiast po prawej publiczny (certyfikat bez CA/ROOT).

 
Uwaga – obsługiwany format kluczu prywatnego powinien rozpoczynać się nagłówkiem:
—–BEGIN PRIVATE KEY—–
—–BEGIN RSA PRIVATE KEY—–
Nieobsługiwany to:
—–BEGIN ENCRYPTED PRIVATE KEY—–


3.11 Instalacja NFS konektor

Klikamy zakładkę Apps > Charts, a następnie w polu filtrowania wpisujemy nfs. Wybieramy pozycję nfs-subdir-external-provisioner.

Wybieramy najnowszą wersję aplikacji i klikamy przycisk Install.

W polu Name wpisujemy dowolną nazwę, np. nfs i klikamy przycisk Next.

Edit YAML edytujemy linijkę z path:, wpisując nazwę folderu. W naszym przykładzie jest to /nfs. Dodatkowo edytujemy linijkę z server:, wpisując IP serwera NFS. Po wprowadzeniu zmian klikamy przycisk Install.

Po wykonanej prawidłowo instalacji należy wykonać test, przechodząc do Storage > PersistentVolumeClaims

W polu Name wpisujemy dowolną nazwę, np. test, natomiast w Storage Class wybieramy pozycję nfs-client. Następnie w Request Storage wpisujemy 1 i klikamy przycisk Create.

Teraz przechodzimy na serwer NFS i sprawdzamy, czy w naszym folderze pojawiło się PVC.

3.12 Weryfikacja storage

Przechodzimy do zakładki Storage > StorageClasses. Po prawej stronie przy pozycji nfs-client klikamy symbol trzech kropek, a następnie wybieramy opcję Set as Default.

3.13 Instalacja EZD RP

Klikamy zakładkę Apps > Charts, a następnie w polu filtrowania wpisujemy ezd. Wybieramy pozycję nask-ezdrp-ha.

Wybieramy najnowszą wersję aplikacji i klikamy przycisk Install.

W polu Name wpisujemy dowolną nazwę, np. ezdrpapp i klikamy przycisk Next.

Klikamy zakładkę Domain Info, a następnie wpisujemy nazwę domeny (dla której został wygenerowany wcześniej certyfikat), w polu poniżej zostawiamy nazwę „certyfikat” i odznaczamy „Snippets Annotations”.

Klikamy zakładkę Persistent Storage i we wszystkich polach z rozwijaną listą zmieniamy ustawienie z longhorn na nfs-client.

W zakładce Database configuration wybieramy, z jakiego rodzaju bazą będziemy się łączyć (w naszym przypadku będzie to PostgreSQL) i wklejamy connection strings.

Connection string zawiera IP i port serwera bazodanowego oraz nazwę użytkownika i hasło do PostgreSQL. Kopiujemy gotowe dane z wyniku instalacyjnego ansible.

Connection string dla EZDRP:

Host=XXX.XXX.XXX.XXX;Port=5432;Database=ezdrp;Username=uzytkownik_postgres;Password='haslo_postgres'

Connection string dla ARCHIWUM:

Host=XXX.XXX.XXX.XXX;Port=5432;Database=archiwum;Username=uzytkownik_postgres;Password='haslo_postgres'

Connection string dla KUIP:

Host=XXX.XXX.XXX.XXX;Port=5432;Database=ezdrp;Username=uzytkownik_postgres;Password='haslo_postgres'

Connection string dla EZDRP_ODCZYT:

Host=XXX.XXX.XXX.XXX;Port=5432;Database=ezdrp_odczyt;Username=uzytkownik_postgres;Password='haslo_postgres'

Connection string dla WPEREST:

Host=XXX.XXX.XXX.XXX;Port=5432;Database=ezdrp;Username=uzytkownik_postgres;Password='haslo_postgres'

Connection string dla TERYT:

Host=XXX.XXX.XXX.XXX;Port=5432;Database=ezdrp;Username=uzytkownik_postgres;Password='haslo_postgres'

Connection string dla FILEREPO:

Host=XXX.XXX.XXX.XXX;Port=5432;Database=ezdrp;Username=uzytkownik_postgres;Password='haslo_postgres'


Dane wprowadzamy z wyniku instalacyjnego ansible.
W przypadku wybrania bazy danych MS SQL, należy wykonać punkt 3 z instrukcji.

Klikamy zakładkę Redis Database Configuration, a następnie w odpowiednich polach podajemy adres IP serwera bazodanowego i hasło.

Klikamy zakładkę Redis-append Database Configuration, a następnie w odpowiednich polach podajemy adres IP serwera bazodanowego i hasło.

Klikamy zakładkę Rabbit Database Configuration, a następnie w odpowiednich polach podajemy adres IP serwera bazodanowego, nazwę użytkownika oraz hasło.

Klikamy zakładkę Email Configuration, a następnie zaznaczamy pole wyboru przy opcji Mail server for project i wpisujemy w polach dane systemu
pocztowego.

 
W przypadku korzystania z serwera pocztowego office365 należy wpisać pełny mail w polu Email sendername.

Klikamy zakładkę Routing, upewniamy się by polu Select routing type jest wybrana opcja ingress

Następnie należy kliknąć zakładkę Edit YAML i zmienić wartości flag poniżej.

Flaga Wartość Opis
Ezdrp_Feature_NoweZadania Enabled Uruchamianie nowych zadań na całej instancji.
Ezdrp_Feature_PrzydzielanieDostepow Enabled Przydzielanie dodatkowych dostępów do spraw w ramach klas JRWA.
Ezdrp_Feature_Wew Enabled Rejestr pism wewnętrznych.
Ezdrp_Feature_EpuapWysylkaPlikowStrumieniowo Enabled Wysyłka epuap strumieniowo.

Po wprowadzeniu zmian klikamy przycisk Install. Po prawidłowej instalacji w logu powinien pojawić się napis SUCCESS.

3.14 Usuwanie zadań dla baz danych MS SQL (opcjonalnie)

Gdy wykorzystaliśmy bazę danych MS SQL, należy wykonać punkt 4 z instrukcji.

3.15 Zmniejszenie uprawnień dla NFS

Wracamy na serwer NFS w celu zmniejszenia uprawnień.

sudo nano /etc/exports

Usuwamy ze wszystkich linii parametr no_root_squash i zapisujemy.

Następnie należy zrestartować serwer NFS.

sudo systemctl restart nfs-server

3.16 Konfiguracja DNS

W zakładce Service Discovery > Ingresses będzie widoczna lista domen, jakie należy dodać do serwera DNS lub na komputerze w hosts. Wszystkie muszą wskazywać na adres IP serwera, na którym wykonywana była instalacja aplikacji.

Przykład hostów dla domeny nask.pl z certyfikatem Wildcard:
x.x.x.x connectors.nask.pl
x.x.x.x ezdrp-web.nask.pl
x.x.x.x ezdrp-api.nask.pl
x.x.x.x ezdrp-forms.nask.pl
x.x.x.x filerepo-api.nask.pl
x.x.x.x integrator-api.nask.pl
x.x.x.x kuip-api.nask.pl
x.x.x.x kuip-web.nask.pl
x.x.x.x sso-extidp.nask.pl
x.x.x.x sso-idp.nask.pl

Wpisy DNS:
connectors
ezdrp-web
ezdrp-api
ezdrp-forms
filerepo-api
integrator-api
kuip-api
kuip-web
sso-extidp
sso-idp

Po dodaniu wszystkich wpisów DNS upewniamy się, czy adresy działają i kierują na serwer aplikacyjny.

3.17 Pobranie hasła do systemu EZD RP

Podczas pierwszego uruchomienia kontenera kuip-api (na pustej bazie) tworzone jest konto admina root.
Logowanie do systemu odbywa się z użyciem nazwy użytkownika (root) oraz hasła.

Chcąc zresetować hasło, należy wybrać w zakładce Workload pozycję Deployments. Wyszukujemy kuip-api i klikamy Edit Config.

W sekcji General > Environment Variables klikamy przycisk Add Variable.

Z rozwijanej listy w polu Type wybieramy Key/Value Pair. Z kolei w polu Variable Name wpisujemy KUIP_ROOT_RESET_PASSWORD, a w polu Value podajemy nowe hasło.

Zapisujemy ustawienia, klikając przycisk Save. Po chwili redeployment kuip-api powinien zostać zakończony automatycznie (zmiana statusu z Updating na Active).

Po wykonaniu tej operacji możliwe jest zalogowanie się do aplikacji na konto użytkownika root za pomocą nowego hasła podanego w zmiennej środowiskowej KUIP_ROOT_RESET_PASSWORD.

Aby zalogować się do systemów EZD RP i KUiP, należy wpisać w przeglądarce dwa adresy zbudowane według następującego schematu:

  • https://ezdrp-web.twoja_domena/
  • https://kuip-web.twoja_domena/

W naszym przykładzie są to adresy:

  • https://ezdrp-web.nask.pl/
  • https://kuip-web.nask.pl/
Domyślny login do systemu to root.

Po wykonaniu powyższych działań należy założyć i zainicjalizować podmiot w EZD RP. Temat ten został omówiony w artykule Zarządzanie podmiotami w EZD RP i KUiP z poziomu administratora chmury w sekcji Zakładanie i inicjalizowanie podmiotu w EZD RP.

Rekomendowane porty do odblokowania na firewall

W przypadku wykorzystywania firewalla należy odblokować następujące porty na danych serwerach:

HAProxy:
80/TCP (HTTP), 443/TCP (HTTPS), 8404/TCP (Statystyki HAPROXY), 9345/TCP (API RKE2)

HAProxy1:
odblokować połączenie z IP HAProxy2

HAProxy2:
odblokować połączenia z IP HAProxy1

Postgresql:
5432/TCP

MS SQL:
1433/TCP, 1434/UDP

Redis:
6379/TCP, 6380/TCP

Rabbit:
5672/TCP, 15672/TCP (WEB)

NFS:
2049/TCP

Master:
80/TCP (HTTP), 443/TCP (HTTPS), 2379,2380/TCP (ETCD), 6443/TCP (Kubectl), 8472/UDP (Flannel VXLAN), 9345/TCP (RKE2), 10250/TCP (Kubelet)

Rancher:
8443/TCP (HTTPS)