Top Menu

Tag Archives SQL Server

W poście nie będę opisywał usługi Azure Log Analytics. Dla rozpoczynających przygodę z OMS oraz usługą Azure Log Analytics polecam kurs MVA (https://blog.porowski.pro/kurs-mva-o-analizie-logow-w-oms) oraz zapoznanie się z materiałami podsumowującymi warsztaty IT Innovation, które miałem przyjemność prowadzić w kilku miastach polski w maju 2016 (https://blog.porowski.pro/podsumowanie-warsztatow-it-innovation-z-operations-management-suite-zasoby-i-kolejne-kroki).

Przechodząc do rzeczy… są serwery bazodanowe SQL Server i jest nadzieję, że są one skonfigurowane oraz zoptymalizowane poprawnie. Rozwiązanie SQL Assessment dostępne w ramach usługi Azure Log Analytics pomaga sprawdzić konfigurację serwerów SQL Server oraz podpowie co powinno zostać poprawione.

Rozwiązanie SQL Assessment priorytetyzuje rekomendacje z sześciu kategorii, pomagając Tobie zrozumieć istotę problemu. Rekomendacje bazują na wiedzy, doświadczeniu oraz dobrych praktykach inżynierów z Microsoft. Każda rekomendacja dostarcza wiedzę odnoście problemu i potencjalnych skutków oraz sugestie wraz z krokami jaki należy zrealizować aby rozwiązań problem.

oms-sql-tile01

Rysunek 1. Kafelek od SQL Assessment na stronie głównej

Rekomendacje

Każda rekomendacja jaka jest w SQL Assessment przypisana jest do kategorii i nadana jest jej waga. Poniżej charakterystyka obu atrybutów.

Kategorie

Sześć kategorii dostępnych w ramach SQL Assessment:

  1. Security and Compliance – zalecenia dotyczące potencjalnych zagrożeń bezpieczeństwa – polityki, ustawienia techniczne, prawo, wymagania regulacyjne.
  2. Availability and Business Continuity – zalecenia dotyczące dostępności usługi, odporności infrastruktury i ochrony biznesu.
  3. Performance and Scalability – zalecenia związane z wydajnością i potrzebami skalowania infrastruktury.
  4. Upgrade, Migration and Deployment – zalecenia dla IT aby był głównym motorem zmian innowacji, poprzez użycie najnowszych technologii oraz rozwiązań w celu dostarczenia biznesowi dodatkowej wartości.
  5. Operations and Monitoring – zalecenia związane z usprawnieniem operacyjności IT.
  6. Change and Configuration Management – zalecenia związane ze zmiana w kontekście negatywnego wpływu na infrastrukturę.

Waga

Waga jest kalkulowana na podstawie trzech parametrów:

  • Probability – Prawdopodobieństwo, że zidentyfikowany problem może spowodować problem. Im większe prawdopodobieństwo tym większa ogólna punktacja dla rekomendacji.
  • Impact  – Wpływ na środowisko, jeżeli problem się pojawi. Im większy wpływ tym większa ogólna punktacja dla rekomendacji.
  • Effort – Nakład pracy wymagany do zaimplementowania rozwiązania. Im większy nakład pracy tym mniejsza ogólna punktacja.

Waga każdego zalecenia jest wyrażona jako procent całkowitej liczby punktów dostępnych dla każdej kategorii np. jeśli zalecenie w kategorii Security and Compliance ma wynik w wysokości 5% i nastąpi jego realizacja to zalecenie zwiększy ogólny wynik Security and Compliance o 5%.

oms-sql-dashboard01

Rysunek 2. Sześć głównych kategorii

Instalacja i konfiguracja

Poniżej kroki jakie trzeba wykonać, w celu uruchomienia SQL Assessment w Azure Log Analytics. Zanim jednak przejdziemy do procedury, kilka ważnych informacji oraz wymagań:

  • SQL Assessment działa ze wszystkimi aktualnie wspieranymi wersjami SQL Server w edycjach Standard, Enterprise oraz Developer.
  • Agent musi być zainstalowany na serwerach z SQL Server.
  • .NET Framework 4 jest wymagany na każdym serwerze, gdzie będzie uruchomiony agent.
  • W przypadku integracji System Center Operations Manager i wykorzystania agenta SCOM, należy skonfigurować Run-As Account (procedura poniżej).

Jeżeli używasz agenta OMS zamiast agenta SCOM, Management Pack zawsze uruchamia się w kontekście konta Local System. Pomiń kroki 1-5 poniżej i uruchom przykład z T-SQL lub PowerShell wstawiając NT AUTHORITY\SYSTEM jako UserName.
SQL Assessment uruchamiany jest co 7 dni i zbiera dane pochodzące z WMI, rejestru, liczników wydajności oraz dynamicznych widoków SQL Server (DMV). Na chwilę obecną nie można zmienić harmonogramu uruchamiania SQL Assessment.

Krok 1 wariant 1 – Konfiguracja Operations Manager Run-As Account – wersja GUI

  1. W konsoli Operations Manager przejdź do Administration.
  2. Poniżej Run As Configuration, kliknij Profiles i otwórz OMS SQL Assessment Run As Profile.
  3. Na stronie Run As Accounts, kliknij Add.
  4. Wybierz konto Windows Run As, które zawiera poświadczenia dla SQL Server lub utwórz nowe klikając New.

    Typ konta Run As Account musi być Windows oraz być członkiem lokalnej grupy Administrators na Windows Server hostującym SQL Server.

  5. Kliknij Save.
  6. Zmodyfikuj i wykonaj poniższy przykładowy skrypt T-SQL, na każdej instancji SQL Server w celu przyznania minimalnych uprawnień wymaganych dla Run As Account dla SQL Assessment. Krok ten nie jest wymagany jeżeli konto Run As Account jest członkiem roli sysadmin na instancji SQL Server.
    --- Zamień <UserName> na nazwę użytkownika użytą jako Run As Account.
    USE master
    
    -- Utwórz login dla użytkownika. Zakomentuj poniższą linię jeżeli login już istnieje.
    CREATE LOGIN [<UserName>] FROM WINDOWS
    
    -- Nadaj uprawnienia dla użytkownika.
    GRANT VIEW SERVER STATE TO [<UserName>]
    GRANT VIEW ANY DEFINITION TO [<UserName>]
    GRANT VIEW ANY DATABASE TO [<UserName>]
    
    -- Dodaj użytkownika dla wszystkich baz danych na instancji SQL Server - wymagane do podłączenia dla poszczególnych baz danych.
    -- Uwaga: To polecenie musi być w wykonane za każdym razem po dodaniu nowej bazy danych do instancji.
    EXEC sp_msforeachdb N'USE [?]; CREATE USER [<UserName>] FOR LOGIN [<UserName>];'

Krok 1 wariant 2 – Konfiguracja Operations Manager Run-As Account – wersja PowerShell

  1. Otwórz konsolę PowerShell i uruchom poniższy przykładowy skrypt, aktualizując go o parametry Twojego środowiska.
    Import-Module OperationsManager
    New-SCOMManagementGroupConnection "<nazwa Management Group>"
    
    $profile = Get-SCOMRunAsProfile -DisplayName "OMS SQL Assessment Run As Profile"
    $account = Get-SCOMrunAsAccount | Where-Object {$_.Name -eq "<nazwa konta Run As Account>"}
    Set-SCOMRunAsProfile -Action "Add" -Profile $Profile -Account $Account

Krok 2 – Dodanie SQL Assessment

Tą operację należy wykonać z poziomu przeglądarki Internetowej po zalogowaniu się do usługi OMS.

  1. Na stronie Overview, wybierz kafelek Solutions Gallery.
  2. Na liście dostępnych obiektów zaznacz SQL Assessment, a następnie kliknij Add.

Przegląd rekomendacji

W momencie kiedy SQL Assesment przeanalizuję serwery SQL, dostępne będą dla niego rekomendacje. W celu ich podglądu w celu rozpoczęcia kroków naprawczych należy zastosować poniższa procedurę:

  1. Na stronie Overview kliknij kafelek SQL Assesment.
  2. Na stronie SQL Assesment, przejrzyj podsumowanie informacji z rożnych kategorii, a następnie kliknij jedną w celu zobaczenia rekomendacji.
  3. W szczegółach zobaczysz spriorytetyzowane zalecenia dla środowiska. Wybierz rekomendację i poniżej Affected Objects zobaczysz co było skutkiem rekomendacji oraz których serwerów dotyczy problem.
  4. W polu Suggested Actions, dostępne są sugerowane podpowiedzi związane z krokami jakie należy zrealizować aby wyeliminować dany problem.

oms-sql-focus01

Rysunek 3. Rekomendacje w ramach wybranej kategorii

Ignorowanie rekomendacji

Jeśli istnieje potrzeba zignorowania wybranych zaleceń to istnieje taka możliwość poprzez stworzenie specjalnego pliku tekstowego, który będzie blokował SQL Assessment przed pokazywaniem ich w wynikach.

Krok 1 – identyfikacja wykluczeń

W celu zidentyfikowania rekomendacji do wykluczenia należy zastosować poniższą procedurę.

  1. Otwórz Log Search i wpisz poniższe zapytanie w celu zobaczenia rekomendacji dla serwerów SQL Server
    Type=SQLAssessmentRecommendation RecommendationResult=Failed | select Computer, RecommendationId, Recommendation | sort Computer
  2. Wybierz rekomendacje, które chcesz wykluczyć z oceny. Zapisz RecommendationId – będzie potrzebne w kolejnym kroku.
    oms-sql-ls01

Rysunek 4. Log Search i rekomendacje

Krok 2 – plik IgnoreRecommendations.txt

  1. Utwórz nowy plik tekstowy za pomocą np. Notatnik o nazwie IgnoreRecommendations.txt
  2. Spisane RecommendationId wpisz w każdej linii osobno, a następnie zapisz i zamknij plik.
  3. Wgraj plik na każdy kompter, który ma ignorować rekomendacje do lokalizacji:
    1. Dla komputerów z Microsoft Monitoring Agent (podłączonych bezpośrednio do OMS lub za pośrednictwem System Center Operations Manager) – SystemDrive:\Program Files\Microsoft Monitoring Agent\Agent
    2. Na serwerze zarządzajacym System Center Operations Manager – SystemDrive:\Program Files\Microsoft System Center 2012 R2\Operations Manager\Server

Krok 3 – weryfikacja wykluczeń

Podczas uruchomiania kolejnej weryfikacji zgodnie z harmonogramem (domyślnie co 7 dni), wykluczenia zaleceń zapisane w pliku IgnoreRecommendations.txt nie pojawią się w wyniku oceny SQL Assessment. Można użyć poniższego zapytania Log Search, w celu wyświetlenia wszystkich ignorowanych rekomendacji.

Type=SQLAssessmentRecommendation RecommendationResult=Ignored | select Computer, RecommendationId, Recommendation | sort Computer

W każdym momencie można przywrócić wykluczone rekomendacje poprzez usunięcie całego pliku IgnoreRecommendations.txt lub wybrane RecommendationId z tego pliku.

Podsumowanie

SQL Assessment pomaga zachować zdrowie serwerów SQL Server poprzez analizę konfiguracji, wydajności w oparciu o wbudowaną bazę wiedzy bazującą na ponad 400 rekomendacjach związanych z najlepszymi praktykami oaz doświadczeniem inżynierów Microsoft.

17 oraz 18 maja miałem ogromną (poważnie ogromną! super konferencja!) przyjemność uczestniczyć w konferencji SQLDay 2016. Była to 8 edycja konferencji a ja byłem na niej pierwszy raz. Od samego początku wydarzenie organizowane w 100% siłami społeczności PLSSUG. Tutaj ogromne chapeau bas dla organizatorów – na konferencji było ponad 650 osób i jakość organizacyjna na 5+. Nie jedna agencja eventowa myślę, że może pozazdrościć organizacji.
W tym wpisie nie chcę skupiać się na typowej relacji z konferencji, a raczej dać kilka słów komentarza do kilku sesji oraz atrakcji z wydarzenia. Przede wszystkim chce podzielić się wiedzą! Poszukałem informacji w kontekście SQL Server, analizy danych oraz tematów pochodnych, które podpiąłem do tematów sesji, na których byłem. Dzięki temu po za samą treścią prezentacji możesz poszukać dodatkowych informacji o danej tematyce.

WP_20160517_10_59_19_Rich

Materiały z konferencji możesz pobrać ze strony: http://sqlday.pl/materialy-sqlday-2016

Pomiędzy pierwszym a drugim dniem wszyscy uczestnicy mieli okazję zrelaksować się, wymienić doświadczeniem oraz kontaktami na wieczornej kolacji.

WP_20160517_20_21_56_Rich_LI

Jak wspomniałem uczestników było około 650 – poniżej na zdjęciu tylko część, która załapała się na grupowym zdjęciu.

Grupowe-SQLDay2016

Dziękuję organizatorom za użyczenie zdjęć, wspaniałą konferencję i mam nadzieję do zobaczenia za rok na SQLDay 2017 🙂

P.S.

Organizatorzy przygotowali konkurs na recenzję konferencji – publicznego info nie ma 🙂 Kto był ten zna zasady i wie co można wygrać! Spokojnie, mój wpis nie bierze udziału w konkursie 🙂

Microsoft SQL Server 2014 brings to market new in-memory capabilities built into the core database, including in-memory OLTP, which complements our existing in-memory data warehousing and BI capabilities for the most comprehensive in-memory database solution in the market.  SQL Server 2014 also provides new cloud capabilities to simplify cloud adoption for your SQL databases and help you unlock new hybrid scenarios.

Microsoft SQL Server 2014 Community Technology Preview 1 (CTP1) installation limitations:

  • Microsoft SQL Server 2014 CTP1 is pre-release software and should be installed only on a clean machine. It does not support upgrade from or side-by-side installations with any previous version of SQL Server, including SQL Server 2012. In addition it does not work with or support side by side installations with any client redistributables of SQL Server such as feature pack components, Visual Studio 2012 or earlier versions, SQL Server Data Tools, Data Tier Application Framework, etc.
  • To administer Microsoft SQL Server 2014 CTP1 use only SQL Server Management Studio that ships as a part of Microsoft SQL Server 2014 CTP1.
  • The Microsoft SQL Server 2014 CTP1 release is NOT supported by Microsoft Customer Services and Support (CSS).
  • The Microsoft SQL Server 2014 CTP1 release is only available in the X64 architecture.
  • The Microsoft SQL Server 2014 CTP1 release is a NON-PRODUCTION release and should not be installed and used in production environments.
  • The Microsoft SQL Server 2014 CTP1 release does NOT have an associated Microsoft SQL Server 2014 CTP1 Feature Pack.
  • The Microsoft SQL Server 2014 CTP1 release on Windows Azure VM is only intended for functional development and testing, and not for performance testing.
  • The Microsoft SQL Server 2014 CTP1 release contains branding and versioning from older Microsoft SQL Server releases.

Need more information about SQL Server 2014 CTP1? See the product details page.

Download Microsoft SQL Server 2014 Community Technology Preview 1 (CTP1)

Jeżeli z jakiś przyczyn działało wam wcześniej ADMT poprawnie i nagle przestało działać przy okazji wyświetlając błędy połączenia SQL to przypomnijcie sobie czy nie została przypadkiem zmieniona nazwa serwera na którym działa SQL Server.

Jeżeli tak to wystarczy zmienić ustawienia SQL Server dla ADMT w rejestrze w poniższej ścieżce.

dla ADMT zainstalowanego na systemie 64-bit:

HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftADMTDatabase

dla ADMT zainstalowanego na systemie 32-bit:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftADMTDatabase
12
Close