Wdrażanie aplikacji IBM DB2 pureScale na platformie Azure

W tym artykule opisano sposób wdrażania przykładowej architektury , która ostatnio była używana przez klienta przedsiębiorstwa do migracji ze środowiska IBM DB2 działającego w systemie z/OS do bazy danych IBM DB2 pureScale na platformie Azure.

Aby wykonać kroki używane do migracji, zobacz skrypty instalacji w repozytorium DB2onAzure w usłudze GitHub. Te skrypty są oparte na architekturze typowego, średniego obciążenia przetwarzania transakcji online (OLTP).

Rozpoczęcie pracy

Aby wdrożyć tę architekturę, pobierz i uruchom skrypt deploy.sh znaleziony w repozytorium DB2onAzure w usłudze GitHub.

Repozytorium zawiera również skrypty służące do konfigurowania pulpitu nawigacyjnego narzędzia Grafana. Pulpit nawigacyjny służy do wykonywania zapytań względem rozwiązania Prometheus, systemu monitorowania i alertów typu open source dołączonego do bazy danych DB2.

Uwaga

Skrypt deploy.sh na kliencie tworzy prywatne klucze SSH i przekazuje je do szablonu wdrożenia za pośrednictwem protokołu HTTPS. Aby zapewnić większe bezpieczeństwo, zalecamy używanie usługi Azure Key Vault do przechowywania wpisów tajnych, kluczy i haseł.

Jak działa skrypt wdrażania

Skrypt deploy.sh tworzy i konfiguruje zasoby platformy Azure dla tej architektury. Skrypt wyświetla monit o subskrypcję platformy Azure i maszyny wirtualne używane w środowisku docelowym, a następnie wykonuje następujące operacje:

  • Konfiguruje grupę zasobów, sieć wirtualną i podsieci na platformie Azure na potrzeby instalacji.
  • Konfiguruje sieciowe grupy zabezpieczeń i protokół SSH dla środowiska.
  • Konfiguruje wiele kart sieciowych zarówno w magazynie udostępnionym, jak i na maszynach wirtualnych db2 pureScale.
  • Tworzy maszyny wirtualne magazynu udostępnionego. Jeśli używasz Bezpośrednie miejsca do magazynowania lub innego rozwiązania magazynu, zobacz Bezpośrednie miejsca do magazynowania omówienie.
  • Tworzy maszynę wirtualną serwera przesiadkowego.
  • Tworzy maszyny wirtualne bazy danych DB2 pureScale.
  • Tworzy maszynę wirtualną monitora, która wysyła polecenia ping w warstwie PureScale db2. Pomiń tę część wdrożenia, jeśli twoja wersja bazy danych Db2 pureScale nie wymaga monitora.
  • Tworzy maszynę wirtualną z systemem Windows do użycia do testowania, ale nie instaluje na niej niczego.

Następnie skrypty wdrażania konfigurują sieć magazynu wirtualnego iSCSI (vSAN) dla magazynu udostępnionego na platformie Azure. W tym przykładzie interfejs iSCSI łączy się z udostępnionym klastrem magazynu. W oryginalnym rozwiązaniu klienta użyto systemu GlusterFS. Jednak ibm nie obsługuje już tego podejścia. Aby zapewnić obsługę firmy IBM, należy użyć obsługiwanego systemu plików zgodnego z protokołem iSCSI. Firma Microsoft oferuje Bezpośrednie miejsca do magazynowania (S2D) jako opcję.

To rozwiązanie umożliwia również zainstalowanie obiektów docelowych iSCSI jako jednego węzła systemu Windows. Interfejs iSCSI udostępnia udostępniony interfejs magazynu blokowego za pośrednictwem protokołu TCP/IP, który umożliwia procedurę konfiguracji bazy danych DB2 pureScale w celu nawiązania połączenia z magazynem udostępnionym za pomocą interfejsu urządzenia.

Skrypty wdrażania uruchamiają następujące ogólne kroki:

  1. Konfigurowanie klastra magazynu udostępnionego na platformie Azure. Ten krok obejmuje co najmniej dwa węzły systemu Linux.
  2. Skonfiguruj interfejs direct iSCSI na docelowych serwerach z systemem Linux dla udostępnionego klastra magazynu.
  3. Skonfiguruj inicjator iSCSI na maszynach wirtualnych z systemem Linux. Inicjator uzyska dostęp do udostępnionego klastra magazynu przy użyciu obiektu docelowego iSCSI. Aby uzyskać szczegółowe informacje na temat konfiguracji, zobacz How To Configure An iSCSI Target and Initiator In Linux (Jak skonfigurować obiekt docelowy iSCSI i inicjator w systemie Linux) w dokumentacji RootUsers.
  4. Zainstaluj warstwę magazynu udostępnionego dla interfejsu iSCSI.

Po utworzeniu urządzenia iSCSI przez skrypty ostatnim krokiem jest zainstalowanie bazy danych DB2 pureScale. W ramach konfiguracji bazy danych DB2 pureScale program IBM Spectrum Scale (wcześniej znany jako GPFS) jest kompilowany i instalowany w klastrze GlusterFS. Ten klastrowany system plików umożliwia bazie danych DB2 pureScale udostępnianie danych między maszynami wirtualnymi z aparatem DB2 pureScale. Aby uzyskać więcej informacji, zobacz dokumentację ibm Spectrum Scale w witrynie internetowej IBM.

