{"id":34310,"date":"2025-11-15T01:40:45","date_gmt":"2025-11-14T22:40:45","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=34310"},"modified":"2025-11-15T01:40:45","modified_gmt":"2025-11-14T22:40:45","slug":"ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/","title":{"rendered":"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131"},"content":{"rendered":"<p><body><\/p>\n<h2>Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131<\/h2>\n<p>SaltStack, modern bilgi i\u015flem altyap\u0131lar\u0131nda sistem y\u00f6netimi ve otomasyonu i\u00e7in tasarlanm\u0131\u015f g\u00fc\u00e7l\u00fc, a\u00e7\u0131k kaynakl\u0131 bir yap\u0131land\u0131rma y\u00f6netimi ve uzak y\u00fcr\u00fctme \u00e7er\u00e7evesidir. B\u00fcy\u00fck \u00f6l\u00e7ekli altyap\u0131larda sunucular\u0131, uygulamalar\u0131 ve a\u011f cihazlar\u0131n\u0131 h\u0131zl\u0131 ve verimli bir \u015fekilde y\u00f6netmek i\u00e7in kullan\u0131l\u0131r. Bu teknik makalede, SaltStack&#8217;in temel bile\u015fenleri olan Salt Master ve Salt Minion sunucular\u0131n\u0131n Ubuntu 14.04 i\u015fletim sistemi \u00fczerinde nas\u0131l kurulup yap\u0131land\u0131r\u0131laca\u011f\u0131n\u0131 ad\u0131m ad\u0131m inceleyece\u011fiz. Ubuntu 14.04 nispeten eski bir s\u00fcr\u00fcm olsa da, SaltStack&#8217;in temel kurulum ve yap\u0131land\u0131rma prensiplerini anlamak i\u00e7in iyi bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<\/p>\n<p>SaltStack, Python tabanl\u0131 olup, h\u0131zl\u0131 ileti\u015fim i\u00e7in ZeroMQ mesajla\u015fma k\u00fct\u00fcphanesini kullan\u0131r. Temel mimarisi bir Master-Minion modeline dayan\u0131r:<br \/>\n*   <strong>Salt Master:<\/strong> T\u00fcm yap\u0131land\u0131rma komutlar\u0131n\u0131 ve durumlar\u0131 da\u011f\u0131tan merkezi sunucudur. Minion&#8217;lardan gelen verileri toplar ve komutlar\u0131 y\u00fcr\u00fct\u00fcr.<br \/>\n*   <strong>Salt Minion:<\/strong> Master&#8217;dan gelen komutlar\u0131 dinleyen ve bunlar\u0131 kendi \u00fczerinde y\u00fcr\u00fcten istemci sunucudur. Her y\u00f6netilecek sunucuya bir Minion kurulur.<\/p>\n<p>SaltStack&#8217;in sundu\u011fu ba\u015fl\u0131ca avantajlar \u015funlard\u0131r:<br \/>\n*   <strong>H\u0131z:<\/strong> Y\u00fcksek performansl\u0131 uzak y\u00fcr\u00fctme yetenekleri sayesinde binlerce sunucuya ayn\u0131 anda komut g\u00f6nderebilir.<br \/>\n*   <strong>\u00d6l\u00e7eklenebilirlik:<\/strong> B\u00fcy\u00fck ve dinamik altyap\u0131lar i\u00e7in tasarlanm\u0131\u015ft\u0131r.<br \/>\n*   <strong>Basitlik:<\/strong> Python dilinin sadeli\u011fi \u00fczerine kuruludur ve kullan\u0131m\u0131 kolayd\u0131r.<br \/>\n*   <strong>Esneklik:<\/strong> Yap\u0131land\u0131rma y\u00f6netimi, uzak y\u00fcr\u00fctme, orkestrasyon ve olay tabanl\u0131 otomasyon gibi geni\u015f bir yelpazede yetenekler sunar.<br \/>\n*   <strong>Olay Odakl\u0131:<\/strong> Sistemdeki de\u011fi\u015fikliklere veya olaylara otomatik olarak tepki verebilen &#8220;Reactor&#8221; sistemi ile otomasyonu bir sonraki seviyeye ta\u015f\u0131r.<\/p>\n<p>Bu makalede, iki ayr\u0131 Ubuntu 14.04 sunucusu kullanarak bir Salt Master ve bir Salt Minion kurulumu ger\u00e7ekle\u015ftirece\u011fiz.<\/p>\n<h3>\u00d6n Gereksinimler<\/h3>\n<p>Kuruluma ba\u015flamadan \u00f6nce a\u015fa\u011f\u0131daki gereksinimlerin kar\u015f\u0131land\u0131\u011f\u0131ndan emin olun:<br \/>\n*   <strong>\u0130ki Adet Ubuntu 14.04 Sunucusu:<\/strong> Bir tanesi Salt Master, di\u011feri Salt Minion olarak kullan\u0131lacak. Bu sunucular\u0131n birbirleriyle a\u011f \u00fczerinden ileti\u015fim kurabiliyor olmas\u0131 gerekmektedir.<br \/>\n*   <strong>Sudo Yetkileri:<\/strong> Her iki sunucuda da <code>sudo<\/code> komutunu kullanabilen bir kullan\u0131c\u0131ya sahip olmal\u0131s\u0131n\u0131z.<br \/>\n*   <strong>A\u011f Ba\u011flant\u0131s\u0131:<\/strong> Sunucular\u0131n internete eri\u015fimi olmal\u0131 ve Master ile Minion aras\u0131nda a\u015fa\u011f\u0131daki portlar\u0131n a\u00e7\u0131k oldu\u011fundan emin olun:<br \/>\n    *   <strong>4505\/TCP (publish_port):<\/strong> Master, Minion&#8217;lara komutlar\u0131 ve durumlar\u0131 bu port \u00fczerinden yay\u0131nlar.<br \/>\n    *   <strong>4506\/TCP (ret_port):<\/strong> Minion&#8217;lar, y\u00fcr\u00fct\u00fclen komutlar\u0131n sonu\u00e7lar\u0131n\u0131 bu port \u00fczerinden Master&#8217;a geri g\u00f6nderir.<br \/>\n*   <strong>Temel Linux Bilgisi:<\/strong> Komut sat\u0131r\u0131 kullan\u0131m\u0131 ve dosya d\u00fczenleme konular\u0131nda temel bilgiye sahip olmak faydal\u0131 olacakt\u0131r.<\/p>\n<p>Bu makale boyunca, Salt Master sunucusunun IP adresini <code>192.168.1.100<\/code> ve Salt Minion sunucusunun IP adresini <code>192.168.1.101<\/code> olarak varsayaca\u011f\u0131z. Kendi ortam\u0131n\u0131za g\u00f6re bu IP adreslerini d\u00fczenlemeniz gerekecektir.<\/p>\n<h3>Salt Master Kurulumu<\/h3>\n<p>\u0130lk olarak, Salt Master sunucusunu kuraca\u011f\u0131z. Bu sunucu, Minion&#8217;lar\u0131 y\u00f6netecek merkezi kontrol noktas\u0131 olacakt\u0131r.<\/p>\n<h4>Sistem G\u00fcncellemesi<\/h4>\n<p>Kuruluma ba\u015flamadan \u00f6nce, sistem paket listesini g\u00fcncelleyelim ve mevcut paketleri y\u00fckseltelim:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update\nsudo apt-get upgrade -y<\/code><\/pre>\n<p>Bu komutlar, sistemin en g\u00fcncel paketlere sahip olmas\u0131n\u0131 sa\u011flayarak olas\u0131 ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131n\u0131 \u00f6nlemeye yard\u0131mc\u0131 olur.<\/p>\n<h4>SaltStack Deposu Ekleme<\/h4>\n<p>Ubuntu 14.04&#8217;\u00fcn varsay\u0131lan depolar\u0131nda SaltStack&#8217;in en g\u00fcncel s\u00fcr\u00fcm\u00fc bulunmayabilir. Bu nedenle, SaltStack&#8217;in kendi resmi deposunu sistemimize eklememiz gerekmektedir.<\/p>\n<p>\u00d6ncelikle, SaltStack GPG anahtar\u0131n\u0131 sistemimize ekleyelim:<\/p>\n<pre><code class=\"language-bash\">wget -O - https:\/\/repo.saltstack.com\/apt\/ubuntu\/14.04\/amd64\/latest\/SALTSTACK-GPG-KEY.pub | sudo apt-key add -<\/code><\/pre>\n<p>Bu komut, SaltStack paketlerinin g\u00fcvenilirli\u011fini do\u011frulamak i\u00e7in kullan\u0131lan genel anahtar\u0131 ekler. Ard\u0131ndan, SaltStack deposunu <code>sources.list.d<\/code> dizinine ekleyelim:<\/p>\n<pre><code class=\"language-bash\">echo \"deb http:\/\/repo.saltstack.com\/apt\/ubuntu\/14.04\/amd64\/latest trusty main\" | sudo tee \/etc\/apt\/sources.list.d\/saltstack.list<\/code><\/pre>\n<p>Depo eklendikten sonra, yeni depo bilgilerini almak i\u00e7in paket listesini tekrar g\u00fcncelleyelim:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update<\/code><\/pre>\n<h4>Salt Master Paketi Kurulumu<\/h4>\n<p>Art\u0131k Salt Master paketini kurmaya haz\u0131r\u0131z:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get install salt-master -y<\/code><\/pre>\n<p>Bu komut, Salt Master yaz\u0131l\u0131m\u0131n\u0131 ve gerekli t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 sisteminize y\u00fckleyecektir.<\/p>\n<h4>Salt Master Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Salt Master&#8217;\u0131n varsay\u0131lan yap\u0131land\u0131rmas\u0131 \u00e7o\u011fu durum i\u00e7in yeterli olsa da, baz\u0131 ayarlar\u0131 kontrol etmek veya de\u011fi\u015ftirmek isteyebilirsiniz. Ana yap\u0131land\u0131rma dosyas\u0131 <code>\/etc\/salt\/master<\/code> konumundad\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/salt\/master<\/code><\/pre>\n<p>Bu dosya i\u00e7inde, \u00f6zellikle a\u015fa\u011f\u0131daki ayarlar\u0131 kontrol edebilirsiniz:<br \/>\n*   <code>interface<\/code>: Salt Master&#8217;\u0131n hangi a\u011f aray\u00fcz\u00fcnden dinleyece\u011fini belirtir. Varsay\u0131lan olarak t\u00fcm aray\u00fczleri dinler (0.0.0.0). E\u011fer belirli bir IP adresinden dinlemesini istiyorsan\u0131z, buraya Master sunucunuzun IP adresini yazabilirsiniz.<br \/>\n*   <code>publish_port<\/code>: Master&#8217;\u0131n Minion&#8217;lara komutlar\u0131 yay\u0131nlad\u0131\u011f\u0131 port. Varsay\u0131lan 4505.<br \/>\n*   <code>ret_port<\/code>: Minion&#8217;lardan gelen sonu\u00e7lar\u0131 dinledi\u011fi port. Varsay\u0131lan 4506.<\/p>\n<p>\u015eimdilik varsay\u0131lan ayarlar yeterli olacakt\u0131r, ancak ileride bu dosya \u00fczerinden daha geli\u015fmi\u015f yap\u0131land\u0131rmalar yapabilirsiniz. De\u011fi\u015fiklik yapt\u0131ysan\u0131z dosyay\u0131 kaydedip \u00e7\u0131k\u0131n (Ctrl+X, Y, Enter).<\/p>\n<h4>Salt Master Servisini Ba\u015flatma ve Etkinle\u015ftirme<\/h4>\n<p>Kurulum tamamland\u0131ktan sonra, Salt Master servisini ba\u015flatmam\u0131z ve sistem ba\u015flang\u0131c\u0131nda otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flamam\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo service salt-master start<\/code><\/pre>\n<p>Servisin ba\u015far\u0131yla ba\u015flay\u0131p ba\u015flamad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo service salt-master status<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131da &#8220;salt-master is running&#8221; veya benzeri bir ifade g\u00f6rmelisiniz. Son olarak, sistem yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda Salt Master&#8217;\u0131n otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flayal\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo update-rc.d salt-master defaults<\/code><\/pre>\n<h4>G\u00fcvenlik Duvar\u0131 Ayarlar\u0131 (UFW)<\/h4>\n<p>Salt Master&#8217;\u0131n Minion&#8217;larla ileti\u015fim kurabilmesi i\u00e7in g\u00fcvenlik duvar\u0131n\u0131zda gerekli portlar\u0131n a\u00e7\u0131k olmas\u0131 \u00f6nemlidir. Ubuntu&#8217;da yayg\u0131n olarak kullan\u0131lan g\u00fcvenlik duvar\u0131 UFW&#8217;dir (Uncomplicated Firewall).<\/p>\n<p>E\u011fer UFW etkinse, 4505 ve 4506 numaral\u0131 TCP portlar\u0131n\u0131 a\u00e7mal\u0131s\u0131n\u0131z:<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 4505\/tcp\nsudo ufw allow 4506\/tcp<\/code><\/pre>\n<p>E\u011fer UFW etkin de\u011filse, \u00f6nce etkinle\u015ftirmeniz gerekebilir:<\/p>\n<pre><code class=\"language-bash\">sudo ufw enable<\/code><\/pre>\n<p>Bu komutu \u00e7al\u0131\u015ft\u0131rd\u0131ktan sonra &#8220;Command may disrupt existing ssh connections.&#8221; uyar\u0131s\u0131 alabilirsiniz. Bu normaldir, <code>y<\/code> tu\u015funa basarak onaylay\u0131n. Son olarak, g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131z\u0131 kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo ufw status<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131da 4505\/tcp ve 4506\/tcp portlar\u0131n\u0131n &#8220;ALLOW Anywhere&#8221; olarak listelendi\u011fini g\u00f6rmelisiniz.<\/p>\n<h3>Salt Minion Kurulumu<\/h3>\n<p>\u015eimdi s\u0131ra Salt Minion sunucusunu kurmaya geldi. Bu sunucu, Master&#8217;dan gelen komutlar\u0131 y\u00fcr\u00fctecek olan istemcidir.<\/p>\n<h4>Sistem G\u00fcncellemesi<\/h4>\n<p>Minion sunucusunda da Master sunucusunda yapt\u0131\u011f\u0131m\u0131z gibi sistem paketlerini g\u00fcncelleyelim:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get update\nsudo apt-get upgrade -y<\/code><\/pre>\n<h4>SaltStack Deposu Ekleme<\/h4>\n<p>Minion sunucusu i\u00e7in de SaltStack deposunu eklememiz gerekmektedir. Ad\u0131mlar Master sunucusundaki ile ayn\u0131d\u0131r:<\/p>\n<pre><code class=\"language-bash\">wget -O - https:\/\/repo.saltstack.com\/apt\/ubuntu\/14.04\/amd64\/latest\/SALTSTACK-GPG-KEY.pub | sudo apt-key add -\necho \"deb http:\/\/repo.saltstack.com\/apt\/ubuntu\/14.04\/amd64\/latest trusty main\" | sudo tee \/etc\/apt\/sources.list.d\/saltstack.list\nsudo apt-get update<\/code><\/pre>\n<h4>Salt Minion Paketi Kurulumu<\/h4>\n<p>Salt Minion paketini kural\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo apt-get install salt-minion -y<\/code><\/pre>\n<h4>Salt Minion Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Minion&#8217;\u0131n Master ile ileti\u015fim kurabilmesi i\u00e7in Master&#8217;\u0131n IP adresini veya hostname&#8217;ini bilmesi gerekir. Bu ayar\u0131 <code>\/etc\/salt\/minion<\/code> yap\u0131land\u0131rma dosyas\u0131nda yapaca\u011f\u0131z. Ayr\u0131ca, her Minion&#8217;\u0131n Master taraf\u0131ndan benzersiz bir \u015fekilde tan\u0131nmas\u0131n\u0131 sa\u011flayan bir <code>id<\/code> de\u011feri tan\u0131mlamam\u0131z da \u00f6nemlidir.<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/salt\/minion<\/code><\/pre>\n<p>Bu dosyan\u0131n en ba\u015f\u0131na veya uygun bir yere a\u015fa\u011f\u0131daki sat\u0131rlar\u0131 ekleyin veya mevcut olanlar\u0131 d\u00fczenleyin:<\/p>\n<pre><code class=\"language-yaml\">master: 192.168.1.100 # Salt Master sunucunuzun IP adresi veya hostname'i\nid: minion1           # Bu minion i\u00e7in benzersiz bir isim (\u00f6rn: webserver01, db02)<\/code><\/pre>\n<p>*   <code>master<\/code>: Buraya Salt Master sunucunuzun IP adresini veya DNS \u00fczerinden \u00e7\u00f6z\u00fcmlenebilen hostname&#8217;ini yazmal\u0131s\u0131n\u0131z. (\u00d6rne\u011fimizde <code>192.168.1.100<\/code>)<br \/>\n*   <code>id<\/code>: Bu, Salt Master&#8217;\u0131n bu Minion&#8217;\u0131 tan\u0131mas\u0131n\u0131 sa\u011flayacak benzersiz bir isimdir. \u0130yi bir uygulama, sunucunun i\u015flevini veya konumunu yans\u0131tan anlaml\u0131 bir isim vermektir (\u00f6rne\u011fin, <code>webserver-01<\/code>, <code>dev-db-03<\/code>).<\/p>\n<p>De\u011fi\u015fiklikleri kaydedip dosyadan \u00e7\u0131k\u0131n (Ctrl+X, Y, Enter).<\/p>\n<h4>Salt Minion Servisini Ba\u015flatma ve Etkinle\u015ftirme<\/h4>\n<p>Yap\u0131land\u0131rmay\u0131 tamamlad\u0131ktan sonra, Salt Minion servisini ba\u015flatal\u0131m ve sistem ba\u015flang\u0131c\u0131nda otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flayal\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo service salt-minion start<\/code><\/pre>\n<p>Servisin durumunu kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo service salt-minion status<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131da &#8220;salt-minion is running&#8221; ifadesini g\u00f6rmelisiniz. Otomatik ba\u015flatma i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo update-rc.d salt-minion defaults<\/code><\/pre>\n<p>Minion sunucusunda g\u00fcvenlik duvar\u0131 ayar\u0131 yapmaya gerek yoktur, \u00e7\u00fcnk\u00fc Minion Master&#8217;a ba\u011flan\u0131r, Master Minion&#8217;a ba\u011flanmaz (ilk el s\u0131k\u0131\u015fma hari\u00e7). Ancak Minion&#8217;\u0131n Master&#8217;a eri\u015febilmesi i\u00e7in d\u0131\u015far\u0131ya do\u011fru 4505 ve 4506 portlar\u0131na eri\u015fimi olmas\u0131 gerekir. \u00c7o\u011fu durumda, varsay\u0131lan g\u00fcvenlik duvar\u0131 kurallar\u0131 buna izin verir.<\/p>\n<h3>Master ve Minion Aras\u0131ndaki \u0130leti\u015fimi Kurma (Anahtar Kabul\u00fc)<\/h3>\n<p>SaltStack&#8217;in g\u00fcvenlik modelinin \u00f6nemli bir par\u00e7as\u0131, Master ve Minion&#8217;lar aras\u0131ndaki ileti\u015fimin \u015fifreli ve do\u011frulanm\u0131\u015f olmas\u0131d\u0131r. Bir Minion ilk kez Master&#8217;a ba\u011fland\u0131\u011f\u0131nda, Master&#8217;a bir genel anahtar g\u00f6nderir. Master&#8217;\u0131n bu anahtar\u0131 kabul etmesi gerekir ki Minion ile g\u00fcvenli ileti\u015fim kurabilsin.<\/p>\n<p>Bu ad\u0131mlar\u0131 <strong>Salt Master sunucusu<\/strong> \u00fczerinde ger\u00e7ekle\u015ftirece\u011fiz.<\/p>\n<h4>Minion Anahtar\u0131n\u0131 Bekleme<\/h4>\n<p>Minion servisi ba\u015flat\u0131ld\u0131ktan sonra, Master&#8217;a ba\u011flanmaya \u00e7al\u0131\u015facak ve genel anahtar\u0131n\u0131 g\u00f6nderecektir. Master sunucusunda bekleyen anahtarlar\u0131 listelemek i\u00e7in a\u015fa\u011f\u0131daki komutu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo salt-key -L<\/code><\/pre>\n<p>Bu komutun \u00e7\u0131kt\u0131s\u0131, <code>Accepted Keys<\/code>, <code>Denied Keys<\/code>, <code>Rejected Keys<\/code> ve <code>Unaccepted Keys<\/code> ba\u015fl\u0131klar\u0131n\u0131 g\u00f6sterecektir. Minion&#8217;\u0131n\u0131z\u0131n anahtar\u0131, <code>Unaccepted Keys<\/code> alt\u0131nda, Minion yap\u0131land\u0131rma dosyas\u0131nda belirtti\u011finiz <code>id<\/code> de\u011feriyle g\u00f6r\u00fcnmelidir (\u00f6rne\u011fimizde <code>minion1<\/code>).<\/p>\n<h4>Minion Anahtar\u0131n\u0131 Kabul Etme<\/h4>\n<p>Minion&#8217;\u0131n\u0131z\u0131n anahtar\u0131n\u0131 kabul etmek i\u00e7in iki se\u00e7ene\u011finiz vard\u0131r:<br \/>\n1.  <strong>T\u00fcm bekleyen anahtarlar\u0131 kabul etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo salt-key -A<\/code><\/pre>\n<p>    Bu komut, <code>Unaccepted Keys<\/code> alt\u0131ndaki t\u00fcm anahtarlar\u0131 kabul etmenizi ister. Her bir anahtar i\u00e7in onay vermeniz gerekecektir.<\/p>\n<p>2.  <strong>Belirli bir anahtar\u0131 kabul etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo salt-key -a minion1<\/code><\/pre>\n<p>    Bu komut sadece <code>minion1<\/code> adl\u0131 Minion&#8217;\u0131n anahtar\u0131n\u0131 kabul edecektir. Bu y\u00f6ntem, \u00f6zellikle birden fazla Minion&#8217;\u0131n\u0131z oldu\u011funda ve hangi Minion&#8217;\u0131 kabul etti\u011finizi bilmek istedi\u011finizde daha g\u00fcvenlidir.<\/p>\n<p>Anahtar\u0131 kabul ettikten sonra bir onay mesaj\u0131 g\u00f6receksiniz.<\/p>\n<h4>Onaylama<\/h4>\n<p>Anahtar\u0131n ba\u015far\u0131yla kabul edildi\u011fini do\u011frulamak i\u00e7in <code>salt-key -L<\/code> komutunu tekrar \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo salt-key -L<\/code><\/pre>\n<p>Bu sefer, <code>minion1<\/code> anahtar\u0131n\u0131n <code>Accepted Keys<\/code> alt\u0131nda listelendi\u011fini g\u00f6rmelisiniz. Bu, Master ile Minion aras\u0131nda g\u00fcvenli ileti\u015fimin kuruldu\u011funu ve Master&#8217;\u0131n art\u0131k bu Minion&#8217;a komut g\u00f6nderebilece\u011fi anlam\u0131na gelir.<\/p>\n<h3>\u0130lk Testler<\/h3>\n<p>Anahtarlar kabul edildi\u011fine g\u00f6re, Salt Master \u00fczerinden Minion&#8217;\u0131m\u0131za ilk komutlar\u0131m\u0131z\u0131 g\u00f6ndererek kurulumun do\u011fru \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 test edebiliriz. T\u00fcm bu komutlar <strong>Salt Master sunucusu<\/strong> \u00fczerinde \u00e7al\u0131\u015ft\u0131r\u0131lacakt\u0131r.<\/p>\n<h4>T\u00fcm Minion&#8217;lara Ping Atma<\/h4>\n<p>T\u00fcm ba\u011fl\u0131 ve kabul edilmi\u015f Minion&#8217;lara &#8220;ping&#8221; atmak i\u00e7in <code>test.ping<\/code> mod\u00fcl\u00fcn\u00fc kullanabiliriz. Bu, Minion&#8217;\u0131n Master ile ileti\u015fim kurup kurmad\u0131\u011f\u0131n\u0131 kontrol etmenin en basit yoludur.<\/p>\n<pre><code class=\"language-bash\">sudo salt '*' test.ping<\/code><\/pre>\n<p><em>   <code><\/em><\/code>: Bu, &#8220;glob&#8221; hedeflemesidir ve t\u00fcm Minion&#8217;lar\u0131 hedefler.<br \/>\n*   <code>test.ping<\/code>: Salt&#8217;\u0131n yerle\u015fik <code>test<\/code> mod\u00fcl\u00fcndeki <code>ping<\/code> fonksiyonunu \u00e7a\u011f\u0131r\u0131r.<\/p>\n<p>\u00c7\u0131kt\u0131 \u015f\u00f6yle olmal\u0131d\u0131r:<\/p>\n<pre><code class=\"language-\">minion1:\n    True<\/code><\/pre>\n<p>E\u011fer <code>True<\/code> yerine <code>False<\/code> veya hi\u00e7bir \u00e7\u0131kt\u0131 g\u00f6rmezseniz, bir sorun var demektir. Sorun giderme b\u00f6l\u00fcm\u00fcne bak\u0131n.<\/p>\n<h4>Belirli Bir Minion&#8217;a Ping Atma<\/h4>\n<p>Sadece belirli bir Minion&#8217;a komut g\u00f6ndermek i\u00e7in Minion&#8217;\u0131n <code>id<\/code> de\u011ferini kullanabiliriz:<\/p>\n<pre><code class=\"language-bash\">sudo salt 'minion1' test.ping<\/code><\/pre>\n<p>Yine ayn\u0131 \u00e7\u0131kt\u0131y\u0131 almal\u0131s\u0131n\u0131z.<\/p>\n<h4>Minion Bilgilerini Alma (Grains)<\/h4>\n<p>Salt, her Minion hakk\u0131nda sistem bilgileri toplayan &#8220;Grains&#8221; ad\u0131 verilen bir mekanizmaya sahiptir. Bu bilgiler i\u015fletim sistemi, \u00e7ekirdek s\u00fcr\u00fcm\u00fc, IP adresleri, bellek miktar\u0131 gibi statik verileri i\u00e7erir.<\/p>\n<p>T\u00fcm Minion&#8217;lar\u0131n t\u00fcm Grains bilgilerini listelemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo salt '*' grains.ls<\/code><\/pre>\n<p>Bu komut, Minion&#8217;\u0131n sahip oldu\u011fu t\u00fcm Grain t\u00fcrlerini listeler. Belirli bir Grain&#8217;i almak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo salt 'minion1' grains.item os_family<\/code><\/pre>\n<p>Bu, <code>minion1<\/code> adl\u0131 Minion&#8217;\u0131n i\u015fletim sistemi ailesini (\u00f6rne\u011fin <code>Debian<\/code>) g\u00f6sterecektir.<\/p>\n<h4>Komut \u00c7al\u0131\u015ft\u0131rma \u00d6rnekleri<\/h4>\n<p>Salt&#8217;\u0131n en temel \u00f6zelliklerinden biri, Minion&#8217;lar \u00fczerinde rastgele komutlar \u00e7al\u0131\u015ft\u0131rma yetene\u011fidir. Bunu <code>cmd.run<\/code> mod\u00fcl\u00fc ile yapabiliriz.<\/p>\n<p>Minion \u00fczerinde <code>\/<\/code> dizinindeki dosyalar\u0131 listele:<\/p>\n<pre><code class=\"language-bash\">sudo salt '*' cmd.run 'ls -l \/'<\/code><\/pre>\n<p>Bu komut, her Minion&#8217;dan <code>\/<\/code> dizinindeki dosyalar\u0131n listesini d\u00f6nd\u00fcrecektir.<\/p>\n<p>Bir paket y\u00fckleme \u00f6rne\u011fi: Minion&#8217;a Nginx web sunucusunu kurmas\u0131n\u0131 s\u00f6yleyelim.<\/p>\n<pre><code class=\"language-bash\">sudo salt 'minion1' pkg.install 'nginx'<\/code><\/pre>\n<p>Bu komut, <code>minion1<\/code> \u00fczerinde Nginx paketini y\u00fckleyecektir. Paket kurulumu tamamland\u0131ktan sonra, Nginx servisini ba\u015flatal\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo salt 'minion1' service.start 'nginx'<\/code><\/pre>\n<p>Nginx servisinin durumunu kontrol etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo salt 'minion1' service.status 'nginx'<\/code><\/pre>\n<p>Bu testler, Salt Master&#8217;\u0131n\u0131z\u0131n Minion&#8217;lar\u0131n\u0131zla ba\u015far\u0131yla ileti\u015fim kurabildi\u011fini ve onlar \u00fczerinde komutlar\u0131 y\u00fcr\u00fctebildi\u011fini g\u00f6stermelidir.<\/p>\n<h3>Geli\u015fmi\u015f Yap\u0131land\u0131rma Kavramlar\u0131<\/h3>\n<p>SaltStack&#8217;in ger\u00e7ek g\u00fcc\u00fc, sadece uzak komut y\u00fcr\u00fctmeden daha fazlas\u0131n\u0131 sunan yap\u0131land\u0131rma y\u00f6netimi yeteneklerinde yatar. \u0130\u015fte birka\u00e7 temel kavram:<\/p>\n<h4>Salt Durumlar\u0131 (States) ve Pillar<\/h4>\n<p>*   <strong>Salt Durumlar\u0131 (States):<\/strong> Salt Durumlar\u0131, bir sistemin &#8220;istenen durumunu&#8221; tan\u0131mlayan deklaratif yap\u0131land\u0131rma dosyalar\u0131d\u0131r. Genellikle YAML format\u0131nda yaz\u0131l\u0131rlar ve <code>.sls<\/code> uzant\u0131s\u0131na sahiptirler. Bir durum dosyas\u0131, bir paketin kurulu olmas\u0131n\u0131, bir servisin \u00e7al\u0131\u015fmas\u0131n\u0131, bir dosyan\u0131n belirli bir i\u00e7eri\u011fe sahip olmas\u0131n\u0131 veya bir kullan\u0131c\u0131n\u0131n var olmas\u0131n\u0131 sa\u011flayabilir. Master, bu durum dosyalar\u0131n\u0131 Minion&#8217;lara g\u00f6nderir ve Minion&#8217;lar kendilerini bu duruma getirir.<br \/>\n    *   <strong>\u00d6rnek Durum Dosyas\u0131 (<code>\/srv\/salt\/apache\/init.sls<\/code>):<\/strong><\/p>\n<pre><code class=\"language-yaml\">apache_package:\n          pkg.installed:\n            - name: apache2 # Ubuntu'da apache2 paketi\n        \n        apache_service:\n          service.running:\n            - name: apache2\n            - enable: True\n            - require:\n              - pkg: apache_package<\/code><\/pre>\n<p>    *   <strong>Durumu Uygulama:<\/strong> Bu durumu Minion&#8217;lara uygulamak i\u00e7in Master \u00fczerinde:<\/p>\n<pre><code class=\"language-bash\">sudo salt '*' state.apply apache<\/code><\/pre>\n<p>        Bu komut, t\u00fcm Minion&#8217;larda Apache2 paketini kuracak ve servisini ba\u015flatacakt\u0131r.<\/p>\n<p>*   <strong>Pillar:<\/strong> Pillar, hassas verileri (parolalar, API anahtarlar\u0131) veya Minion&#8217;lara \u00f6zg\u00fc yap\u0131land\u0131rma verilerini g\u00fcvenli bir \u015fekilde depolamak ve hedeflemek i\u00e7in kullan\u0131l\u0131r. Pillar verileri Master taraf\u0131ndan \u015fifrelenir ve yaln\u0131zca ilgili Minion&#8217;a g\u00f6nderilir. Salt Durumlar\u0131 ile birlikte kullan\u0131larak dinamik ve Minion&#8217;a \u00f6zel yap\u0131land\u0131rmalar olu\u015fturulabilir.<\/p>\n<h4>Salt Dosya Sistemi (File Root)<\/h4>\n<p>Salt Master, durum dosyalar\u0131, Pillar verileri, \u00f6zel mod\u00fcller ve di\u011fer dosyalar\u0131 <code>\/srv\/salt<\/code> ve <code>\/srv\/pillar<\/code> gibi dizinlerde tutar. Bu dizinlere &#8220;file roots&#8221; denir ve <code>\/etc\/salt\/master<\/code> dosyas\u0131nda yap\u0131land\u0131r\u0131l\u0131rlar.<br \/>\n*   <code>\/srv\/salt<\/code>: Durum dosyalar\u0131n\u0131 (SLS), \u00f6zel mod\u00fclleri ve di\u011fer statik dosyalar\u0131 i\u00e7erir.<br \/>\n*   <code>\/srv\/pillar<\/code>: Pillar verilerini i\u00e7erir.<\/p>\n<h4>Hedefleme (Targeting)<\/h4>\n<p>Salt, Minion&#8217;lar\u0131 hedeflemek i\u00e7in \u00e7ok g\u00fc\u00e7l\u00fc mekanizmalara sahiptir:<br \/>\n<em>   <strong>Glob E\u015fle\u015ftirme (<code><\/em><\/code>, <code>minion*<\/code>):<\/strong> Yukar\u0131da g\u00f6rd\u00fc\u011f\u00fcm\u00fcz gibi, t\u00fcm Minion&#8217;lar\u0131 veya belirli bir desene uyanlar\u0131 hedefler.<\/p>\n<pre><code class=\"language-bash\">sudo salt 'webserver*' test.ping<\/code><\/pre>\n<p>*   <strong>Liste E\u015fle\u015ftirme (<code>minion1,minion2<\/code>):<\/strong> Belirli Minion ID&#8217;lerinin virg\u00fclle ayr\u0131lm\u0131\u015f bir listesini hedefler.<\/p>\n<pre><code class=\"language-bash\">sudo salt -L 'minion1,dbserver' test.ping<\/code><\/pre>\n<p>*   <strong>Grains Hedefleme (<code>-G<\/code>):<\/strong> Minion&#8217;lar\u0131n sahip oldu\u011fu Grains verilerine g\u00f6re hedefler. \u00d6rne\u011fin, sadece Ubuntu i\u015fletim sistemine sahip Minion&#8217;lar\u0131 hedeflemek:<\/p>\n<pre><code class=\"language-bash\">sudo salt -G 'os:Ubuntu' test.ping<\/code><\/pre>\n<p>    Veya belirli bir IP adresine sahip Minion&#8217;lar\u0131:<\/p>\n<pre><code class=\"language-bash\">sudo salt -G 'ipv4:192.168.1.101' test.ping<\/code><\/pre>\n<p>*   <strong>Pillar Hedefleme (<code>-I<\/code>):<\/strong> Pillar verilerine g\u00f6re Minion&#8217;lar\u0131 hedefler. \u00d6rne\u011fin, <code>role:webserver<\/code> Pillar&#8217;\u0131na sahip Minion&#8217;lar\u0131:<\/p>\n<pre><code class=\"language-bash\">sudo salt -I 'role:webserver' test.ping<\/code><\/pre>\n<h4>Reactor ve Orkestrasyon<\/h4>\n<p>*   <strong>Reactor:<\/strong> Salt&#8217;\u0131n olay sistemi \u00fczerine kurulu olan Reactor, belirli olaylara otomatik olarak tepki vermeyi sa\u011flar. \u00d6rne\u011fin, bir Minion&#8217;da bir servis durdu\u011funda veya bir hata olu\u015ftu\u011funda, Reactor otomatik olarak bir kurtarma beti\u011fi \u00e7al\u0131\u015ft\u0131rabilir veya bir bildirim g\u00f6nderebilir.<br \/>\n*   <strong>Orkestrasyon:<\/strong> Salt Orkestrasyonu, birden fazla sunucu veya servis aras\u0131nda karma\u015f\u0131k, s\u0131ral\u0131 i\u015flemleri otomatikle\u015ftirmek i\u00e7in kullan\u0131l\u0131r. \u00d6rne\u011fin, bir uygulaman\u0131n da\u011f\u0131t\u0131m\u0131n\u0131, veritaban\u0131 y\u00fckseltmesini ve y\u00fck dengeleyici g\u00fcncellemelerini tek bir komutla y\u00f6netebilirsiniz.<\/p>\n<p>Bu kavramlar, SaltStack&#8217;in sadece basit komut \u00e7al\u0131\u015ft\u0131rmadan \u00f6te, tam te\u015fekk\u00fcll\u00fc bir otomasyon platformu olmas\u0131n\u0131 sa\u011flar.<\/p>\n<h3>Sorun Giderme \u0130pu\u00e7lar\u0131<\/h3>\n<p>Kurulum veya yap\u0131land\u0131rma s\u0131ras\u0131nda sorunlarla kar\u015f\u0131la\u015f\u0131rsan\u0131z, a\u015fa\u011f\u0131daki ad\u0131mlar size yard\u0131mc\u0131 olabilir:<\/p>\n<h4>Loglar\u0131 Kontrol Etme<\/h4>\n<p>Salt Master ve Minion&#8217;\u0131n log dosyalar\u0131, sorunlar\u0131n kayna\u011f\u0131n\u0131 bulmak i\u00e7in en iyi yerdir:<br \/>\n*   <strong>Salt Master loglar\u0131:<\/strong> <code>\/var\/log\/salt\/master<\/code><br \/>\n*   <strong>Salt Minion loglar\u0131:<\/strong> <code>\/var\/log\/salt\/minion<\/code><br \/>\nBu log dosyalar\u0131n\u0131 <code>tail -f<\/code> komutuyla canl\u0131 olarak izleyebilir veya <code>grep<\/code> ile belirli anahtar kelimeleri arayabilirsiniz.<\/p>\n<h4>G\u00fcvenlik Duvar\u0131<\/h4>\n<p>Master ve Minion aras\u0131ndaki ileti\u015fim sorunlar\u0131n\u0131n \u00e7o\u011fu g\u00fcvenlik duvar\u0131 kaynakl\u0131d\u0131r.<br \/>\n*   <strong>Master sunucusunda:<\/strong> 4505\/TCP ve 4506\/TCP portlar\u0131n\u0131n d\u0131\u015far\u0131dan eri\u015fime a\u00e7\u0131k oldu\u011fundan emin olun. (<code>sudo ufw status<\/code>)<br \/>\n*   <strong>Minion sunucusunda:<\/strong> D\u0131\u015far\u0131ya do\u011fru 4505\/TCP ve 4506\/TCP portlar\u0131na eri\u015fimi oldu\u011fundan emin olun.<\/p>\n<h4>Master ve Minion Kimlikleri<\/h4>\n<p>*   <strong>Minion yap\u0131land\u0131rmas\u0131:<\/strong> <code>\/etc\/salt\/minion<\/code> dosyas\u0131ndaki <code>master:<\/code> ayar\u0131n\u0131n Salt Master&#8217;\u0131n do\u011fru IP adresini veya hostname&#8217;ini g\u00f6sterdi\u011finden emin olun. Ayr\u0131ca <code>id:<\/code> ayar\u0131n\u0131n benzersiz ve do\u011fru oldu\u011fundan emin olun.<br \/>\n*   <strong>Master yap\u0131land\u0131rmas\u0131:<\/strong> <code>\/etc\/salt\/master<\/code> dosyas\u0131nda <code>interface:<\/code> ayar\u0131 varsa, Master&#8217;\u0131n do\u011fru a\u011f aray\u00fcz\u00fcnden dinledi\u011finden emin olun.<\/p>\n<h4>Servis Durumlar\u0131<\/h4>\n<p>Hem Master hem de Minion servislerinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun:<\/p>\n<pre><code class=\"language-bash\">sudo service salt-master status\nsudo service salt-minion status<\/code><\/pre>\n<p>E\u011fer servisler \u00e7al\u0131\u015fm\u0131yorsa, <code>start<\/code> komutuyla ba\u015flat\u0131n ve loglar\u0131 kontrol edin.<\/p>\n<h4>Anahtar Kabul\u00fc<\/h4>\n<p>Master sunucusunda <code>sudo salt-key -L<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak Minion anahtar\u0131n\u0131n <code>Accepted Keys<\/code> alt\u0131nda listelendi\u011finden emin olun. E\u011fer <code>Unaccepted Keys<\/code> alt\u0131nda ise, <code>sudo salt-key -a <minion_id><\/code> ile kabul edin. E\u011fer <code>Rejected Keys<\/code> alt\u0131nda ise, anahtar\u0131 silip Minion&#8217;\u0131 yeniden ba\u015flatmay\u0131 deneyebilirsiniz:<\/p>\n<pre><code class=\"language-bash\"># Master \u00fczerinde\nsudo salt-key -d <minion_id>\n\n<h2>Minion \u00fczerinde<\/h2>\nsudo rm \/etc\/salt\/pki\/minion\/minion.pem\nsudo service salt-minion restart<\/code><\/pre>\n<p>Ard\u0131ndan Master&#8217;da anahtar\u0131 tekrar kabul edin.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu makalede, Salt Master ve Salt Minion sunucular\u0131n\u0131n Ubuntu 14.04 \u00fczerinde nas\u0131l kurulup yap\u0131land\u0131r\u0131laca\u011f\u0131n\u0131 ayr\u0131nt\u0131l\u0131 bir \u015fekilde ele ald\u0131k. SaltStack deposunu eklemekten, Master ve Minion paketlerini kurmaya, yap\u0131land\u0131rma dosyalar\u0131n\u0131 d\u00fczenlemeye ve nihayet Master ile Minion aras\u0131nda g\u00fcvenli ileti\u015fimi sa\u011flamak i\u00e7in anahtar kabul s\u00fcrecini tamamlamaya kadar t\u00fcm ad\u0131mlar\u0131 ad\u0131m ad\u0131m uygulad\u0131k. Ayr\u0131ca, kurulumun ba\u015far\u0131l\u0131 oldu\u011funu do\u011frulamak i\u00e7in \u00e7e\u015fitli testler ger\u00e7ekle\u015ftirdik ve SaltStack&#8217;in temel yap\u0131land\u0131rma y\u00f6netimi kavramlar\u0131na (Durumlar, Pillar, Hedefleme) k\u0131sa bir giri\u015f yapt\u0131k.<\/p>\n<p>SaltStack, uzak komut y\u00fcr\u00fctme yetenekleri sayesinde sunucular\u0131n\u0131z\u0131 an\u0131nda kontrol etmenizi, Durumlar (States) ile istedi\u011finiz yap\u0131land\u0131rmay\u0131 deklaratif bir \u015fekilde tan\u0131mlaman\u0131z\u0131 ve Pillar ile hassas verileri g\u00fcvenli bir \u015fekilde y\u00f6netmenizi sa\u011flar. Bu yetenekler, otomasyon, yap\u0131land\u0131rma y\u00f6netimi ve s\u00fcrekli teslimat (CI\/CD) s\u00fcre\u00e7lerinizde size b\u00fcy\u00fck esneklik ve verimlilik kazand\u0131racakt\u0131r.<\/p>\n<p>Ubuntu 14.04 gibi eski bir platformda bu kurulumu ger\u00e7ekle\u015ftirmek, SaltStack&#8217;in temel i\u015fleyi\u015fini ve ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 anlaman\u0131za yard\u0131mc\u0131 olmu\u015ftur. Modern da\u011f\u0131t\u0131mlarda kurulum s\u00fcreci benzer olmakla birlikte, paket adlar\u0131 veya depo URL&#8217;leri gibi k\u00fc\u00e7\u00fck farkl\u0131l\u0131klar g\u00f6sterebilir.<\/p>\n<p>SaltStack d\u00fcnyas\u0131na yapt\u0131\u011f\u0131n\u0131z bu giri\u015fin ard\u0131ndan, Durumlar ve Pillar ile daha karma\u015f\u0131k yap\u0131land\u0131rmalar\u0131 otomatikle\u015ftirmeyi, Reactor ile olay odakl\u0131 otomasyonu ke\u015ffetmeyi ve Orkestrasyon ile \u00e7ok a\u015famal\u0131 da\u011f\u0131t\u0131mlar\u0131 y\u00f6netmeyi deneyerek SaltStack&#8217;in t\u00fcm potansiyelini a\u00e7\u0131\u011fa \u00e7\u0131karman\u0131z\u0131 \u015fiddetle tavsiye ederiz. SaltStack dok\u00fcmantasyonu ve topluluk kaynaklar\u0131, bu yolculukta size de\u011ferli rehberlik sa\u011flayacakt\u0131r. Art\u0131k sunucular\u0131n\u0131z\u0131 verimli bir \u015fekilde y\u00f6netmek i\u00e7in g\u00fc\u00e7l\u00fc bir araca sahipsiniz!<br \/>\n<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131\nSaltStack, modern bilgi i\u015flem altyap\u0131lar\u0131nda sistem","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1468],"tags":[],"class_list":{"0":"post-34310","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131\" \/>\n<meta property=\"og:description\" content=\"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131 SaltStack, modern bilgi i\u015flem altyap\u0131lar\u0131nda sistem\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-14T22:40:45+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"17 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131\",\"datePublished\":\"2025-11-14T22:40:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/\"},\"wordCount\":2946,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/\",\"name\":\"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-14T22:40:45+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/","og_locale":"tr_TR","og_type":"article","og_title":"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131","og_description":"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131 SaltStack, modern bilgi i\u015flem altyap\u0131lar\u0131nda sistem","og_url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-14T22:40:45+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"17 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131","datePublished":"2025-11-14T22:40:45+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/"},"wordCount":2946,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/","url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/","name":"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-14T22:40:45+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-14-04-uzerine-salt-master-ve-minion-sunucularinin-kurulumu-ve-yapilandirilmasi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ubuntu 14.04 \u00dczerine Salt Master ve Minion Sunucular\u0131n\u0131n Kurulumu ve Yap\u0131land\u0131r\u0131lmas\u0131"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/34310","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=34310"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/34310\/revisions"}],"predecessor-version":[{"id":34311,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/34310\/revisions\/34311"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=34310"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=34310"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=34310"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}