System Center Configuration Manager ile Katılımsız SQL Server Kurulumu ve Dağıtılması

Merhabalar,

Bu yazımda gene bir uygulama dağıtımına değiniyor olacağım. Fakat alışık olduğumuz standart uygulamalardan olmayacaktır. Bu yazımda SCCM ile SQL Server dağıtımını yapıyor olacağız. SCCM ile istemci yönetimini yapabildiğimiz gibi sunucu sistelerininde yönetimini gerçekleştirebiliyoruz.

İşte burada SCCM ile sunucu üzerine SQL Server dağıtımını gerçekleştireceğiz. SQL Server’ ın dağıtılması pek ihtiyaç duyulacak bir uygulama olmadığı düşünülebilir. Lakin biraz daha eniş açıdan düşünürseniz yaşanabilecek bir sorunda kısa sürede SQL Server kurulumu ve yapılandırması yapabilmenize imkan sunmaktadır.

Burada yapılacak bir özelleştirme ile mevcut SQL Sunucunuzun aynı konfigürasyon ve yapılandırmasında SQL Instance’ ınızı kurarak veritabanlarınızı çok kısa bir sürede çalışır hale getirebilirsiniz.

Bildiğiniz gibi SQL Sunucuları ve veritabanları işletmeler için en kritik iş yüklerinden biridir. Bunun için SQL sistemlerine ayrı bir özen göstermek gerekir. Günümüz teknolojilerinde kurumlara göre özel “İş Sürekliliği, Felaket-Kurtarma” çözümleri SQL mimarileri için oluşturuyor. Benim danışmanlığını yaptığım firmalara tecrübelerimden yararlanarak 3 farklı senaryo ve mimari hazırlayarak çözüm sağlarım. Bunlardan bir taneside kritik durumlarda olabildiğince en kısa sürede SQL platformlarını çalışır hale getirmektir.

Bahsetmiş olduğum 3 farklı senaryondan birtanesi olan Katılımsız SQL Server kurulumudur ve bu yazımda bunu SCCM ile nasıl yapılandırdığıma ve dağıtımını gerçekleştirdiğime değineceğim.

SQL Server ISO’ su içerisinde çıkartmış olduğumuz kurulum dosyalarını Paylaştırılmış olan klasörümün içerisine aktardıktan sonra SCCM Yönetim Konsolu üzerinde Software Library > Application Management > Applications üzerinde sağ click yaparak Create Application diyoruz. Uygulama oluşturma sihirbazında General sekmesinde Manually specify the application information seçeneğini seçerek devam ediyoruz.

General Information sekmesinde dağıtımını yapacağım uygulamamıza bir isim ve uygulamaya ait yayınlayıcı ve yazılım versiyonunu belirterek devam ediyoruz.

Deployment Types sekmesinde dağıtımı tipini belirtmemiz gerekmektedir. Bunun için Add butonuna basarak Dağıtım Tipi Oluşturma sihirbazını başlatarak, General Sekmesinde Type kısmında Script Installer’ ı seçtikten sonra bir sonraki adıma geçiyoruz.

General Informaion sekmesinde oluşturduğumuz Dağıtım Tipimize bir isim belirterek bir sonraki adıma geçiyoruz.

Content sekmesinde SQL Server Iso’ su içerisinde çıkartarak kopyaladığımız lokasyonu belirtiyor olmak gerekmekteir. Installation program kısmında kurulum için belirtmeniz gereken parametreleri girmeniz gerekir.

Setup.exe /ConfigurationFile= ConfigurationFile.ini parametresini girmeniz yeterki olacaktır. Bu parametrede ConfigurationFile.ini dosyasını alt kısımlarda ayrıntılı olarak sizlere anlatıyor olacağım. Bu “ ConfigurationFile.ini “ dosyası katılımsız SQL kurulumu için gerekli yapılandırma verilerini içeren dosyadır.

İlgili kısımları doldurduktan sonra bir sonraki adıma geçiyoruz.

