<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: harezmii</title>
    <description>The latest articles on DEV Community by harezmii (@harezmii).</description>
    <link>https://dev.to/harezmii</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F810351%2F5b2e220d-af3c-4ca2-b412-dbd822a502a3.png</url>
      <title>DEV Community: harezmii</title>
      <link>https://dev.to/harezmii</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/harezmii"/>
    <language>en</language>
    <item>
      <title>Kubeadm ile kubernetes cluster kurulumu</title>
      <dc:creator>harezmii</dc:creator>
      <pubDate>Mon, 18 Dec 2023 11:17:58 +0000</pubDate>
      <link>https://dev.to/harezmii/kubeadm-ile-kubernetes-cluster-kurulumu-420m</link>
      <guid>https://dev.to/harezmii/kubeadm-ile-kubernetes-cluster-kurulumu-420m</guid>
      <description>&lt;p&gt;Cluster kurmadan önce kontrol edilmesi ya da yapılması gerekenler kontrol edilir.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Node(Host) sistemsel gereklilikler kontrol edilir.&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; - Minimum 2 GB ram ve 2 core işlemci olmalıdır. Tüm makinaların public yada private network olarak birbirlerine erişimleri olmalı. 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Master ve worker nodelar da aşağıda istenilen portların açık olup olmadığı kontrol edilir.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://kubernetes.io/docs/reference/networking/ports-and-protocols/#control-plane" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--kfRAsjRW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://kubernetes.io/images/kubernetes-horizontal-color.png" height="173" class="m-0" width="800"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://kubernetes.io/docs/reference/networking/ports-and-protocols/#control-plane" rel="noopener noreferrer" class="c-link"&gt;
          Ports and Protocols | KubernetesPorts and Protocols | Kubernetes
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          When running Kubernetes in an environment with strict network boundaries, such as on-premises datacenter with physical network firewalls or Virtual Networks in Public Cloud, it is useful to be aware of the ports and protocols used by Kubernetes components.
Control plane Protocol Direction Port Range Purpose Used By TCP Inbound 6443 Kubernetes API server All TCP Inbound 2379-2380 etcd server client API kube-apiserver, etcd TCP Inbound 10250 Kubelet API Self, Control plane TCP Inbound 10259 kube-scheduler Self TCP Inbound 10257 kube-controller-manager Self Although etcd ports are included in control plane section, you can also host your own etcd cluster externally or on custom ports.
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--362k-mc2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://kubernetes.io/images/favicon.png" width="512" height="512"&gt;
        kubernetes.io
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;



</description>
      <category>kubernetes</category>
      <category>devops</category>
      <category>container</category>
      <category>cluster</category>
    </item>
    <item>
      <title>Jenkins pipeline'ı anlamak</title>
      <dc:creator>harezmii</dc:creator>
      <pubDate>Mon, 18 Dec 2023 10:33:57 +0000</pubDate>
      <link>https://dev.to/harezmii/jenkins-pipelinei-anlamak-3cl7</link>
      <guid>https://dev.to/harezmii/jenkins-pipelinei-anlamak-3cl7</guid>
      <description>&lt;p&gt;Jenkins pipeline'ın temel yapısı aşağıdadır. Pipeline yazılırken açılan her parantez kapatılmalıdır.Declarative bu yazım şeklinde &lt;a href="https://groovy-lang.org/"&gt;groovy&lt;/a&gt; dili kullanılmaktadır. Pipeline yazmanın yazıyı yazdığım zaman için 3 farklı yolu vardır.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Github, Bitbucket, TFS gibi kod depolarına ekleyeceğimiz Jenkinsfile isimli dosya oluşturarak.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jenkins arayüzünden pipeline oluşturduğumuz kısımda bulunan pipeline syntax yazabildiğimiz alandan. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jenkins için oluşturulmuş arayüz oluşturma aracı &lt;a href="https://www.jenkins.io/doc/book/blueocean/"&gt;blue ocean&lt;/a&gt; ile oluşturulabilir.&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pipeline {
    agent any

    stages {
        stage('Build') {
            steps {
                echo 'Building..'
            }
        }
        stage('Test') {
            steps {
                echo 'Testing..'
            }
        }
        stage('Deploy') {
            steps {
                echo 'Deploying....'
            }
        }
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Jenkins'te pipeline yazmak için temel olan bölümler şunlardır. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Node&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pipeline ın çalıştırılmasını istediğimiz node(host) veya node'ları belirttiğimiz alandır. Any girilirse jenkins kendisi node seçer ve pipeline'ı çalıştırır. Agent eklemezsek jenkins kurulduğu host üzerinde pipeline çalıştırmayı gerçekleştirir. Böyle bir durum istenen bir durum değildir. Şefler garsonları yönlendirir ve işlemin tamamlanmasını bekler. Şef emri veren yönetici node(host)'dur. Garsonlara farklı işlemler yaptırmak isteriz. Test,Production makinalarınız elbette ayrıdır. Jenkins te bu ayrımı node kısmında label(etiket) kullanarak çözebilir.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Stage&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pipeline tanımlarımız da yapılmak istenilen adım(step)'ların kapsüllendiği kısımdır.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Step&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Stage içerisinde yapılmasını istenilenleri tanımladığımız bölümdür.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>jenkins</category>
      <category>pipeline</category>
      <category>cicd</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