Plik odpowiedzi db2 pureScale

Repozytorium GitHub zawiera plik DB2server.rsp, plik odpowiedzi (rsp), który umożliwia wygenerowanie zautomatyzowanego skryptu dla instalacji bazy danych DB2 pureScale. W poniższej tabeli wymieniono opcje bazy danych DB2 pureScale używane przez plik odpowiedzi do instalacji. Możesz dostosować plik odpowiedzi zgodnie z potrzebami dla środowiska.

Uwaga

Przykładowy plik odpowiedzi DB2server.rsp znajduje się w repozytorium DB2onAzure w usłudze GitHub. Jeśli używasz tego pliku, musisz go edytować, zanim będzie mógł działać w środowisku.

Nazwa ekranu Pole Wartość
Powitanie Nowa instalacja
Wybieranie produktu DB2 w wersji 11.1.3.3. Wersje serwera z bazą danych DB2 pureScale
Konfigurowanie Directory /data1/opt/ibm/db2/V11.1
Wybierz typ instalacji Typowe
Zgadzam się na warunki IBM Zaznaczono
Właściciel wystąpienia Istniejący użytkownik na przykład, nazwa użytkownika DB2sdin1
Ogrodzony użytkownik Istniejący użytkownik, nazwa użytkownika DB2sdfe1
System plików klastra Ścieżka urządzenia partycji dysku udostępnionego /dev/dm-2
Punkt instalacji /DB2sd_1804a
Dysk udostępniony dla danych /dev/dm-1
Punkt instalacji (dane) /DB2fs/datafs1
Dysk udostępniony dla dziennika /dev/dm-0
Punkt instalacji (dziennik) /DB2fs/logfs1
Tiebreaker usług klastra DB2. Ścieżka urządzenia /dev/dm-3
Lista hostów d1 [eth1], d2 [eth1], cf1 [eth1], cf2[eth1]
Preferowana podstawowa cf cf1
Preferowana pomocnicza cf cf2
Plik odpowiedzi i podsumowanie pierwsza opcja Instalowanie wersji DB2 Server Edition za pomocą funkcji IBM DB2 pureScale i zapisywanie ustawień w pliku odpowiedzi
Nazwa pliku odpowiedzi /root/DB2server.rsp

Uwagi dotyczące tego wdrożenia

  • Wartości , /dev-dm0, /dev-dm1/dev-dm2i /dev-dm3 mogą ulec zmianie po ponownym uruchomieniu na maszynie wirtualnej, na której odbywa się konfiguracja (d0 w skrypcie automatycznym). Aby znaleźć odpowiednie wartości, możesz wydać następujące polecenie przed ukończeniem pliku odpowiedzi na serwerze, na którym zostanie uruchomiona konfiguracja:

    sudo ls -als /dev/mapper
    
    total 0
    0 drwxr-xr-x 2 root root 140 May 30 11:07 .
    0 drwxr-xr-x 19 root root 4060 May 30 11:31 ..
    0 crw------- 1 root root 10, 236 May 30 11:04 control
    0 lrwxrwxrwx 1 root root 7 May 30 11:07 db2data1 -\> ../dm-1
    0 lrwxrwxrwx 1 root root 7 May 30 11:07 db2log1 -\> ../dm-0
    0 lrwxrwxrwx 1 root root 7 May 30 11:26 db2shared -\> ../dm-2
    0 lrwxrwxrwx 1 root root 7 May 30 11:08 db2tieb -\> ../dm-3
    
  • Skrypty instalacji używają aliasów dla dysków iSCSI, aby można było łatwo znaleźć rzeczywiste nazwy.

  • Po uruchomieniu skryptu instalacyjnego na d0 /dev/dm-\* wartości mogą być różne w d1, cf0 i cf1. Różnica w wartościach nie ma wpływu na konfigurację bazy danych DB2 pureScale.

Znane problemy i rozwiązywanie problemów

Repozytorium GitHub zawiera baza wiedzy, które autorzy utrzymują. Zawiera listę potencjalnych problemów, które mogą wystąpić, i rozwiązania, które można wypróbować. Na przykład znane problemy mogą wystąpić, gdy:

  • Próbujesz uzyskać dostęp do adresu IP bramy.
  • Kompilujesz ogólną licencję publiczną (GPL).
  • Uzgadnianie zabezpieczeń między hostami kończy się niepowodzeniem.
  • Instalator DB2 wykrywa istniejący system plików.
  • Ręcznie instalujesz rozwiązanie IBM Spectrum Scale.
  • Instalujesz bazę danych DB2 pureScale, gdy już utworzono skalę IBM Spectrum Scale.
  • Usuwasz bazę danych DB2 pureScale i IBM Spectrum Scale.

Aby uzyskać więcej informacji na temat tych i innych znanych problemów, zobacz plik kb.md w repozytorium DB2onAzure .

Następne kroki