Detection Method sekmesinde Add Clause diyerek Tanımlama Metodu oluşturmanız gerekmektedir. Bu pencedere Setting Type kısmında Windows Installer’ ı seçmeniz gerekir. Sonrasında kurulumunu yapacağımız SQL Server 2014 ürünümüzün Product Code’ unu belirtmemiz gerekiyor.

SQL Server 2014 SP1 Product Code : {17531BCD-C627-46A2-9F1E-7CC920E0E94A}

User Experience sekmesinde Kurulum Davranışı, Oturum Açma Gereksinimi ve Program Kurulum Görünürlülüğü ayarlamalarını tamamladıktan sonra ilerleyebilirsiniz.

Dependencies sekmesinde SQL Server kurulumu için gereken bağımlılıkları belirtmeniz gerekmektedir. SQL Server kurulumunda .Net Framework 3.5’ in yüklü olması gerekmektedir. Bu yüzden Uygulama olarak .Net Framework 3.5’ i SCCM üzerinde oluşturmanız gerekmektedir ki Dependencies olarak ekleyebilesiniz. Veyahut manuel olarakda kurabilirsiniz.

Özet penceresinde oluşturmuş olduğumuz Dağıtım Tipi için gerçekleştirdiğimiz yapılandırmaya yönelik ayrıntıları görebilirsiniz.

SQL Server uygulamamızı başarılı bir şekilde oluşturmuş olduk. Artık yukarıda belirtmiş olduğum ConfigurationFile.ini dosyasını inceleyebbiliriz.

ConfigurationFile.ini

ConfigurationFile.ini dosyası SQL Server kurulumu yaparken gerçekleştirmiş olduğunuz yapılandırmalar, kurulacak bileşenler, yetkiler vb. bilgileri içeren yapılandırma dosyasdır. Bu dosya GUI ekranı üzerinden yapılan ayarları Ready to Install adımında Konfigürasyon Dosya Lokasyonuna gerçekleştirdiğiniz ayarlar ile oluşturur.

SCCM ile veya CMD yada PowerShell aracılığı ile gerçekleştireceğiniz katılımsız kurulumlarda mutlaka oluşturmanız gereken yapılandırma dosyasıdır. Bunun için işletmenin kritik SQL Sunucuları kurulurken bu konfigürasyon dosyasını mutlaka saklamanız önemlidir ki herhangi bir olumsuzlukta birebir SQL Instance kurulumunuzu yapabilesiniz.

Tabiki Katılımsız kurulumlarda ve SCCM ile SQL Server kurulumu yapacaksanız ConfigurationFile.ini dosyasında bazı parametreleri silmeniz, değiştirmeniz ve eklemeniz gerekmektedir.

IACCEPTSQLSERVERLICENSETERMS=”True” parameteresini eklemelisiniz ki otomarik olarak lisans sözleşmesini onaylasın.

UIMODE=”Normal” parametresini silmeniz gerekmektedir. Çünkü kurulum sırasında Kurulum arayüzünü görmeden arka planda kurmak istiyoruz.

QUIET=”True” parametresini False’ dan True olarak değiştirmeniz gerekmektedir.

SQL Server Kurulumunda kurulacak olan bazı bileşenler arka planda bazı servis hesapları ile çalışmaktadır veya bizlerin oluşturduğu servis hesapları ile çalışır olmasını isteyebiliriz. Eğer default servis hesapları ile değilde etki alanında buluanan servis hesaplarımız ile çalıştıracak isek bu servis hesaplarının şifre bilgilerini belirtmek gerekmektedir.

SKIPRULES=”RebootRequiredCheck” Kurulum öncesinde yapılan kontrol işlemlerini pas geçmek için ekleyebilirsiniz. “Yazmamınızı tavsiye ederim. Çünkü bu gereksinim kontrollerinin yapılması sonadan oluşabilecek hatalar için önemlidir.”

Ben yapılandırma Database Engine, Reporting Service ve SQL Agent Service’ i kuracağımdan dolayı bunları çalıştıracak olan servis hesaplarına ait şifre bilgilerini belirtiyor olacağım.

