SQL

Jak zainstalować SQL Server na Linux

Posted on Updated on

linuxlove

Jest już dostępna wersja instalacyjna MS SQL Server dla Linux. Jest to wersja MS SQL Server vNext CTP – wersja rozwojowa, przeznaczona tylko do testów:

Instalator wymaga by serwer posiadał min 3.25 GB pamięci RAM. Jest dostępna zarówno wersja standalone jaki wersja HA przeznaczona do tworzenia klastra Always-On MSSQL na Linux.

Proces instalacji na Linux Ubuntu (gdzie przetestowałem serwer) jest dość prosty – dodajemy do źródeł APT link do repozytorium MSSQL, następnie instalujemy paczkę i uruchamiamy konfigurator samego serwera. Konfiguracja dotyczy w zasadzie ustawienia konta SA i decyzji czy uruchomić serwer i czy serwer ma się docelowo uruchamiać automatycznie.

Po uruchomieniu możemy sprawdzić czy serwer działa

root@dev:/home/chris# ps axfu | grep mssql
mssql     2651  0.3  0.5  57816 21276 ?        Ssl  09:58   0:00 /opt/mssql/bin/sqlservr
mssql     2682  6.3 13.1 3574808 532280 ?      Sl   09:58   0:03  \_ /opt/mssql/bin/sqlservr
mssql     2674  0.0  0.8 128028 34516 ?        Ssl  09:58   0:00 /opt/mssql/bin/sqlservr-telemetry /var/opt/mssql/.system

Do zarządzania nowo zainstalowanym serwerem warto pobrać i zainstalować MS SQL Server Management Studio.

mssql-linux-ssms-properties

To jest nowa wersja serwera MS SQL – roboczo nazywana MS SQL vNext. Więcej informacji o zmianach i nowościach tej wersji znajdziecie pod tym linkiem.

Plik do zarządzania serwerem /opt/mssql/bin/sqlservr-setup ma błąd, który nie pozwala na wyłączenie serwera.
Doraźnie najlepiej zakomentować wiersz: 312
# check_running_instance
W przeciwnym razie każde wywołanie skryptu będzie nas informować, że serwer działa i najpierw trzeba go „wyłączyć”.

SQL 2016 oraz Storage Spaces Direct

Posted on

sql-server-2016

SQL Server 2016 zyskał wsparcie dla rozwiązań opartych o Storage Spaces Direct. Nim wyjaśnię jakie są tego korzyści omówię krótko czym jest Storage Spaces i Storage Spaces Direct.

Storage Spaces to technologia jaką przyniósł Windows Server 2012, w wielkim skrócie jest to rozwiązanie, które pozwala na zbudowanie macierzy dyskowej w oparciu o dyski, półkę na dyski, oraz serwer z Windows Server. Macierz, która w niczym nie ustępuje rozwiązaniom klasy Enterprise a zdecydowanie przewyższa macierze Entry Level.

Storage Spaces zapewnia m.in. thin provisioning, deduplikację danych, rozwiązania redundancji (zarówno dysków, półek dyskowych jak i w połączeniu z klastrem – całości rozwiązania). Pozwala na dostarczenie dużej przestrzeni dyskowej zarówno poprzez SMB 3.x (Infiniband 56Gbps) jak i iSCSI (10Gbps). Posiada mechanizmy failover oraz tiering danych (automatyczną alokację danych używanych często – hot, oraz pozostałych pomiędzy dyski SSD oraz SAS, Nearline-SAS). Więcej informacji znajdziesz tutaj.

Storage Spaces Direct to rozwinięcie technologii, które umożliwia wykorzystanie dysków wbudowanych w serwery dla tworzenia wydajnej macierzy. Czemu jest to istotne, ano dla tego, iż w serwerze poza dyskami SSD, SAS czy Nearline-SAS możemy stosować dedykowane karty NVMe – czyli dyski wyposażone w interfejs PCI-E, który zapewnia wydajność na poziomie nawet 6.0 GB/s. Więcej informacji znajdziesz tutaj.

Wróćmy zatem to naszego SQL-a. Jeśli potrzebujemy zbudować środowisko dla SQL Servera, gdzie rozwiązanie ma zapewniać dziesiątki jak nie setki tysięcy IOPS – to albo musimy zainwestować w kilka serwerów (minimum dwa), rozwiązanie FC SAN oraz macierz klasy Enterprise z dyskami SSD.

