15 listopada Microsoft ogłosił, że system bazodanowy SQL Server będzie dostępny również dla systemów Linux. Jest to kolejny krok firmy w stronę lepszej i szerszej współpracy z systemami rodziny linux, co w wielu kręgach oznacza, że piekło zamarzło A poważnie mówiąc, już wcześniej Microsoft udostępnił Visual Studio dla Linux więc SQL Server jest kolejnym, naturalnym krokiem. Obecnie dostępne są paczki RPM dla RHEL czy CentOS oraz APT dla Ubuntu. Dla nas oznacza to jeszcze jedno – MS SQL Server można zainstalować bezpośrednio na QNAP.
Nie będziemy jednak instalować serwera bazodanowego bezpośrednio w systemie QTS, ale skorzystamy z innej metody – kontenerów. W tym celu musimy skorzystać z aplikacji Container Station. Nie jest ona domyślnie zainstalowana w systemie, więc należy ją doinstalować z App Center:
/instalacja Container Station/
Następnie aplikację uruchamiamy po czym wskazujemy katalog, gdzie przechowywane będą pliki kontenerów. Warto do tego celu utworzyć osobny folder, aby w przyszłości zachować porządek i pewną separację pomiędzy „zwykłymi” plikami a plikami kontenerów. Dalsza konfiguracja aplikacji nie będzie potrzebna. Po pełnym uruchomieniu aplikacji klikamy przycisk Utwórz kontener. Zostanie wyświetlona lista najpopularniejszych aplikacji, my jednak musimy wpisać w polu wyszukiwania: mssql-server i kliknąć szukaj:
/wynik wyszukiwania mssql/
Jak widać, wynik jest tylko jeden, więc klikamy Utwórz.
W wyświetlonym oknie musimy skonfigurować kontener do działania. W pierwszym oknie możemy zmienić domyślną nazwę kontenera (mssql-server-linux-1) oraz maksymalne wykorzystanie przez kontener CPU i RAM, jednak wymaganą konfigurację zmienimy po kliknięciu w Advanced Settings
/główne opcje kontenera/
Przechodzimy do Environment (środowisko)
Tutaj musimy podać wymagane parametry. Będą to:
Name: ACCEPT_EULA
Value: Y
Oraz
Name: SA_PASSWORD
Value: TwojeHasło
/Parametry/
Ze szczegółami konfiguracji można zapoznać się na stronie Microsoft: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-docker
Kolejny krok to konfiguracja dostępu do samego kontenera z sieci. W tym celu w zakładce Network ustawiamy port dla zewnętrznego adresu IP urządzenia oraz port wewnętrzny. Domyślnie jest to port TCP/1433.
/konfiguracja sieci kontenera/
Na tym etapie kończymy konfigurację i klikamy przycisk Create. Po kilku minutach kontener zostanie utworzony i będzie widoczny na liście kontenerów:
/lista kontenerów/
Po uruchomieniu kontenera, na jego stronie informacyjnej zobaczymy wyniki działania z konsoli a także wykorzystanie podzespołów takich jak CPU/RAM czy sieć.
Aby połączyć się z bazą danych, skorzystamy z Microsoft SQL Management Studio.
Tutaj podajemy adres IP QNAP oraz hasło sa, które wpisaliśmy podczas konfiguracji kontenera.
/łączenie z bazą danych/
Jak widać, możemy zarządzać takim serwerem podobnie jak tym zainstalowanym w systemie Windows.
/połączenie z serwerem i lista zasobów/
Co ważne, bazy danych działające w tym serwerze można backupować z poziomu Management Studio. W tym celi klikamy prawym przyciskiem wybraną bazę danych, przechodzimy do Tasks > BackUp…
/opcje dla wybranej bazy/
W wyświetlonym oknie postępujemy już jak w przypadku każdej bazy w SQL server. Należy jednak zwrócić uwagę na jedną rzecz. Domyślnie wpisana lokalizacja dla backupu to:
C:\var\opt\mssql\data\nazwabazy.bak
Brzmi trochę dziwnie – połączenie Windows i LinuxJ Ok, ale jak w takim razie uzyskać dostęp do faktycznych plików backupu?
Musimy przejść do katalogu, który wskazaliśmy jako folder na kontenery, (u mnie to)
container-station-data > lib > docker > devicemapper > mnt > 0b5d6c67197c96484468219ee6f4811ab36991fcfb4825ca98f01a87dc81da32 > rootfs > var > opt > mssql > data
Oczywiście najłatwiej wpisać w filestation w polu wyszukiwania frazę „mssql”.
Jak widać, w tym miejscu mamy już zapisany plik backupu (*.bak), który możemy na tym etapie skopiować gdzie indziej. Możemy to również zaplanować za pomocą harmonogramu dzięki aplikacji Stacja backupu (lub w nowej wersji – Hybrid Backup Sync – beta).
Tym łatwym sposobem możemy bezpośrednio na QNAP uruchomić serwer MS SQL Server bez potrzeby tworzenia maszyny wirtualnej z Windows (a więc odpada też potrzeba licencji na dodatkowy system), co przełoży się na lepszą wydajność. W chwili obecnej SQL server to jeszcze wersja beta. Dostępny obraz to SQL Server Express 2014. Kolejne ograniczenie to tylko jedna instancja na kontener, ale nic nie stoi na przeszkodzie, żeby utworzyć większą liczbę kontenerów. Należy tylko pamiętać, żeby dla kolejnych kontenerów przydzielić inne porty.
[simple-author-box]