RSSVCPASSWORD=”Servis Hesabı Şifresi” Bu parametre Reporting Service için kullanılmaktadır.

SQLSVCPASSWORD=”Servis Hesabı Şifresi ” Bu parametre Database Engine için kullanılmaktadır.

AGTSVCPASSWORD=” Servis Hesabı Şifresi ” Bu parametre SQL Agent Service için kullanılmaktadır. Benim hazırladığım ConfigurationFile.ini dosyasını örnek olması amacı ile paylaşıyorum.

katilimsiz

;SQL Server 2014 Configuration File
[OPTIONS]

IACCEPTSQLSERVERLICENSETERMS="True"

; Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter. 

ACTION="Install"

; Use the /ENU parameter to install the English version of SQL Server on your localized Windows operating system. 

ENU="True"

; Parameter that controls the user interface behavior. Valid values are Normal for the full UI,AutoAdvance for a simplied UI, and EnableUIOnServerCore for bypassing Server Core setup GUI block. 

; Setup will not display any user interface. 

QUIET="True"

; Setup will display progress only, without any user interaction. 

QUIETSIMPLE="False"

; Specify whether SQL Server Setup should discover and include product updates. The valid values are True and False or 1 and 0. By default SQL Server Setup will include updates that are found. 

UpdateEnabled="True"

; Specify if errors can be reported to Microsoft to improve future SQL Server releases. Specify 1 or True to enable and 0 or False to disable this feature. 

ERRORREPORTING="False"

; If this parameter is provided, then this computer will use Microsoft Update to check for updates. 

USEMICROSOFTUPDATE="False"

; Specifies features to install, uninstall, or upgrade. The list of top-level features include SQL, AS, RS, IS, MDS, and Tools. The SQL feature will install the Database Engine, Replication, Full-Text, and Data Quality Services (DQS) server. The Tools feature will install Management Tools, Books online components, SQL Server Data Tools, and other shared components. 

FEATURES=SQLENGINE,RS

; Specify the location where SQL Server Setup will obtain product updates. The valid values are "MU" to search Microsoft Update, a valid folder path, a relative path such as .\MyUpdates or a UNC share. By default SQL Server Setup will search Microsoft Update or a Windows Update service through the Window Server Update Services. 

UpdateSource="MU"

; Displays the command line parameters usage 

HELP="False"

; Specifies that the detailed Setup log should be piped to the console. 

INDICATEPROGRESS="False"

; Specifies that Setup should install into WOW64. This command line argument is not supported on an IA64 or a 32-bit system. 

X86="False"

; Specify the root installation directory for shared components.  This directory remains unchanged after shared components are already installed. 

INSTALLSHAREDDIR="C:\Program Files\Microsoft SQL Server"

; Specify the root installation directory for the WOW64 shared components.  This directory remains unchanged after WOW64 shared components are already installed. 

INSTALLSHAREDWOWDIR="C:\Program Files (x86)\Microsoft SQL Server"

; Specify a default or named instance. MSSQLSERVER is the default instance for non-Express editions and SQLExpress for Express editions. This parameter is required when installing the SQL Server Database Engine (SQL), Analysis Services (AS), or Reporting Services (RS). 

INSTANCENAME="MUTLUSQLSERVER"

; Specify that SQL Server feature usage data can be collected and sent to Microsoft. Specify 1 or True to enable and 0 or False to disable this feature. 

SQMREPORTING="False"

; Specify the Instance ID for the SQL Server features you have specified. SQL Server directory structure, registry structure, and service names will incorporate the instance ID of the SQL Server instance. 

INSTANCEID="MUTLUSQLSERVER"

; RSInputSettings_RSInstallMode_Description 

RSINSTALLMODE="DefaultNativeMode"

; Specify the installation directory. 

INSTANCEDIR="C:\Program Files\Microsoft SQL Server"

; Agent account name 

AGTSVCACCOUNT="MCORP\sqlsvc"

AGTSVCPASSWORD="Servis Sifresi"

; Auto-start service after installation.  

AGTSVCSTARTUPTYPE="Automatic"