Albo też możemy zakupić cztery serwery, wyposażyć je w dyski NVMe i zbudować gotowy klaster SQL lub dla oszczędności licencji SQL postawić klaster SQL w klastrze Hyper-V i zyskać dodatkowo większą niezawodność całego środowiska…

sql-server-2016-on-storage-spaces-direct

Adobe loves Azure

Posted on

Adobe poszerzyło swoją współpracę z Microsoft. Kluczowe produkty online Adobe (Adobe Marketing Cloud, Creative Cloud oraz Document Cloud) będą teraz osiągalne z poziomu Azure. Ponadto Adobe będzie korzystać z SQL Servera oraz usług Machine Learning w ramach Microsoft Cortana Intelligence Suite.

adobe_azure

 

StorSimple + Azure = hybrydowy storage

Posted on Updated on

Chciałbym Wam dziś przybliżyć nowe rozwiązanie oferowane przez Microsoft. Rozwiązanie z półki produktów do przechowywania danych jak i backupów i archiwizacji, które śmiało można też określić jako Cloud Storage in a Box 🙂

StorSimple - infrastructure

Zacznijmy od początku – tradycyjny model Data Center składa się z trzech kluczowych elementów:

  • serwerów
  • sieci
  • oraz storage.

Nie zależnie od tego z jakich rozwiązań storage używamy (czy to SAN czy NAS, rozwiązania oparte o SAS, iSCSI, FC, SMB3) – to zawsze ten storage definiuje kilka parametrów:

  • wydajność – IOPS – czyli ilość operacji, które nasz storage jest wstanie zrealizować w danym czasie (kluczowe choćby dla systemów SQL)
  • przepustowość – czyli jak szybko nasz storage dostarcza nam danych
  • pojemność – tego wyjaśniać nie trzeba.

Na przestrzeni ostatnich lat wszystkie z elementów były rozwijane. Zwiększano ilość IOPS dodając do macierzy dyski SSD i zwiększając bufor pamięci na operacje zapisu i odczytu. Zwiększano przepustowości sieci SAN/NAS (10Gbps iSCSI, 56Gbps RDMA), wreszcie stosując nowe dyski oraz funkcje deduplikacja, thin provisioning… zwiększano miejsce – jednakże miejsca ciągle jest za mało.

Rozwój przedsiębiorstwa powoduje również zwiększanie wymagań odnośnie rozmiaru infrastruktury do przechowywania, co pociąga za sobą również wymóg skalowania elementów niezbędnych dla backupów (np. większa ilość tasiemek), jak i rozmiaru centrum zapasowego. Te elementy z jednej strony generują znaczne koszty, z drugiej strony czasem ciężko przewidzieć kiedy będą potrzebne, co przekłada się na ich dostępność (wybór podzespołów, zamówienie, dostawa, instalacja, testy)…

Rozwiązaniem może być StorSimple – usługa Microsoftu która składa się z dwóch składników – specjalistycznej macierzy iSCSI oraz storage w chmurze Azure. Pojemność StorSimple skaluje się w dynamicznie – zawsze mamy taką ilość jaka jest nam potrzebna.

Jak działa StorSimple

StorSimple to w uproszczeniu macierz dyskowa posiadająca trzy warstwy przechowywania danych:

  • Tier 1 – SSD – pierwsza warstwa, której celem jest jak najszybsze (IOPS) dostarczanie użytkownikom danych – pojemność tej warstwy w zależności od urządzenia wynosi 800GB lub 2TB
  • Tier 2 – SAS – warstwa druga, na którą system przenosi te dane, których używamy rzadko, dzięki temu nadal są one dostępne (rozmiar 15-40TB)
  • Tier 3 – Azure – warstwa trzecia, która jest wykorzystywana dla danych bardzo rzadko lub wcale nie używanych (rozmiar 200-500TB)

StorSimple - diagram

Algorytmy zastosowane w urządzeniu analizują na bieżąco zapotrzebowanie na dane, każdy plik jest automatycznie dzielony na małe kawałeczki i jeśli dany kawałek nie jest używany przez dłuższy czas, to jest przenoszony wpierw do warstwy drugiej (SAS), a następnie do trzeciej jako dane archiwalne (Azure). W chwili zapotrzebowania – równie automatycznie – jest pobierany i przenoszony do warstwy wyższej.

