<h4>Icinga2&#8217;ye Director Modulü Kurulumu</h4>
<p>Mevcutta icinga2 kurduğunuz varsayarak anlatılacaktır.</p>
<p>Icinga2 director müdülü bir nevi icinga&#8217;nın config deployment aracıdır , yani siz dilerseniz hostları , objeleri , servisleri manual ekleyebilirsiniz , dilerseniz api ile ekleyebilirsiniz , dilerseniz de icinga2&#8217;nin director modülünü kullanarak ekleyebilirsiniz.</p>
<p>Öncelikle modülü github üzerinden indirelim,</p>
<p># <strong>cd /usr/share/icingaweb2/modules</strong><br />
# <strong>wget https://github.com/Icinga/icingaweb2-module-director/archive/master.zip</strong><br />
# <strong>unzip master.zip</strong><br />
# <strong>mv icingaweb2-module-director-master director</strong><br />
# <strong>restorecon -R director</strong></p>
<p>restorecon komutu çalışmaz ise <a href="http://www.ayhanarda.com/blog/2018/10/bash-restorecon-command-not-found-hatasi-ve-cozumu/">http://www.ayhanarda.com/blog/2018/10/bash-restorecon-command-not-found-hatasi-ve-cozumu/</a> adresinde yer alan işlemi uygulayabilirsiniz.</p>
<p>Evet modulümüzü indirdik ve açtık, şimdi director için ayrı bir mysql veritabanı açmamız gerekiyor. Sunucumuzda veritabanına bağlanıyoruz , tabi localde olduğunu farzederek belirtiyorum , aşağıdaki komutu kullanabilirsiniz.</p>
<p>mysql -h localhost -u root -p</p>
<p>Size mysql root şifrenizi soracaktır , sonrasında giriş yapmış olacaksınız. Aşağıda sırası ile önce director isminde bir veritabanı oluşturyoruz , charset önemli çünkü mutlaka utf8 i görmek istiyor. Sonrasında director isimli user oluşturup , haklarını verip , şifresini belirliyoruz , flush privileges demeyi unutayalım , komut sonrası her şey aktif olacaktır.</p>
<p>mysql>; <strong>CREATE DATABASE director CHARACTER SET &#8216;utf8&#8217;;</strong><br />
mysql>; <strong>GRANT ALL ON director.* TO &#8216;director&#8217;@&#8217;localhost&#8217; IDENTIFIED BY &#8216;directoricinsifrebelirleyiniz&#8217;;</strong><br />
mysql>; <strong>FLUSH PRIVILEGES;</strong></p>
<p>Şimdi veritabanı ve user açtığımıza göre bu veritabanına director modülünde hazır gelen veritabanı dosyasını import etmemiz gerekiyor. Aşağıdaki komut ile yapabilirsiniz , çalıştırdığınızda root password ünüzü isteyecek ve aktarımı yapacaktır.</p>
<p># <strong>mysql -u root -p director <; /usr/share/icingaweb2/modules/director/schema/mysql.sql</strong></p>
<p>Buraya kadar her şey yolunda ise aşağıdaki komutları çalıştırabilirsiniz.</p>
<p># <strong>setsebool -P httpd_can_network_connect 1</strong><br />
# <strong>icinga2 api setup</strong></p>
<p>Son komut ile icinga2 için API,&#8217;yi aktif etmiş olacaksınız. Bir sorun olursa öncesinde <strong>icinga2 feature enable api</strong> komutu ile de aynı işi yapabilirsiniz.</p>
<p>API için bir user ve şifre belirlememiz gerekiyor , ben user bölümüne director yazdım ve password alanına bir şifre belirledim , bu bilgiler director kurulumu sırasında gerekecektir.</p>
<p><strong>/etc/icinga2/conf.d/api-users.conf</strong> dosyasında bu bilgileri doldurabilirsiniz, tabi dilediğiniz text editorü ile, sonuçta kimi nano sever , kimi vi sever , bir tercih meselesi.</p>
<p>/**<br />
* The APIUser objects are used for authentication against the API.<br />
*/<br />
object ApiUser &#8220;director&#8221; {<br />
password = &#8220;SIFREBELIRLEYIN&#8221;<br />
// client_cn = &#8220;&#8221;</p>
<p>permissions = [ &#8220;*&#8221; ]<br />
}</p>
<p>Icinga2&#8217;de API&#8217;yi aktif ettiğimiz için sunucuda 5665 nolu port aktif olacaktır , bunu netstat tan doğrulayabilirsiniz. Aşağıdaki komutları da kullanmanızda fayda var.</p>
<p># <strong>system-config-firewall-tui</strong><br />
# <strong>systemctl restart icinga2</strong></p>
<p>Buraya kadar her şey yolunda ise şimdi Icinga2&#8217;nin web arayüzüne erişiniz , Buradan Configuration menusu altında Modules ve onun altında director menüsüne gelerek sağ bölümden enable ediniz.</p>
<p>Şimdi sıra konfigure etme kısmına geldi , DB Resource bölümünde director isimli veritabanını görüyor olmalısınız , eğer göremiyor iseniz aşağıdaki dosyayı açıp içinde ilgili alana director yazınız.</p>
<p><strong>/etc/icingaweb2/modules/director/config.ini</strong></p>
<p>ve icinga2 servisini yeniden başlatınız.</p>
<p><strong>service icinga2 restart</strong></p>
<p>Eğer yine göremiyor iseniz, aşağıdaki dosyayı açınız , bu bölümde icinga2web ve icinga_ido için 2 bölüm göreceksiniz , o bölümlerden birini kopyalayıp 3. bölüm olarak director veritabanı için dosyanın altına ekleyiniz.</p>
<p><strong>/etc/icingaweb2/resources.ini</strong></p>
<p>[director]<br />
type = &#8220;db&#8221;<br />
db = &#8220;mysql&#8221;<br />
host = &#8220;localhost&#8221;<br />
port = &#8220;3306&#8221;<br />
dbname = &#8220;director&#8221;<br />
username = &#8220;director&#8221;<br />
password = &#8220;SIFRENIZ&#8221;<br />
charset = &#8220;utf8&#8221;<br />
persistent = &#8220;0&#8221;<br />
use_ssl = &#8220;0&#8221;</p>
<p>ve icinga2 servisini tekrar yeniden başlatınız.</p>
<p>Ve bu arada bazı dökümanlarda perfdata özelliğini de açın demişler , aşağıdaki komut ile açalım.</p>
<p><strong>icinga2 feature enable perfdata</strong></p>
<p><strong>service icinga2 restart</strong></p>
<p>Şimdi web arayüzünde director isimli veritabanını görüp göremediğimize tekrar bakalım , eğer görebiliyor isek bir sonraki adıma geçebiliriz. Bu bölümde bize api&#8217;nin portunu , api kullanıcı adı ve şifresini soracaktır , /etc/icinga2/conf.d/api-users.conf dosyasında bunları belirlemiş idik , endpoint ve icingahost kısmına da sunucunun tam adını yazınız. Hepsi bu kadar , Şimdi sol menüden Director ü kullanmaya başlayabilirsiniz.</p>
<p><a href="http://www.ayhanarda.com/blog/wp-content/uploads/2018/10/icinga2-director-install.png"><img class="aligncenter size-full wp-image-1299" src="http://www.ayhanarda.com/blog/wp-content/uploads/2018/10/icinga2-director-install.png" alt="" width="904" height="710" /></a></p>
<p>Ayhan ARDA</p>
<p> ;</p>