; CM brick TCP communication port 

COMMFABRICPORT="0"

; How matrix will use private networks 

COMMFABRICNETWORKLEVEL="0"

; How inter brick communication will be protected 

COMMFABRICENCRYPTION="0"

; TCP port used by the CM brick 

MATRIXCMBRICKCOMMPORT="0"

; Startup type for the SQL Server service. 

SQLSVCSTARTUPTYPE="Automatic"

; Level to enable FILESTREAM feature at (0, 1, 2 or 3). 

FILESTREAMLEVEL="0"

; Set to "1" to enable RANU for SQL Server Express. 

ENABLERANU="False"

; Specifies a Windows collation or an SQL collation to use for the Database Engine. 

SQLCOLLATION="SQL_Latin1_General_CP1_CI_AS"

; Account for SQL Server service: Domain\User or system account. 

SQLSVCACCOUNT="MCORP\sqlsvc"

SQLSVCPASSWORD="Servis Sifresi"

; Windows account(s) to provision as SQL Server system administrators. 

SQLSYSADMINACCOUNTS="MCORP\sqlsvc" "MCORP\Domain Admins"

; Provision current user as a Database Engine system administrator for %SQL_PRODUCT_SHORT_NAME% Express. 

ADDCURRENTUSERASSQLADMIN="False"

; Specify 0 to disable or 1 to enable the TCP/IP protocol. 

TCPENABLED="1"

; Specify 0 to disable or 1 to enable the Named Pipes protocol. 

NPENABLED="0"

; Startup type for Browser Service. 

BROWSERSVCSTARTUPTYPE="Automatic"

; Specifies which account the report server NT service should execute under.  When omitted or when the value is empty string, the default built-in account for the current operating system.
; The username part of RSSVCACCOUNT is a maximum of 20 characters long and
; The domain part of RSSVCACCOUNT is a maximum of 254 characters long. 

RSSVCACCOUNT="MCORP\sqlsvc"

RSSVCPASSWORD="Servis Sifresi"

; Specifies how the startup mode of the report server NT service.  When 
; Manual - Service startup is manual mode (default).
; Automatic - Service startup is automatic mode.
; Disabled - Service is disabled 

RSSVCSTARTUPTYPE="Automatic"

SKIPRULES="RebootRequiredCheck"

Gerekli ayarlamalarıda yaptıkdan sonra bu konfigürasyon dosyamızı SQL Server dosyalarımız içerisine kopyalamanız yeterlidir.

Oluşturmuş olduğumuz Katılımsız SQL Server uygulamamızı Sunucu platformlarıma hizmet eden Distribution Point’ lerimiz üzerine gönderiyoruz. Sizlerde ilgili DP’ lerinize göndermeniz gerekmektedir.

DP’ lerimize başarılı bir şekilde gönderildikten sonra artık Veritabanı olarak hizmet verecek olan SQL Sunucu veya Sunucularımıza dağıtabiliriz. Ben burada Available olarak dağıtıyorum. Fakat kritik bir durumda Required olarak dağıtarak otomatik olarak kurulumu arka planda yapmasını sağlıyor olacağız.

SQL Server dağıtımını yaptığımız sunucumuza baktığımızda Software Center üzerinde Installing, Task Manager üzerine baktığımızda ScenarioEngine’ in çalıştığını ve sunucumuz üzerinde kurulum aşamasında olduğunu görebilirsiniz.

SQL Server’ ımızın kurulduğu sunucu üzerinde AppEnforce.log dosyasına baktığınız SQL Instance’ ınızın başarılı bir şekilde kurulduğunu teyit edebilirsiniz.

SCCM ile Katılımsız SQL Server dağıtımı ve kurulumunu anlattıkdan sonra bir sonraki makalemde SQL backuplarını bir Yedekleme Yazılımı olarak nasıl kullandığımı ve SQL backuplarını SCCM ile nasıl otomatik restore ettirdiğimi sizler ile paylaşıyor olacağım.

Leave a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Twitter Auto Publish Powered By : XYZScripts.com