Merhaba arkadaşlar bugün sizlere SharePoint Onprem ortamlarda search service application uygulamasını powershell scripti kullanarak nasıl kurup konfigürasyonlarını yapacağınızdan bahsedeceğim.
İlk olarak Sharepoint central admin giderek servisler arasında arama servisimizin kurulu olup olmadığını kontrol ediyoruz.
Burada bir servis kurulu olması tekrar kurmamız için bir sorun çıkarmayacaktır ama eğer aynı isimlendirmeleri kullanmaya çalışırsak eğer o zaman bir sorun oluşabilirdi. Yukarıda da gördüğünüz gibi servisimiz kurulu değil. Sol üst taraftan “New” diyerekte kurabiliriz ama bu yazımızda powershell scriptleri ile kurmayı göstereceğim.
ilk olarak SharePoint Management Shell yönetici olarak çalıştırıyoruz.
ilk olarak Provision Service Application Instance tanımlamamızı yapıyoruz.
1 |
$sa = New-SPEnterpriseSearchServiceApplication -Name "Search Service Application" -DatabaseName "SearchDB" –ApplicationPool "SecurityTokenServiceApplicationPool" |
Yukarıdaki komutu çalıştırarak search servisi için oluşturma komutlarını tanımlıyoruz. Tırnak için de yer alan değerler arama servisinin, veri tabanının ve uygulama havuzunun isimlendirmeleri. bunları bu şelilde bırakabilirsiniz ya da kendinize göre adlandırabilirsiniz.
Yukarıdaki komutu sorunsuz bir şekilde çalıştırdıktan sonra sıradaki işleminiz olan Provision Application Proxy tanımlamamız için gerekli komutumuzu yazıyoruz.
1 |
New-SPEnterpriseSearchServiceApplicationProxy -Name "Search Service Application Proxy" -SearchApplication $sa |
Yine tırnak içerisinde yer alan isimlendirmeyi siz kendinizde belirleyebilirsiniz.
Bu adımıda yukarıdaki görselde göründüğü gibi sorunsuz olarak çalıştırıp Search Service Application Proxy mizin oluştuğunu gördükten sonra diğer adım olan Validate Service Instance kısmına geçiyoruz ve bunun online olup olmadığını görmek için aşağıdaki komut satırını çalıştırıyoruz.
1 |
Get-SPEnterpriseSearchServiceInstance -local |
Yukarıda da gördüğünüz gibi online olarak gelmektedir. Bu aşamadan sonra ise Clone Topology adımına geçerek aktif olan topolojimizi klonluyoruz.
1 |
$clone = $sa.ActiveTopology.Clone() |
Topolojimizi kopyaladıktan sonra arama servisimiz için sunucu adı bilgisini almak için Get Search Service Instance Server Name adımına geçiyoruz. Aşağıdaki komut ile bu bilgiyi alıyoruz.
1 |
Get-SPEnterpriseSearchServiceInstance| Select Server |
Eğer search servisiniz için ekstra bir sunucu kurulumu yapmamış iseniz burada sizin local makinenizin adı gelecektir.
Bu bilgiyi aldıktan sonraki aşama da ise Get Search Service Instance aşamasında bu sunucu da bulunan search service instance bilgisini alacağımız komutu çalıştırıyoruz.
1 |
$si = Get-SPEnterpriseSearchServiceInstance | ?{$_.Server -match "SP16yemre"} |
Burada dediğim gibi tırnak içinde yer alan ismi bir önceki adımda aldığımız server ismi ile güncellemeniz gerekmektedir.
Sunucu bilgisini doğru bir şekilde verdiğimiz zaman hatasız bir şekilde çalışacaktır. Şimdi de sonraki aşama olan Provision Admin Component adımına geçerek yeni arama servisi için yönetici topoloji komponentini oluşturuyoruz.
1 |
New-SPEnterpriseSearchAdminComponent -SearchTopology $clone -SearchServiceInstance $si |
Hemen sonrasında da Provision Processing Component oluşturuyoruz.
1 |
New-SPEnterpriseSearchContentProcessingComponent -SearchTopology $clone -SearchServiceInstance $si |
Ardından Provision Analytics Component oluşturuyoruz.
1 |
New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchTopology $clone -SearchServiceInstance $si |
Bu kurulumdan sonra da Provision Crawl Component komponentinin kurulumunu yapıyoruz.
1 |
New-SPEnterpriseSearchCrawlComponent -SearchTopology $clone -SearchServiceInstance $si |
Sonraki kurulumumuz olan Provision Index Component search index komponentinin kurulumunu yapıyoruz.
1 |
New-SPEnterpriseSearchIndexComponent -SearchTopology $clone -SearchServiceInstance $si -IndexPartition 0 -RootDirectory C:\SearchIndex\ |
Burada “RootDirectory” parametresine verilmiş olunan “C:\SearchIndex\” path adresinin index kurulumu yapılan makine de olması gerekmektedir. Eğer olmaz ise hata verir.
Yukarıdaki powershell ekran görüntüsünde indexlerin tutulacağı path bulamadığında verdiği hata ve bulduğu zamanda komponent kurulumunu tamamladığı zamanki ekran görüntülerini görebilirsiniz. Sıradaki komponentimiz olan Provision Query Component kurulumuna geçiyoruz.
1 |
New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $clone -SearchServiceInstance $si |
Yukarıdaki son komponentimizide kurduktan sonra komponentlerimizin tamamı eklenmiş oldu. Şimdi Activate New Topology adımına geçerek klonladığımız topolojiyi aktif hale getirebiliriz.
1 |
$clone.Activate() |
Klonladığımız topolojiyi aktif ettikten sonra diğer adım olan Clean Inactive Topologies adımına yani pasif durumda olan topolojileri silme işlemini yapıyoruz.
1 |
foreach($tp in (Get-SPEnterpriseSearchTopology -SearchApplication $sa | ?{$_.State -eq "Inactive"})) { Remove-SPEnterpriseSearchTopology -Identity $tp -Confirm:$false } |
Son işlem olarak ise Change Default Content Access Account adımında erişim sağlayan kullanıcı bilgisini güncelliyoruz.
1 |
$sa = Get-SPEnterpriseSearchServiceApplication $content = New-Object Microsoft.Office.Server.Search.Administration.Content($sa) $content.SetDefaultGatheringAccount("<Enter User Name>", (ConvertTo-SecureString "<Enter Password>" -AsPlainText -Force)) |
Yukarıdaki kod parcacığında tanımlamak istediğiniz kullanıcı adı ve şifresini girmeniz gerekmektedir.
Bu işlem ile birlikte tüm adımları sorunsuz bir şekilde tamamladıysak eğer search servisimiz oluşmuştur ve çalışır duruma gelmiştir.
Sharepoint admin merkezine gittiğimiz zaman servisimizin kurulduğunu görebiliriz. Detayına da girdiğiniz zaman ayarladığınız topolojilerinde sorunsuz çalıştığını göreceksiniz.
İlk Yorumu Siz Yapın