<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Tarunvenkatsaikumar on Medium]]></title>
        <description><![CDATA[Stories by Tarunvenkatsaikumar on Medium]]></description>
        <link>https://medium.com/@tarunvenkatsaikumar?source=rss-ee73412b313d------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/0*4Y2DuKpfc1zZyIrD</url>
            <title>Stories by Tarunvenkatsaikumar on Medium</title>
            <link>https://medium.com/@tarunvenkatsaikumar?source=rss-ee73412b313d------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 08:57:19 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@tarunvenkatsaikumar/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Network OSI Model — Day-06.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/network-osi-model-day-06-8b025527c412?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/8b025527c412</guid>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[networking]]></category>
            <category><![CDATA[osi-model]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Fri, 16 May 2025 02:56:30 GMT</pubDate>
            <atom:updated>2025-05-16T02:56:30.270Z</atom:updated>
            <content:encoded><![CDATA[<h3>Network OSI Model — Day-06.</h3><p>Hi! This is Tarun, Welcome to Linux series today we will be dealing with the Standard Network OSI Model.</p><p>The OSI model Helps us to understand how the data flows from the sender to the receiver.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*oD3n0452gKW80v4n" /></figure><p>Before going to dive into the OSI model we have to understand 2 concepts called DNS resolution and TCP handshake where these are starting points of the Network Model.</p><h4>DNS Resolution</h4><p>The process of converting a Human-readable domain name (www.goole.com) into a machine Readable Ip address (93.184.216.34) so computers can locate and communicate with each other over the internet.</p><h4>TCP Handshake:</h4><p>It is fundamental process that establish a connection Between client and server over the TCP, before the data passage through Layers this was often refereed has 3 Way handshake.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*mCNKZeR_1wL5uMPV" /></figure><h3>📊 The 7 Layers of the OSI Model (Top to Bottom)</h3><p>Here’s a breakdown of each layer, its function, and examples to make the concept tangible.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*Z4S6tN_V1_e3gqdU" /></figure><h4>🔹 Layer 7: Application Layer</h4><ul><li><strong>Function</strong>: Provides interfaces for user-facing applications to access network services.</li><li><strong>Examples</strong>: Web browsers, email clients, file transfer programs.</li><li><strong>Protocols</strong>: HTTP, FTP, SMTP, DNS, POP3, SNMP.</li></ul><h3>🔸 Layer 6: Presentation Layer</h3><ul><li><strong>Function</strong>: Translates data between the application and the network. Handles <strong>encryption</strong>, <strong>compression</strong>, and <strong>data formatting</strong>.</li><li>The translator or filter that formats and secures your data.</li></ul><h3>🔹 Layer 5: Session Layer</h3><ul><li><strong>Function</strong>: Establishes, maintains, and terminates communication <strong>sessions</strong> between applications.</li><li><strong>Examples</strong>: Managing login sessions.</li><li>The coordinator ensuring the conversation stays on track.</li></ul><h3>🔸 Layer 4: Transport Layer</h3><ul><li><strong>Function</strong>: Ensures reliable data transmission with <strong>error checking</strong>, <strong>segmentation</strong>, and <strong>flow control</strong>.</li><li><strong>Key Concepts</strong>: Ports, TCP/UDP, sequence numbers.</li><li><strong>Protocols</strong>: TCP (reliable), UDP (fast but unreliable)</li></ul><h3>🔹 Layer 3: Network Layer</h3><ul><li><strong>Function</strong>: Handles <strong>routing</strong> and <strong>logical addressing</strong> to deliver packets across networks.</li><li><strong>Examples</strong>: IP addressing, packet forwarding</li><li><strong>Protocols</strong>: IP, ICMP, OSPF, BGP</li><li>The GPS — figuring out the best route to send data to the destination.</li></ul><h3>🔸 Layer 2: Data Link Layer</h3><ul><li><strong>Function</strong>: Deals with <strong>physical addressing</strong> (MAC addresses), <strong>error detection</strong>, and <strong>frame synchronization</strong>.</li><li><strong>Divided into</strong>: LLC (Logical Link Control) and MAC (Media Access Control) sublayers</li><li><strong>Protocols</strong>: Ethernet, ARP, PPP, Switches</li><li>Moving your data around your local network.</li></ul><h3>🔹 Layer 1: Physical Layer</h3><ul><li><strong>Function</strong>: Transmits raw bits over a <strong>physical medium</strong> like copper wire, fiber optics, or radio waves.</li><li><strong>Examples</strong>: Voltage levels, cable types, pin layout, network cards</li><li><strong>Devices</strong>: Hubs, cables, modems, repeaters.</li><li>the physical path your data travels on.</li></ul><p>After all the OSI layers it will reach through the google server then data will pass trough L1 TO l7 at the receiver side and provides the output to the sender.</p><blockquote>That&#39;s all for Day! Please like and follow for more content.</blockquote><blockquote>Thank you! Happy Reading😊</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8b025527c412" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Networking in Linux — Day- 05.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/networking-in-linux-day-05-41eafed78fd5?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/41eafed78fd5</guid>
            <category><![CDATA[cidr]]></category>
            <category><![CDATA[subnet]]></category>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[ip-address]]></category>
            <category><![CDATA[networking]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Thu, 15 May 2025 02:21:45 GMT</pubDate>
            <atom:updated>2025-05-15T02:21:45.525Z</atom:updated>
            <content:encoded><![CDATA[<h3>Networking in Linux — Day- 05.</h3><p>Hi! This is Tarun, Welcome to Linux series today we will discussing about the important topic in Linux that was Networking concepts.</p><h4>Ip Address</h4><p>It was Basically a Unique address for the devices, it allows devices to communicate with each other across the internet or local networks.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*rQs9M2mpfWyAvC_EXLUTkg.png" /></figure><p><strong>Scenario</strong>: In the Home 4 devices are connected to a local WIFI network and the devices need to access to the websites like Instagram, you tube etc. then if you want to block the particular devices for certain purpose with out the unique address for the devices then we end up blocking the access for all the devices to over come this scenraio we have a concept called Ip address.</p><p>Generally with the Ip address we will be having the unique address for every device so we can particularly block the device to get access to the websites, Ip address can be used for the Tracking and Tracing of the devices.</p><p>Ip address follows the Ipv4/Ipv6 Protocol and Ip address is of 4 Bytes or 32 bits Long.</p><h3>📦 Types of IP Addresses</h3><h4>1. IPv4 (most common)</h4><ul><li>Format: x.x.x.x (where each x is a number from 0 to 255)</li><li>Example: 192.168.1.1</li><li>It uses <strong>32 bits</strong> → allows about <strong>4.3 billion unique addresses</strong></li></ul><h4>2. IPv6</h4><ul><li>Format: Eight groups of four hexadecimal digits</li><li>Example: 2001:0db8:85a3:0000:0000:8a2e:0370:7334</li><li>Uses <strong>128 bits</strong> → allows <strong>trillions of addresses</strong></li><li>Designed to replace IPv4 due to address exhaustion</li></ul><h3>🔢 IPv4 Structure</h3><p>An IPv4 address has:</p><ul><li><strong>4 octets</strong> (8 bits each)</li><li>Example:<br> 192.168.10.5 → in binary:<br> 11000000.10101000.00001010.00000101</li><li>Each part is a byte (8 bits), so:</li></ul><p>4×8=32 bits</p><h4>Subnets:</h4><p><strong>Subnetting</strong> is the process of dividing a large IP network into <strong>smaller logical sub-networks (subnets)</strong>. This helps with:</p><ul><li>Efficient IP address usage</li><li>Improved network performance</li><li>Better security and isolation</li></ul><p><strong>Suppose: </strong>If in a office or commercial complex employees are using the Free WIFI which was provided by the company and all the employees has the sensitive information so some malicious person enter into the enter and hacks all the information and will get access to the sensitive information of the employees so to overcome this we will create a subnet to the finical or sensitive information so the when ever or anyone want to access the subnet then the person should have the valid Ip address.</p><h4>CIDR (Classless Inter-Domain Routing):</h4><p><strong>CIDR</strong> is a way to represent IP addresses and their associated <strong>subnet mask</strong> using a concise <strong>slash notation</strong>.</p><p>Format:</p><pre>IP address/CIDR.</pre><p>Example:</p><pre>192.168.1.0/24</pre><ul><li>Here /24 Means.</li><li>The <strong>first 24 bits</strong> of the 32-bit IP address are the <strong>network portion</strong></li><li>The <strong>remaining 8 bits</strong> are for <strong>hosts</strong></li></ul><h3>Why Use CIDR?</h3><p>Before CIDR, IPs were assigned based on <strong>classes (A, B, C)</strong> which often wasted IP space. CIDR allows:</p><ul><li><strong>Flexible subnetting</strong></li><li><strong>Better use of IP space</strong></li><li><strong>More efficient routing</strong></li></ul><h3>🔧 How CIDR Works (Example)</h3><h3>CIDR: 192.168.1.0/26</h3><ul><li><strong>/26</strong> = 26 bits for the <strong>network</strong></li><li>32–26 = <strong>6 bits</strong> left for <strong>hosts</strong></li><li>26=642⁶ = 6426=64 IP addresses</li></ul><p>Classes Table:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*zpe0X56vGkKNL0GkGoo9wg.png" /></figure><h4>Ports:</h4><p>The Ports are nothing but the it was basically used to connect the websites, generally each application will have unique ports.</p><h4>format : 2.3.5.6:9000</h4><p><em>That&#39;s all for the day, Today we have discussed about the fundamentals of Networking.</em></p><p><em>Thank you! Happy Reading</em>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=41eafed78fd5" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Process Management, Monitoring, Disk Management in Linux - Day-04.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/process-management-monitoring-disk-management-in-linux-day-04-43bce1606fe6?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/43bce1606fe6</guid>
            <category><![CDATA[disk-management]]></category>
            <category><![CDATA[process-management]]></category>
            <category><![CDATA[monitoring]]></category>
            <category><![CDATA[linux]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Tue, 13 May 2025 03:15:11 GMT</pubDate>
            <atom:updated>2025-05-13T03:15:11.809Z</atom:updated>
            <content:encoded><![CDATA[<p>Hi! This is Tarun, welcome to Linux Series today we will be discussing about the Process Management, Monitoring and Disk Management in Linux.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/654/1*gYPs39bGmYvjAHIIzskWRQ.png" /></figure><p><strong>Process Management</strong>: The Process is Running instances of a program, as discussed that software applications cannot directly interact with the hardware the O.S does that CPU, Memory, Network Management.</p><p>Suppose a developer has written a python script that was taking or utilizing 90% CPU so there is only 10% left to run other applications; so whenever this running application goes into the wait time then other process will be allocated to run applications so this shows that it utilizing more CPU.</p><p>If it Comes to the Memory Management when a developer develops a Java application which has Multiple Threads then it takes lot of Memory may be it Consumed 90% then only left with the 10% of Memory then other process cannot allot the Memory for the application.</p><p>As the Linux server Admin we need to follow the below process.<br><strong>1. view.<br>2. Kill, Stop, Resume.<br>3. Prior, Deprior.</strong></p><p>Viewing of the process:</p><p>Command for listing all the process is ps but it doesn&#39;t list all the process.</p><pre>ps</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/685/1*P4NF6Y3hFFgGraAfaua9Dg.png" /><figcaption>Listing the Process.</figcaption></figure><p>To list out all the process we have to use the below command.</p><pre>ps -aux</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_G9CJGrgOg0iESaKb6ZGZQ.png" /><figcaption><strong>Showing some process which was running on the instance.</strong></figcaption></figure><p>To know how many process with the Line Number → <strong>ps aux | nl</strong></p><p>To Know the word count of the process → <strong>ps aux | wc -l</strong></p><h4>Components it will show while showing the process.</h4><p>USER → Who has initiated the Process.</p><p>PID → Unique Process ID</p><p>%CPU → CPU Utilization.</p><p>%MEM → Memory Utilization.</p><p>Command → This shows that which command was running.</p><h4>Killing, Stop and Resume the process :</h4><p>If any application was getting Hanged then the application need to be killed; so that other application gets the CPU utilization and memory utilization.</p><p>For Killing the Process we need to use the below command.</p><pre>kill &lt;pid&gt;</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/718/1*Kcg_uQj2hpuLFHFOIMVgzA.png" /><figcaption>killing the 2082 PID</figcaption></figure><p>To Kill out the specific process then we can use the grep command with aux.</p><pre>ps aux | grep java | grep -v grep</pre><p>To forcefully kill the process</p><pre>kill -9 &lt;pid&gt;</pre><p>To Stop or Resume the process we need to use the below commands.</p><pre>kill -stop &lt;pid&gt;<br>kill -cont &lt;pid&gt;</pre><h4>Prior, deprior the process:</h4><p>we need to use the below command for the prioritization and de prioritization of process.</p><pre>renice -n 10 -p &lt;4048&gt;<br>renice -n -5 -p &lt;4048&gt;</pre><p>Here 10 indicates the priority of the process, if it was + then it will gives less priority.</p><ul><li>5 indicates that it gives more priority.</li></ul><h3>Services:</h3><p>These are Special Types of process that comes up automatically when there is an restart on webserver.</p><p>Suppose there are webservers like nginx and Apache which will automatically comes up when there is Linux server bootup these are called services.</p><p>To List out a service we need to use the below command.</p><pre>systemctl list -units --type = service</pre><p>To Stop the Service:</p><pre>systemctl stop &lt;servicename&gt;</pre><p>To start the service:</p><pre>systemctl start &lt;servicename&gt;</pre><h3>Monitoring:</h3><p>As part of Monitoring we will check which process taking more CPU, which process taking more memory and which file system taking more utilization.</p><p>To check the real time data we need to use the top command.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ARituwVm4BlrsT9XSVqb4w.png" /></figure><p>vmstat → it shows the system performance,when ever the users say that system performance is slow then we can check it using vmstat.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*pV9YzRB5Dhi6uCobAaFdDw.png" /></figure><pre>free -m --&gt; To know the Memory Utilization of CPU.<br>nproc   --&gt; No of CPU on the instances.<br></pre><p>To know the disk Management of the webserver <strong>df -h</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/664/1*QfujBbqaT2S6x2DUcdpaRQ.png" /></figure><p>To know how many folders in the file system <strong>du -sh</strong> and to know the folder utilization we need to use the <strong>du -sh *</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/762/1*J5TNKSDcWDhw6dcs-yLgUA.png" /></figure><h4>Disk Management:</h4><p>If you are running application on the instance then logs will be generated for each and everything so this will incur the volume generally in the org they will take the backup or ZIP the log files.</p><p>If we need 10GB of storage we can attach to the instance but applications cannot use it; to use the storage we need to mount the volume and the storage we are adding is of Block storage we need to format it to (ext4, xfs)</p><pre>lsblk --&gt; list the block storgae attached to the instance.<br>fsdisk -l --&gt; provide the more info about the instance partition.</pre><p>command for the file system format:</p><pre>mkfs -t ext4 /dev/xvdf</pre><p>To mounting the volume:</p><pre>mount /dev/xvdf /mnt/demo-volume</pre><blockquote>That’s all for the Day, Please follow for more content</blockquote><blockquote>Thank you! Happy reading😊</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=43bce1606fe6" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[File Permissions in Linux — Day-03.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/file-permissions-in-linux-day-03-10df04f41452?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/10df04f41452</guid>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[file-permission]]></category>
            <category><![CDATA[aws]]></category>
            <category><![CDATA[devops]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Sat, 10 May 2025 18:30:52 GMT</pubDate>
            <atom:updated>2025-05-10T18:30:52.719Z</atom:updated>
            <content:encoded><![CDATA[<h3>File Permissions in Linux — Day-03.</h3><p>Hi! This is Tarun, welcome to today session we will discussing about the file permissions in Linux, and we will be implementing the small demo on the file permissions.</p><p>The File permissions is the most important aspect in every organization and used in day-to-day activities.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*mSr9fqOwKCIPce2Lrro0AQ.png" /></figure><p>As we discussed the topic about the user management in the yesterday session if the person deletes the certain file which was the core component in the Linux then the Linux system will get corrupted in order to stop this activity user management is helpful on top of this File permissions.</p><h4>File Permissions:</h4><p>Linux comes up with the basic files permissions to modify the file permissions we can use the command called CHMOD, CHOWN.</p><p>we will see the simple demo on the file permissions between the developer and tester.</p><p>We will create two users called developer and tester using the root user and we will create the simple shell script using the developer user and we will use file permissions with the root user and see that tester can access the shell script and perform the basic operations like read, write and execute.</p><p><strong>Creation of Developer user:</strong></p><p>We can create a developer user using the below command with root user only.</p><pre>adduser developer</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aB2KmUtUvAg7Vx4mjq2jpw.jpeg" /></figure><p><strong>Creation of Tester User:</strong></p><p>We can create a tester user using the below command with the root user only.</p><pre>adduser tester</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/944/1*5ZFggPzODnFV5GjZr6wf9Q.jpeg" /></figure><p>We can verify that user’s developer and tester are created in desired way using the below command.</p><pre>vim /etc/passwd</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/815/1*mfzzKkYTZ9QVsraaJt-jJw.jpeg" /></figure><p>we have created simple script using the developer user in the /tmp folder below was the script used for demo.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/681/1*bJzR07WGB_ZyydClsEAIzQ.jpeg" /></figure><p>we can check the file permissions using the <strong>ls -ltr </strong>and below was the file permissions having for the developers for this shell script.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*SVldHQr3SMxKvvU-p5C8lA.jpeg" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*Crx42qiCue1IxVkE" /></figure><ul><li><strong>-rw-rw-r — —</strong> This was the file permissions format which will be followed in the Linux system.</li><li><strong>-rw</strong> indicates that owner or the user which was having the read and write permissions.</li><li><strong>-rw</strong> indicates that group has specific permissions like read and write.</li><li><strong>r — —</strong> indicates that others user or external persons having the permissions to access the file.</li></ul><p>As from the permissions we can see that other users have only read permission so if we try to execute the shell script using the tester then we will face the error as permission denied.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/638/1*UJgX3CraDbTdRveNhOYckA.jpeg" /></figure><p>Now we will set the permissions using the root user with the chmod command as below for both the developer and tester and we will monitor how it was working.</p><pre>sudo chmod u= helloworld.sh</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/753/1*1h0WOJXe5IixIpaMCiXkTg.jpeg" /></figure><p>Now it shows that we have disabled all the permissions using the root user, even the developer was the owner.</p><p>We will enable all the permissions to the developer using the below command.</p><pre>sudo chmod u+rwx helloworld.sh</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/831/1*1ytqGTUIaQuOvE9LKgnpKg.jpeg" /></figure><p>In the same way we will set the permissions to the tester using the root user, first we will disable all the permissions to the tester user.</p><pre>sudo chmod o= helloworld.sh</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/760/1*l9QP6Q0CIBcCmGeVLaqITA.jpeg" /></figure><p>Now we will enable all the permissions using the root user to the tester.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/891/1*VFZ38h0NFqlIs0ybMVvkiQ.jpeg" /></figure><p>This is all about the file permissions in the Linux and we can use the numbering format as well.</p><p>Permissions are represented as:</p><ul><li>Read (r or 4) – View file contents.</li><li>Write (w or 2) – Modify file contents.</li><li>Execute (x or 1) – Run scripts or programs.</li></ul><pre>chmod 755 filename # User (rwx), Group (r-x), Others (r-x)<br>chmod 644 filename # User (rw-), Group (r - ), Others (r - )<br>chmod 700 filename # User (rwx), No access for others</pre><p>we can change the owner ship of the files, it was usefull whenever was changing the organization or leaving the org then we can use the chown command.</p><pre>chown newuser filename  # Change owner<br>chown newuser:newgroup filename  # Change owner and group<br>chown :newgroup filename  # Change only group</pre><pre>chown qe:qe test.sh</pre><blockquote>This was all about the file permissions in Linux please give it an try and let me know in the comments session.</blockquote><blockquote>Please follow for more content.</blockquote><blockquote>Thank you, Happy reading😊</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=10df04f41452" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[User Management in Linux — Day-02.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/user-management-in-linux-day-02-191cc9b04c92?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/191cc9b04c92</guid>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[user-management]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Sat, 03 May 2025 13:36:20 GMT</pubDate>
            <atom:updated>2025-05-03T13:36:20.252Z</atom:updated>
            <content:encoded><![CDATA[<h3>User Management in Linux — Day-02.</h3><p>Hi! This is Tarun, welcome to today session of Linux series today we will be dealing with the user management which was used in day-to-day Activities.</p><p>User Management is Nothing but when the developers in the team are using the Linux servers as root users this depicts that they have full control over everything by mistake if one developer deletes the /sbin folder from the Linux environment then the full Linux system will be corrupted.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*TBw8wJVzIeFg8wmJp7L-BA.png" /></figure><p>To Solve this issue as part of User Management we will create Users and Groups.</p><h4>Users:</h4><p>We will create a User using the command as below.</p><p>Tarun715 is the username we will be creating.</p><pre>sudo useradd Tarun715</pre><p>After creating the user whether user has created or not using the below command this command is basically, they will show the contents in the /etc/passwd folder.</p><pre>vim /etc/passwd</pre><p>If the user is there in the list, then we can say that user was created below highlighted one.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*kXSXYXaGvmI8oIX0xEbshg.jpeg" /></figure><p>create a password for the user which we have created type the command in the Linux terminal</p><pre>sudo passwd Tarun715</pre><p>To know the password for the created Tarun715 we need to provide the below command so that we can get the masked password.</p><pre>sudo cat /etc/shadow</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*eGWU0DKxeEZTe8hpj_xdHw.jpeg" /></figure><h4>If user forgot the password to decrypt the generated password it was not possible.</h4><p>If the User is leaving the organization, then we can simply use the below command.</p><pre>sudo userdel Tarun715</pre><h4>Difference between Useradd and adduser is Useradd doesn&#39;t create the /home directory in this case we can use adduser so that it will create the user and create the home directory as well.</h4><p>As the Organization policy to change the password for certain days then we can use the below command</p><pre>sudo chage -M 90 Tarun715</pre><p>Lock the ceratin user account.</p><pre>sudo passwd -l Tarun715</pre><p>Unlock the user account.</p><pre>sudo passwd -u Tarun715</pre><h4>Groups:</h4><p>In a Team a group of 250 Developers and 200 quality engineers and 10 Management people, if we have to provide access to the 250 developers one by one it will hectically task and time consuming so we will create a group for devoplers,qe,managment people so we will provide access to the group so that every member in that group will have the access.</p><h4>Creation of Group and Adding User to Group:</h4><p>Command for creation of Group</p><pre>sudo groupadd devops</pre><p>To see if the group has created or not using</p><pre>cat /etc/group</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/916/1*08Y8o5ERNMYuUQX87_qOtw.jpeg" /></figure><p>To add user to group:</p><pre>usermod -aG devops Tarun715</pre><p>To see if the user was added to the group using the below one.</p><pre>cat /etc/group</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/895/1*KwK39MabeWdlByTex8wtgA.jpeg" /></figure><h4>Summary: This was the simple demo on the user Managment performed in every Organization.</h4><blockquote>Thats all for the day, please like and follow for more content.</blockquote><blockquote>Thank you! Happy Reading😊</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=191cc9b04c92" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Fundamentals of Linux and Folder Structure.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/fundamentals-of-linux-and-folder-structure-05b1b6e821de?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/05b1b6e821de</guid>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[shell]]></category>
            <category><![CDATA[folder-structure]]></category>
            <category><![CDATA[linx]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Thu, 01 May 2025 19:34:43 GMT</pubDate>
            <atom:updated>2025-05-01T19:34:43.301Z</atom:updated>
            <content:encoded><![CDATA[<p>Hi, this is Tarun! Welcome to new series of Linux today we will be discussing about the Introduction to Linux and folder structure in Linux.</p><h4>First, we will see what Operating System is.</h4><p>It is the system software that manages computer hardware, software resources and provides common services for computer programs (It is intermediatory Between users and the computer Hardware)</p><p>Operating Manages the Hardware, and it also manages the CPU management and Memory management and device management.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/512/1*2rQHT08DJpgHxsPT6MylmQ.png" /></figure><p>To interact with OS windows operating system, provide the interactive GUI, whereas Linux OS provides Command Line Interface and intern Talk to the Hardware.</p><p>Example: For suppose if we write some program then the OS will allocate the memory, required things to execute the program.</p><h4>Why was Linux chosen over Windows in the Organizations?</h4><p>In the Organization over 90% was used is the Linux because of the advantages it was Opensource, and it has High Security.</p><h4>Linux Components:</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/233/1*eUG_-rGEuS-DYirrmR4CVw.png" /></figure><p>User Applications → Docker, Vim, Apache etc.</p><p>Part of the OS → Shell (zsh,bash,Fish etc.)</p><p>Part of the OS → System Libraries (libc, openssl , glibc etc)</p><p>Part of the OS → System Utilites (ls,grep,systemctl etc)</p><p>Core of the OS → Linux Kernal (Process, Memory, File system and Network)</p><p>Hardware (CPU, RAM, Disk, Network, Peripheral&#39;s)</p><h4>Linux Distributions:</h4><p>Linux distributions (also called <strong>distros</strong>) are operating systems based on the <strong>Linux kernel</strong> combined with various software packages. There are many Linux distros tailored for different use cases, such as desktop computing, servers, security, development, and more.</p><p>Here’s a quick overview of <strong>popular categories</strong> and some <strong>notable distributions</strong>:</p><h4>🌐 General-Purpose Desktop Distros</h4><ul><li><strong>Ubuntu</strong> — User-friendly, great for beginners, strong community support.</li><li><strong>Linux Mint</strong> — Based on Ubuntu, with a more traditional desktop feel (Cinnamon, MATE).</li><li><strong>Fedora</strong> — Cutting-edge software, backed by Red Hat; good for developers.</li><li><strong>Debian</strong> — Stable and well-tested, a base for many other distros including Ubuntu.</li><li><strong>openSUSE</strong> — Focuses on stability and configurability (via YaST tool).</li></ul><h3>Folder Structure:</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/800/1*HuW6vuNmRo2m7B4J4TmxDQ.png" /></figure><ol><li>/<strong>Sbin</strong> -&gt; system binaries for Administrator commands. these binary files which are helpful to manage the systems an Administrator.</li></ol><p>Eg: add the users, check CPU, check memory.</p><p>2. /<strong>lib</strong>: These libraries are used by the kernel to make the system calls to the hardware</p><p>3. <strong>boot</strong>: It helps in Booting the Linux system.</p><p>4. /<strong>bin</strong>: Basically, contains Essential binary executable (system commands) needs for basic system operation.</p><p>-&gt;for admin functions we will provide access for sbin</p><p>-&gt;for non admin functions we will provide access for bin</p><p>5. /usr: Unix System Resources.</p><p>It contains user utilities and applications -essentially the bulk of the os software the core system tools in /bin, /sbin, /lib</p><p>6. /srv: Service <br>/Srv directory in Linux stands for service and indented to hold data for services provided by the system such as web FTP or Server-related data.</p><p>7. /opt: Used for installing 3rd party applications.</p><p>-&gt; This makes it easier to Manage, update or remove these applications without effecting core system.</p><p>8. /mnt : Mounting a volume</p><p>In the Org Administrator had a task to procure the disk space then admin first procure the 30gb disk space and keep in the /mnt folder then they will add in the particular location.</p><p>9. /var: Used to store log files, store 3rd party libraries</p><p>10./home: In this directory Linux contains home directories where each user stores personal files, settings and data.</p><p>11./data: It was created by administrators to store persistent or application specific data.</p><p>12. /temp: it is stored for the temp purposes.</p><p>13. /run: it stores the run time processes of the application.</p><p>14. /etc: directory consists of configuration files of Linux system.</p><p>Conclusion: Today we have learnt about the fundamentals about the Linux and the folder structure in Linux.</p><p>Thats all for the day, please follow for more content.</p><p>Thank you! Happy reading😊</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=05b1b6e821de" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[AWS Load Balancers — Day 23.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/aws-load-balancers-day-23-c9d5c20166d7?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/c9d5c20166d7</guid>
            <category><![CDATA[could]]></category>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[aws]]></category>
            <category><![CDATA[aws-alb]]></category>
            <category><![CDATA[aws-nlb]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Mon, 21 Apr 2025 18:17:57 GMT</pubDate>
            <atom:updated>2025-04-21T18:17:57.032Z</atom:updated>
            <content:encoded><![CDATA[<h3>AWS Load Balancers — Day 23.</h3><p>Hi! This is Tarun, Welcome to Day 23 of AWS series today we will be discussing about the load Balancer and its various Types.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xKYfBhLG8ZT_VlERvU2BcQ.png" /></figure><ol><li>If we deploy an application on EC2 instance and it was accessed by the end users. In the initial stage the 3 users are accessing the application on the EC2 then there is No load on the EC2, suddenly if the load was increased on the EC2 then instance cannot handle the load so the Users accessing the application on the EC2 will experience severe downtime and slowness.</li></ol><p><strong>Soultion to the Above Scenario:</strong> We will create a 2 More EC2 instances in total of 3 EC2’s on top of these 3 instances we will place a Load balancer there are different types of load balancer based upon the our requirement we will use it so we will inform the user to access the application using the Load Balancer then the load balancer will route the traffic to the EC2 which we have created.</p><p>We have the flexibility to configure that how many request has to go to each instance.</p><p>If you are Trying to access some webpage on the internet the request will flow through internet and then it will reach to the requested server and gives back the response to the user and it travels through 7 Layers while travelling from user to requested Webpage.</p><h4>Traffic Flow in Different Type of Layers.</h4><ol><li>Whenever you try to access the webpage, you initiate the HTTP protocol trough Application Layer(L7)</li><li>From the Application Layer it will pass through L6(Presentation Layer) it will take care of Encoding of the request.</li><li>In L5(Session Layer) we will create a session for the layer it gives the information about when the session was created and everything between client and server.</li><li>The request will pass through L4(Transport Layer) where the request will break into small chunks and will transmit into the small packets where server will easily understand the packets and easily send the response.</li><li>L3(Network Layer) : Where small packets are created then these packets have to travel through multiple routers finally your request will reach trough Data center.</li><li>L2(Datalink Layer): Before the request reaches the server, it will pass through datalink layer where request go to a switch from their it will pass through L1.</li><li>L1(Physical Layer): The request will Comes to L1 it is the Bottom Layer which is Physical Layer which is physical and electric Layer representation of the system it consists of Various Network Components such as Power Plugs, Receiver Cables Etc. This layer sends data bits from one device like a computer to another Device.</li></ol><h4>Comparision of ALB VS NLB VS GWLB:</h4><h4>Application Load Balancer: This is also called L7 Load Balancer.</h4><p>When a User Initiates the HTTPS Request it interprets the request based upon the Host,Path,Domain then we can choose ALB.</p><p>If we are accessing the Payment service on some website, then it will route it to the Payment service.</p><p>If we are accessing the Transaction, then it will route it to the Transaction service.</p><p>The main advantage of ALB is it interprets the HTTP request.</p><p>It was costly and it was slow because it was analyzing the request and forwarding the request trough servers.</p><h4>Network Load Balancer: This is also called L4 Load Balancer</h4><p>With this Load Balancer HTTP Encryption can&#39;t be performed here.</p><p>It was less costly and has the less latency.</p><p>It was More used in Game servers in Game Servers, YouTube Live streaming Platforms.</p><p>It will Perform Routing on TCP/UDP packets</p><p>It will also have the feature sticky Session (If one request is sent to one server then all the requests will sent to the same server)</p><h4>Gateway Load Balancer</h4><p>It is useful when dealing with VPN kind of applications and firewall applications.</p><p>When we are dealing with VPN and Firewall applications then the traffic has to be secure the packets need to be encrypted and it offers more security.</p><blockquote>Thats all for the Day, please like and follow for such more content.</blockquote><blockquote>Thank you! Happy reaching😊</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c9d5c20166d7" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[AWS Config — Day-22.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/aws-config-day-22-f5c3eba17f97?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/f5c3eba17f97</guid>
            <category><![CDATA[aws]]></category>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[aws-lambda]]></category>
            <category><![CDATA[ec2]]></category>
            <category><![CDATA[aws-config]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Sat, 19 Apr 2025 18:24:21 GMT</pubDate>
            <atom:updated>2025-04-19T18:24:21.406Z</atom:updated>
            <content:encoded><![CDATA[<h3>AWS Config — Day-22.</h3><p>Hi! This is Tarun, Welcome to day 22 of AWS Series today we will brief about an AWS service called Config and we will implement a demo which will invoke Custom Lambda using the AWS Config.</p><h4><strong>What is AWS Config?</strong></h4><p><strong>AWS Config</strong> is a <strong>service that continuously monitors and records your AWS resource configurations</strong> — and helps you <strong>audit, assess compliance, and troubleshoot</strong> configuration changes.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*G0JmioMS9S6L5C-w3xli_g.png" /></figure><p>Example: For suppose in Organization while creation of EC2 Monitoring option must be enabled then it was complaint resource. If it was not followed and not checked the monitoring option, then it falls under non complaint resource.</p><p>There is another case where s3 access to be private, if it is public then it is noncompliance issue. We need to integrate AWS Config rules with the lambda function, and we need to write lambda function for the resource.</p><p>Based on the Organization polices and standards we have to set the Configuration rules for their services</p><p>This was Related to the Security.</p><p><strong><em>Features</em></strong>:</p><ul><li><em>Continuous Configuration Recording</em></li><li><em>Configuration History</em></li><li><em>Resource Inventory</em></li><li><em>Compliance Rules (Managed + Custom)</em></li><li><em>Compliance Status &amp; Alerts</em></li><li><em>Periodic &amp; Event-Driven Evaluations</em></li><li><em>Integration with AWS Lambda</em></li></ul><h4>Demo: AWS Config to Monitor AWS EC2 with Custom Lambda.</h4><p>We will Monitor the AWS Ec2 instance based on the <strong>Detailed Monitoring option</strong> as it was Mandatory while creation on EC2 to know the certain parameters like CPU Utilization etc.</p><p><strong>Aim</strong>: First, we need to Uncheck the Detailed Monitoring option and using the custom lambda function and config rule it will show the non-complaint after that we will check the Detailed Monitoring Option then it will automatically trigger the Lambda Function using AWS Config.</p><h4>Note: We are Monitoring for only one service that is EC2 and only one option Detailed Monitoring.</h4><h4>Step1: First, we need to set up the configuration with the settings below.</h4><ol><li>We need to select customizable overrides and recording as continuous whenever there is an update or change in the resource it will push the notification.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/975/1*AEr05ZqZnNBMt8NyjH_iVA.png" /></figure><p>2. We need to provide an existing IAM role or if you want to create a new one, we can do that as well and for storing the config logs, we can either create the s3 bucket or provide the old one.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/975/1*P4S1ELxNwrv_7B9faeDCRA.png" /></figure><h4>Step2: Setting Up the Config Rule.</h4><p>This is the dashboard we will see after setting up the config.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/975/1*I3814z7PR-EGUqBgMFKkBg.png" /></figure><p>We can setup the custom rule using the rule option and add the new rule.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/975/1*BGg19ig2n18gpMKuzsODQA.png" /></figure><ol><li>We need to select the custom rule using the lambda function.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/975/1*LLYNr2hYVHwaqFW-TdxaNQ.png" /></figure><p>2. Before configuring the rule we need to create a lambda function, and we need to provide the function ARN.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*QNPjGmZppNwk2I4f6cyQLQ.png" /></figure><h4>Lambda creation:</h4><ol><li>First, we need to select the <strong>Author from scratch</strong> because we are setting up the lambda function from the Scratch.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/975/1*e83tQpo3l2JJR2H02qh84Q.png" /></figure><p>2. For the Execution Role, we can create a new role to avoid the confusion.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/975/1*Ju86v2VSAzTYQZTyF8o3Qg.png" /></figure><p>3. Provide the trigger type as whenever any change made to the ec2 it will trigger the lambda function.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/628/1*CvtI3JvnaeqgGey-ToWe-Q.png" /></figure><p>This was the config rule we have setup to monitor the resources which are complaint and noncompliance</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*jBSX088FeM-iYidi4io1jA.png" /></figure><p><strong>While creation of config you will face the below error so use the below script to bypass the error</strong></p><p>Error: Before you add this rule, update your IAM permissions to allow the lambda:AddPermission action.</p><p>Function Name you need to provide as your Lambda function which you have created in before setup.</p><pre>Add Lambda:addpermission :<br>aws lambda add-permission \<br> - function-name InstanceTypeCheck \<br> - statement-id &quot;AddConfigPermission&quot; \<br> - action lambda:InvokeFunction \<br> - principal config.amazonaws.com</pre><p>Step 3: Before Going to the Execution, we need to grant the policies to the Lambda Role as below:</p><p>To know more about the IAM roles and policies please follow the below link.</p><p><a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html">Policies and permissions in AWS Identity and Access Management</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*yV4_Zy_cB5zZPrlsQXIPRQ.png" /></figure><p>This was the Custom Lambda Python code:</p><pre>import boto3<br>import json<br><br>def lambda_handler(event, context):<br><br>    # Get the specific EC2 instance.<br>    ec2_client = boto3.client(&#39;ec2&#39;)<br>    <br>    # Assume compliant by default<br>    compliance_status = &quot;COMPLIANT&quot;  <br>    <br>    # Extract the configuration item from the invokingEvent<br>    config = json.loads(event[&#39;invokingEvent&#39;])<br>    <br>    configuration_item = config[&quot;configurationItem&quot;]<br>    <br>    # Extract the instanceId<br>    instance_id = configuration_item[&#39;configuration&#39;][&#39;instanceId&#39;]<br>    <br>    # Get complete Instance details<br>    instance = ec2_client.describe_instances(InstanceIds=[instance_id])[&#39;Reservations&#39;][0][&#39;Instances&#39;][0]<br>    <br>    # Check if the specific EC2 instance has Cloud Trail logging enabled.<br>    <br>    if not instance[&#39;Monitoring&#39;][&#39;State&#39;] == &quot;enabled&quot;:<br>        compliance_status = &quot;NON_COMPLIANT&quot;<br><br>    evaluation = {<br>        &#39;ComplianceResourceType&#39;: &#39;AWS::EC2::Instance&#39;,<br>        &#39;ComplianceResourceId&#39;: instance_id,<br>        &#39;ComplianceType&#39;: compliance_status,<br>        &#39;Annotation&#39;: &#39;Detailed monitoring is not enabled.&#39;,<br>        &#39;OrderingTimestamp&#39;: config[&#39;notificationCreationTime&#39;]<br>    }<br>    <br>    config_client = boto3.client(&#39;config&#39;)<br>    <br>    response = config_client.put_evaluations(<br>        Evaluations=[evaluation],<br>        ResultToken=event[&#39;resultToken&#39;]<br>    )  <br>    <br>    return response</pre><p>As the Lambda Function default time was 3 sec, we can set the Execution Time as 10 Sec in the Configuration Tab.</p><p>If you receive any error that invoking event was missing, then you need run the below shell script on your console.</p><pre>aws lambda add-permission \<br>  --function-name tarswe_lambda \<br>  --statement-id AddConfigPermission \<br>  --action lambda:InvokeFunction \<br>  --principal config.amazonaws.com \<br>  --source-arn arn:aws:config:us-east-1:196771543217:config-rule/config-rule-0abc123def456ghi7 \<br>  --region us-east-1</pre><p>For Function name replace without lambda function and source Arn is the Config rule Arn which you can find in the Config Rule.</p><h4>Step 4: Testing</h4><p>After Setting all the Configuration and Custom Lambda function and deploying the code we have to do the below steps.</p><p>I. We have an ec2 instance which was created, and we have not enabled the detailed monitoring option.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*3r3579sgpupRkjUH9D4aTg.png" /></figure><p>This shows that the resource which we are using is non complaint, this means that the config rule which we have created will invoke the custom lambda and check the Parameters which was provided in the Lambda function.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*rPAXmAooPwTwIbFEsc16vw.png" /></figure><p>II. Now we will Enable the detailed Monitoring option, as we have done the change on the EC2 which is the resource we have provided to monitor then it will automatically invoke the Lambda function.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*krW81hCA8pf0m773VTBPtQ.png" /></figure><p>Wait for some time and check the status on the Config rule tab and it shows as.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/863/1*esLJDhCBUaX3LIjuff62Jw.png" /></figure><p>Now we can check the Full log details on the AWS service called <strong>CloudWatch</strong> with latest details as below.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*ZzHJrkQRFaa1etzJp_mdLA.png" /></figure><blockquote>Thats all for the Day, please follow for more content.</blockquote><blockquote>Thank you!!! Happy Reading😊</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f5c3eba17f97" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Secret Management On AWS- Day 21.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/secret-management-on-aws-day-21-ff845b96810f?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/ff845b96810f</guid>
            <category><![CDATA[aws-secrets-manager]]></category>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[aws]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Tue, 15 Apr 2025 17:42:52 GMT</pubDate>
            <atom:updated>2025-04-15T17:42:52.210Z</atom:updated>
            <content:encoded><![CDATA[<p>Hi! This is Tarun, Welcome to Day-21 of AWS Series today we will be discussing on how the secure information was stored on the AWS cloud.</p><p>If we are using Docker and other CICD Tools, there is lot of credentials and other information stored and used in the continuous process which are most important and need to be secured.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*WNQu9IcICyjACCSOOsYQCA.png" /></figure><p>If this information is leaked, then someone will access the information and login to the tools and delete the images, and it will impact the organization.</p><p>Types of Management on AWS:</p><ol><li><strong>System Manager</strong>: It was easily accessible with the simply granting the IAM role.</li><li><strong>Secrets Manager:</strong> The main purpose this was introduced by the AWS was we can ask the secrets manager to update the credentials based upon the time we set in the Organization.</li></ol><p>==&gt; The main advantage of the secrets manager was the chance of secure information being leaked is very less.</p><p>==&gt; Whenever we are using the Databases, this was most suitable way.</p><p>==&gt; Whenever we implemented the CICD on AWS we have pushed the images on to the docker or AWS ECR then we need Docker URL, Docker Username, Docker Password.</p><p>==&gt; So, with the combination of system Manager and secrets Manger, we can use it in cost effective manner, we used system manager for docker registry URL and Docker Username, Secrets Manager for the Docker password.</p><h4>Most Widely used Secrets Manger:</h4><p>Hashicrop Vault: It was the centralized solution when we were using the Mult iCloud we must Hashicrop Vault.</p><p>This is not the AWS managed service, it was the Hashicrop open source platform.</p><p>When we are dedicated to only AWS then we must go to the above Solutions which are provided by the AWS.</p><blockquote>Thats all for the Day, please follow for more cloud related Content.</blockquote><blockquote>Thank You!!! Happy Reading😊</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ff845b96810f" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[AWS EKS Project Implementation Day-20.]]></title>
            <link>https://medium.com/@tarunvenkatsaikumar/aws-eks-project-implementation-day-20-dec4c4cd8e52?source=rss-ee73412b313d------2</link>
            <guid isPermaLink="false">https://medium.com/p/dec4c4cd8e52</guid>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[aws-eks]]></category>
            <category><![CDATA[kubernetes]]></category>
            <category><![CDATA[aws]]></category>
            <dc:creator><![CDATA[Tarunvenkatsaikumar]]></dc:creator>
            <pubDate>Mon, 14 Apr 2025 18:20:46 GMT</pubDate>
            <atom:updated>2025-04-14T18:20:46.238Z</atom:updated>
            <content:encoded><![CDATA[<p>Hi! This is Tarun, welcome to Day-20 of AWS series in this session we will be Deploying the 2048 game using the AWS Elastic Kubernetes Service with the Ingress Controller.</p><p>EKS is an AWS managed Kubernetes offering.</p><p>The Architecture of EKS is same as the Original Kubernetes cluster it has Master node and worker node.</p><p>Master node consists of API server, ETCD, scheduler, CCM, controller these are user facing means the user will directly talk to the control plane components.</p><p>Whenever the above-mentioned components are down it will cause a severe issue to debug all the error issues and fix the work becomes hectic.</p><p>To resolve this issue AWS came up with the solution called EKS — where it was managed control plane only, where all the components in the control plane will be managed by the AWS.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*dOin145MyYPLcXYUyTxYgQ.png" /></figure><h4>To Manage the worker node AWS will provides us the 2 options like to deploy the application we can use:</h4><p>I) EC2</p><p>II) Fargate — It was AWS serverless compute where it was specifically for running the containers.</p><p><strong>We can use the k8s on AWS using 2 ways.</strong></p><p>i) Using EC2 and deploying everything on our own.</p><p>ii) Using the EKS and Managed services by the AWS.</p><p>We are doing the demo to create the cluster on aws and application must be accessed by the outside world.</p><p>We have used the ingress controller that manages external access to services running in a Kubernetes cluster.</p><p>Where the user wants to access the application, it will be accessed through the Application load balancer which was placed in the public subnet.</p><p>We will create a service in which the pod will be deployed we can use <strong>clusterIP Mode, nodeport Mode, loadbalancer Mode.</strong></p><p>Always the applications are deployed in the private subnet.</p><p>We will use the ingress controller with either clusertip or nodeport mode, basically the ingress used to allow access to the application inside the eks cluster.</p><h4>How can the user access the ingress controller?</h4><p>we will place the load balancer in the public subnet then user will talk to the load balancer, and it will route the traffic to the ingress controller.</p><p><strong>Function of Ingress Controller</strong>: Whenever we deploy the ALB ingress controller it will check for the ingress resource whenever it was detected it will create an ALB then user can talk to the application load balancer then request will go to the Application.</p><p><strong>Config of ingress controller</strong>: As we have seen the function of controller it will create a application load balancer and user will talk to the ALB and the request will come to the POD which was deployed in the cluster trough service (nodeport, Clusterip, Note : load balancer service was very costly).</p><h4>Demo: Deploying the 2048 game using the Elastic Kubernetes Service with the Ingress.</h4><p><strong>To perform the demo, we need to have 3 prerequites on our Terminal</strong></p><ol><li>Kubectl — Below is the installation link to install Kubectl based upon the operating system.</li></ol><p><a href="https://kubernetes.io/docs/tasks/tools/">Install Tools</a></p><p>2. EKSCTL — Below is the installation link</p><p><a href="https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html">Set up kubectl and eksctl</a></p><p>3. AWS CLI — To connect with aws CLI (installation of aws cli we have seen in the previous sessions)</p><p><a href="https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html">Installing or updating to the latest version of the AWS CLI</a></p><p><strong>After setting up the prerequisites we need to create the cluster.</strong></p><p><strong>Step 1- Cluster creation:</strong></p><p>If we use the AWS UI manually, we need to provide a lot of permissions and setting up for the EKS cluster, so we have used the below command to create the EKS cluster.</p><pre>eksctl create cluster - name eks-app-deploy - region us-east-1 - fargate</pre><p>Once the cluster was ready, we will see the below output, everything which was needed for the cluster like private subnet, public subnets etc,will be created by AWS EKS.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*FLigULcGNteyEMQ14l0X6A.png" /></figure><p>Now you can see the cluster in the aws ui as well.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*30HCq0sj250j0Q1iv2jNwA.png" /></figure><p>In order to talk to the EKS cluster which we have created on the before step we have to configure cluster using the below command.</p><pre>aws eks update-kubeconfig --name eks-app-deploy --region us-east-1</pre><p>Once it was configured we can see the below output.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/866/1*DV5pjh2z1UEhGLhyiJEwxw.png" /></figure><p><strong>Now we will create fargate profile using the below command — we need to create fargate profiles because everything was managed by the AWS it was an another option of EC2.</strong></p><pre>Using the below command we can do that.<br>eksctl create fargateprofile \<br>    --cluster eks-app-deploy \<br>    --region us-east-1 \<br>    --name alb-sample-app \<br>--namespace game-2048</pre><p>We can use the default namespace as well, but we have used the game-2048 name space.</p><p>These will create fargate profiles.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*p4ZP5QIGF5v9yhIgCd0h9w.png" /></figure><p><strong>We will deploy the deployment, service and ingress using the below command.</strong></p><p>The Yaml file is an opensource we can use it based upon our requirement.</p><pre>kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.5.4/docs/examples/2048/2048_full.yaml</pre><p>We are just creating the ingress, but we need to add the ingress controllers.</p><p>We will see the below output as the resources are created.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*Z_4mKAM2pIsK1E1gV2MDpg.png" /></figure><p>Once the resources are created, we can verify using the commands below.</p><pre>Kubectl get pods -n game-2048</pre><p>We can see that the container are running.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/866/1*jxrIQ6iY7oGidYXvEM7nOg.png" /></figure><p>We can check the status of the service as well as by using the below command.</p><pre>Kubectl get svc -n game-2048</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*RSiwdaBK4h52YNGNX_aOFw.png" /></figure><p>Here in the service, we have configured <strong>node port mode,</strong> anyone who has access to the private subnet can access the application, but we need to access the external-IP address.</p><p>We can get the status of the ingress using the bellow command.</p><pre>kubectl get ingress -n game-2048</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*_pVgwLtKlt8A1dPmldXbFA.png" /></figure><p>Here we have used ALB ingress controller and there is no address on the ingress resource to access the application but the outside world, so we have to create the ingress controller now.</p><p><strong>Before creating the ingress controller, we have to do some prerequisite steps.</strong></p><ol><li>Creation of IAM OIDC provider — This create an IAM users where it will access some resources on the aws.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*1UlMPIj0CIdHHLx12cjp2w.png" /></figure><p>Command:</p><pre>eksctl utils associate-iam-oidc-provider - cluster $cluster_name - approve</pre><p>2. Before creation of ingress we need to grant iam policy as below.</p><p>Download the iam policy,</p><pre>curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.11.0/docs/install/iam_policy.json</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/864/1*HrB1ZR1LRjpSlwgGiS8d5Q.png" /></figure><p>Creation of IAM.</p><pre>aws iam create-policy \<br>    --policy-name AWSLoadBalancerControllerIAMPolicy \<br>--policy-document file://iam_policy.json</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*iwRibBwe4EM2me0ggonf_g.png" /></figure><p>We need to create the role as well.</p><pre>eksctl create iamserviceaccount \<br> - cluster=eks-app-deploy \<br> - namespace=kube-system \<br> - name=aws-load-balancer-controller \<br> - role-name AmazonEKSLoadBalancerControllerRole \<br> - attach-policy-arn=arn:aws:iam::196771543217:policy/AWSLoadBalancerControllerIAMPolicy \<br> - approve</pre><p>Follow the below steps to deploy the ALB controller.</p><pre>helm repo add eks https://aws.github.io/eks-charts</pre><pre>helm repo update eks</pre><p>Helm Install.</p><pre>helm install aws-load-balancer-controller eks/aws-load-balancer-controller -n kube-system \<br> - set clusterName=eks-app-deploy\<br> - set serviceAccount.create=false \<br> - set serviceAccount.name=aws-load-balancer-controller \<br> - set region=us-east-1\<br> - set vpcId=vpc-01165c163384303ca</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*Pc3fGw1j_2en9eZSoKI-IA.png" /></figure><p>We can verify that pods status using the below command.</p><pre>kubectl get deploy -n kube-system</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/866/1*54566MT7UdKxA9YQ7NZmYw.png" /></figure><p>Now you can see that the address is attached to the ingress controller with the application load balancer using the below command.</p><pre>kubectl get ingress -n game-2048</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/866/1*k2Gyr8jwOehYeAk9mecljQ.png" /></figure><p>An ALB will be created we can see at the AWS UI.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*yTYpQk48ThI7q8JeIpxrTw.png" /></figure><p>Yahoo🥳 💥we have successfully deployed the 2048 application, and it can be accessed by the external users.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/865/1*XGtCw07ZwePsgi90vDgDew.png" /></figure><p>Disclaimer: Please delete the EKS cluster after the demo it will cost you in the free AWS account.</p><blockquote>Thats all for the day, please hit the clap button if you like the content.</blockquote><blockquote>Thank you!!! Happy Reading😊</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=dec4c4cd8e52" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>