<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Refresher on Samarthya</title><link>https://samarthya.me/tags/refresher/</link><description>Recent content in Refresher on Samarthya</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© Samarthya 2018-2026. All rights reserved.</copyright><lastBuildDate>Thu, 02 Feb 2023 12:00:00 +0000</lastBuildDate><atom:link href="https://samarthya.me/tags/refresher/index.xml" rel="self" type="application/rss+xml"/><item><title>Ansible: Refresher</title><link>https://samarthya.me/posts/ansible-refresher/</link><pubDate>Thu, 02 Feb 2023 12:00:00 +0000</pubDate><guid>https://samarthya.me/posts/ansible-refresher/</guid><description>&lt;figure&gt;&lt;img&#10; class="my-0 rounded-md"&#10; loading="lazy"&#10; decoding="async"&#10; fetchpriority="auto"&#10; alt="Seven reasons to use Ansible: simple, agentless, idempotent, modular, integrates with other tools, large community, open source"&#10; width="1200"&#10; height="630"&#10; src="https://samarthya.me/posts/ansible-refresher/an-refresh_hu_8c3c6e601ccfcb3.png"&#10; srcset="https://samarthya.me/posts/ansible-refresher/an-refresh_hu_8c3c6e601ccfcb3.png 800w, https://samarthya.me/posts/ansible-refresher/an-refresh.png 1280w"&#10; sizes="(min-width: 768px) 50vw, 65vw"&#10; data-zoom-src="https://samarthya.me/posts/ansible-refresher/an-refresh.png"&gt;&lt;figcaption&gt;Recreated in October 2026 from the post; the original image was lost&lt;/figcaption&gt;&lt;/figure&gt;&#10;&#10;&lt;h2 class="relative group"&gt;What is Ansible?&#10; &lt;div id="what-is-ansible" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#what-is-ansible" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;Ansible is an open-source software platform for automating and configuring computer systems. It allows you to manage, deploy and orchestrate applications, infrastructure, and network devices using a simple, human-readable language. Ansible uses a push-based architecture, where tasks are executed on remote hosts from a central control machine, and does not require agents to be installed on target systems.&lt;/p&gt;</description></item><item><title>ClusterRole: Refresher</title><link>https://samarthya.me/posts/clusterrole-refresher/</link><pubDate>Tue, 06 Apr 2021 11:26:35 +0000</pubDate><guid>https://samarthya.me/posts/clusterrole-refresher/</guid><description>&lt;p&gt;In this blog I will use &lt;code&gt;kubectl&lt;/code&gt; to create a &lt;code&gt;ClusterRole&lt;/code&gt; and a &lt;code&gt;ClusterRoleBinding&lt;/code&gt; (refer to &lt;a href="https://kubernetes.io/docs/reference/access-authn-authz/rbac/" target="_blank" rel="noreferrer"&gt;link&lt;/a&gt;)&lt;/p&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;{&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;kind&amp;#34;: &amp;#34;ClusterRole&amp;#34;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;apiVersion&amp;#34;: &amp;#34;rbac.authorization.k8s.io/v1&amp;#34;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;metadata&amp;#34;: {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;name&amp;#34;: &amp;#34;myclusterrole&amp;#34;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;creationTimestamp&amp;#34;: null&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; },&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;rules&amp;#34;: [&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;verbs&amp;#34;: [&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;get&amp;#34;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;list&amp;#34;,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;watch&amp;#34;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ],&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;apiGroups&amp;#34;: [&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;&amp;#34;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ],&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;resources&amp;#34;: [&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;#34;persistentvolumes&amp;#34;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ]&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; }&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ]&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;k create clusterrole myclusterrole --verb=get,list,watch --resource=persistentvolumes&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;k describe clusterrole myclusterrole&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"&gt;&#10; &lt;p&gt;You can use a &lt;code&gt;ClusterRole&lt;/code&gt; to&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;define permissions on &lt;code&gt;namespaced&lt;/code&gt; resources and be granted within individual namespace(s)&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;define permissions on namespaced resources and be granted across all &lt;code&gt;namespaces&lt;/code&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;define permissions on cluster-scoped resources&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&#10;&lt;/div&gt;</description></item><item><title>Kernel Mode</title><link>https://samarthya.me/posts/kernel-mode/</link><pubDate>Sat, 17 Oct 2020 14:58:39 +0000</pubDate><guid>https://samarthya.me/posts/kernel-mode/</guid><description>&lt;p&gt;The CPU operates in two modes in Linux&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;User mode (non privileged mode)&lt;/li&gt;&#10;&lt;li&gt;Kernel mode (System mode)&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;When operating in Kernel mode it has un-restricted access to resources like memory and input output devices.&lt;/p&gt;</description></item></channel></rss>