<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<title>My blog</title>
	<subtitle>My blog site.</subtitle>
	<link href="https://blog.somat.id/blog/feed.xml" rel="self" type="application/atom+xml"/>
    <link href="https://blog.somat.id/blog/"/>
	<updated>2022-06-21T00:00:00+00:00</updated>
	<id>https://blog.somat.id/blog/feed.xml</id>
	<entry xml:lang="en">
		<title>Kubernetes Condition</title>
		<published>2022-06-21T00:00:00+00:00</published>
		<updated>2022-06-21T00:00:00+00:00</updated>
		<link href="https://blog.somat.id/blog/kubernetes-condition/" type="text/html"/>
		<id>https://blog.somat.id/blog/kubernetes-condition/</id>
		<content type="html">&lt;p&gt;Beberapa waktu lalu aku menemukan artikel yang menjelaskan tentang
&lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;maelvls.dev&#x2F;kubernetes-conditions&#x2F;&quot;&gt;Kubernetes condition&lt;&#x2F;a&gt;. Dari situ
aku belajar bahwa sumber daya yang ada di Kubernetes seperti &lt;em&gt;pod&lt;&#x2F;em&gt;, &lt;em&gt;cronjob&lt;&#x2F;em&gt;
atau yang lainnya tidak mempunyai &lt;em&gt;state machine&lt;&#x2F;em&gt; untuk menjukkan apa sumber
daya itu sedang menyala atau mati. Sebagai gantinya adalah &lt;em&gt;Kubernetes condition&lt;&#x2F;em&gt;.
Ambil contoh &lt;em&gt;pod Kubernetes&lt;&#x2F;em&gt; yang mempunyai salah satu &lt;em&gt;Kubernetes condition&lt;&#x2F;em&gt; yang
bernama &lt;em&gt;ContainersReady&lt;&#x2F;em&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Yang menarik lagi adalah antar jenis sumber daya bisa memiliki &lt;em&gt;Kubernetes condition&lt;&#x2F;em&gt; yang
sama atau berbeda. Namun, status semua &lt;em&gt;Kubernetes condition&lt;&#x2F;em&gt; sepertinya hanya bisa di antara
tiga nilai: &lt;em&gt;True&lt;&#x2F;em&gt;, &lt;em&gt;False&lt;&#x2F;em&gt;, &lt;em&gt;Unknown&lt;&#x2F;em&gt;. Tentunya kita bisa membuat &lt;em&gt;Kubernetes condition&lt;&#x2F;em&gt; kita sendiri
dan menempelkannya pada jenis sumber daya bawaan atau buatan sendiri. Salah satu penjelas rujukan
yang dipakai artikel itu adalah &lt;a rel=&quot;nofollow noreferrer&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;kubernetes&#x2F;community&#x2F;blob&#x2F;4c9ef2d&#x2F;contributors&#x2F;devel&#x2F;sig-architecture&#x2F;api-conventions.md#typical-status-properties&quot;&gt;konvensi API Kubernetes&lt;&#x2F;a&gt; dan ada satu pernyataan yang sebaiknya tidak dilupakan:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Condition type names should describe the current observed state of the resource, rather than describing the current state transitions.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Pernyataan ini membuatku sedikit lebih paham kenapa &lt;em&gt;Kubernetes&lt;&#x2F;em&gt; bekerja seperti itu. Pertama, kita
mendefinisikan seperti apa bentuk sumber daya. &lt;em&gt;Kubernetes controller&lt;&#x2F;em&gt; kemudian melakukan rekonsiliasi
melalui proses &lt;em&gt;sync loop&lt;&#x2F;em&gt; sehingga suatu kondisi tercapai. Proses sumber daya untuk mencapai sesuai yang
didefinisikan  bisa gagal dan ada juga &lt;em&gt;Kubernetes condition&lt;&#x2F;em&gt; yang menggambarkan kegagalan itu.&lt;&#x2F;p&gt;
</content>
	</entry>
</feed>