Pliki przechowywane na warstwie SAS są poddane deduplikacji (dzięki czemu faktyczna zajętość danych może być nawet kilkakrotnie mniejsza niż rozmiar danych – zależnie oczywiście od typu danych), warstwa druga (SAS) dodatkowo kompresuje dane, zaś dane które są przenoszone na Azure są przed wysłaniem szyfrowane (AES-256-CBC). Transmisja danych jest dodatkowo chroniona poprzez SSL. Zarządzanie naszym storage realizowane jest za pośrednictwem konsoli na portalu Azure, zaś podłączenie półki do naszej infrastruktury zapewnia protokół iSCSI (4x 1GbE oraz 2x 10GbE).

Dzięki temu instalacja storage może być zrealizowana w ciągu dosłownie kilkunastu minut, przełączenie zaś zasobów z obecnych środowisk na StorSimple można zrealizować bez przerw w dostępności.

Archiwizacja i odtwarzanie danych

StorSimple poza Tieringiem danych pozwala na wykonanie kopii zapasowej całej zawartości urządzenia oraz jej cykliczną aktualizację (backup różnicowy). Dzięki temu w chwili awarii całe nasze środowisko jest zabezpieczone w Azure.

Dostęp do danych w może być realizowany na dwa sposoby.

  • Scenariusz pierwszy zakłada uruchomienie w chmurze Azure wirtualnego appliance StorSimple oraz odtworzenie środowiska OnLine.
  • Scenariusz drugi – wymaga użycia fizycznego StorSimple (np. w nowej lokalizacji), który zaraz po skonfigurowaniu zapewni nam dostęp do naszych danych. Co więcej dane będą automatycznie przenoszone pomiędzy warstwami w zależności od tego jakich danych i kiedy potrzebujemy.

Czy to jest bezpieczne

Jak wspomniałem wcześniej – dane nasze są szyfrowane algorytmem AES256, klucz do danych posiadamy my – nie Microsoft, ponadto Microsoft jako jedyny dostawca usług w chmurze posiada ogromną ilość certyfikatów potwierdzających swoje kompetencje i wymogi stawiane przez organy kontrolne (np. Giodo).

Zastosowania

W zasadzie StorSimple sprawdzi się w każdym środowisku gdzie przechowywanych jest dużo danych i te ilość tych danych rośnie. Przykładowe scenariusze, w których StorSimple może się okazać bezkonkurencyjny:

  • Duże serwery plików (FileShare)
  • Backup i archiwizacja danych
  • Logi, nagrania audio (telefony) czy video (system monitoringu)
  • Środowiska maszyn wirtualnych – tiering danych i deduplikacja zmniejszy wymagania na storage zaś Azure pozwoli na przechowywanie archiwum maszyn, kopii zapasowych itp.
  • Sharepoint – a dokładniej baza SQL dla SharePoint

Gdzie stosowanie StorSimple nie ma sensu:

1. Przede wszystkim tam gdzie krytyczna jest dostępność danych (czas) – czyli np. systemy klastrów SQL, BI
2. Małe środowiska – StorSimple kierowany jest dla dużych firm.

Koszty

Najciekawszy element na koniec – teoretycznie, czysto teoretycznie – StorSimple jest za darmo…

Kontrakt na usługę StorSimple wymaga wykupienia przez nas z góry pakietu środków na usługi w chmurze Azure. To na co wykorzystamy te środki zależy całkowicie od nas, mogą to być maszyny wirtualne, bazy SQL, aplikacje Web, Storage itp. StorSimple dostajemy niejako bonus do wspomnianego wyżej pakietu środków.

Pod adresem http://www.microsoft.com/en-us/server-cloud/products/storsimple/collateral.aspx znajdziecie sporą ilość dodatkowych materiałów dotyczących w/w usługi.

Instalacja DPM 2012 R2 – błąd 832

Posted on

dpm-logo

Kolejny błąd przy instalacji DPM 2012 R2 – „Setup cannot grant the MyDomain.com\DomainAdministrator account access to the DPM database”, w a logach instalacji pojawiają się ciągi:

  • SqlException in CreateSqlLoginAndGrantDBAccess
  • Windows NT user or group ‚MyDomain.com\DomainAdministrator’ not found. Check the name again.

Rozwiązaniem jest podanie przy instalacji nazwy domeny bez suffix-a. Czyli np. MyDomain a nie MyDomain.com