<?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>Forem: Shamim Ansari</title>
    <description>The latest articles on Forem by Shamim Ansari (@msfaizi).</description>
    <link>https://forem.com/msfaizi</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%2F1146417%2Fd1d09f46-0cf7-427b-813d-d216f8d471e1.jpg</url>
      <title>Forem: Shamim Ansari</title>
      <link>https://forem.com/msfaizi</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/msfaizi"/>
    <language>en</language>
    <item>
      <title>Optimizing Your AWS EC2 Windows Instance: A Comprehensive Guide to Extending Root Volumes and Adding Extra Storage</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Sun, 24 Dec 2023 19:09:49 +0000</pubDate>
      <link>https://forem.com/msfaizi/optimizing-your-aws-ec2-windows-instance-a-comprehensive-guide-to-extending-root-volumes-and-adding-extra-storage-2hc7</link>
      <guid>https://forem.com/msfaizi/optimizing-your-aws-ec2-windows-instance-a-comprehensive-guide-to-extending-root-volumes-and-adding-extra-storage-2hc7</guid>
      <description>&lt;h2&gt;
  
  
  Extending the root volume of an EC2 Windows instance and attaching an additional volume is a multi-step process. Here's a step-by-step guide to achieve this:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Launch an EC2 Windows Instance&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Log in to the AWS Management Console.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2y20q15fonsmosx6dkbr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2y20q15fonsmosx6dkbr.png" alt="aws console"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Navigate to the EC2 Dashboard.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click "Launch Instance" to create a new EC2 instance.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose a Windows AMI (Amazon Machine Image) and select an instance type.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the "Add Storage" section, configure the root volume size according to your requirements.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Complete the instance launch wizard, including security group and key pair settings.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Launch the instance.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0uwle4057y0qk35pblli.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0uwle4057y0qk35pblli.png" alt="ec2"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Connect to the EC2 Instance&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Once the instance is running, right-click it in the EC2 Dashboard, and select "Connect."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fid9xelhqsq57mmg42xss.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fid9xelhqsq57mmg42xss.png" alt="ec2-connect"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Follow the instructions to connect to the instance using Remote Desktop Protocol (RDP).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq96u7lsec5d6ya5a08q3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq96u7lsec5d6ya5a08q3.png" alt="remote-server-desktop"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Extend the Root Volume&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Inside the EC2 Windows instance, open the "Disk Management" utility under Computer Management.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxfif7ih2ob16nju8hkph.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxfif7ih2ob16nju8hkph.png" alt="Disk Management"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Locate the root volume, which is typically labeled as "C:." and you can see current storage as 30 GB (We will try to extend this volume)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvdegd8vuo3x4t4lxq4a4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvdegd8vuo3x4t4lxq4a4.png" alt="drive C"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to AWS console -&amp;gt; Volume -&amp;gt; Select volume -&amp;gt; Click on action -&amp;gt; 'Modify Volume' and change it to 40 GB&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsqsq3j00707312onz2ap.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsqsq3j00707312onz2ap.png" alt="volume"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to EC2 Windows instance, open the "Disk Management" utility under Computer Management.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Note&lt;/em&gt;: You can see in the snip as total 40 GB online out of which 10 GB Unallocated&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff4byml2y69pj2gjcp258.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff4byml2y69pj2gjcp258.png" alt="disk"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Right-click on disk and choose 'Extend Volume'&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Validation:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can see extended volume in below snip&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fenrbutmzufwl7ulatsru.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fenrbutmzufwl7ulatsru.png" alt="extended disk"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsi2oefg4nzlvwwkgdih7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsi2oefg4nzlvwwkgdih7.png" alt="extended disk2"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Attach an Additional EBS Volume&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the AWS Console, navigate to the EC2 Dashboard and click on "Volumes" in the left navigation pane.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5ppsfxw1mo42wxuhx6p8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5ppsfxw1mo42wxuhx6p8.png" alt="volume"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Create a new EBS volume with the desired size (e.g., 30GB). Note the availability zone.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Back in the EC2 Dashboard, stop the Windows instance to attach the new volume.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frngkpfv85rhw509sx45g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frngkpfv85rhw509sx45g.png" alt="stopped instance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Go to Volume and select it and choose 'Attache Volume' from 'Action'&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select instance ID &amp;amp; Create Volume&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Back in the EC2 Dashboard&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Start the instance.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Connect to the instance using RDP.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Open the "Disk Management" utility.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You will see the new volume listed. Initialize it and format it as needed.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0kpfouom00uqacvcg3s1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0kpfouom00uqacvcg3s1.png" alt="extra volume"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Validate the Configuration&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In Windows Explorer, verify that the root volume (C:) has been extended with the additional space.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmch556keqdj9jlhzaqm6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmch556keqdj9jlhzaqm6.png" alt="file explore"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Create and modify files on the extra volume to ensure it is functioning correctly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You can also check the disk sizes and available space in the "File Explorer" or use the "Get-Volume" PowerShell command.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Big big congratulation for completing this hands on LAB&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Don't forget to do cleanup of all these AWS services which can lead to extra charges&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/" rel="noopener noreferrer"&gt;Linkedin&lt;/a&gt; | &lt;a href="https://twitter.com/shamim_faizi786" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt; for more such contents and Check out my &lt;a href="https://www.fiverr.com/s/WGVYqE" rel="noopener noreferrer"&gt;Services&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>opensource</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Demystifying Cloud Computing: Exploring the Core Pillars of Private and Public Clouds, IaaS, PaaS, and SaaS</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Sat, 02 Dec 2023 18:18:24 +0000</pubDate>
      <link>https://forem.com/msfaizi/demystifying-cloud-computing-exploring-the-core-pillars-of-private-and-public-clouds-iaas-paas-and-saas-n8c</link>
      <guid>https://forem.com/msfaizi/demystifying-cloud-computing-exploring-the-core-pillars-of-private-and-public-clouds-iaas-paas-and-saas-n8c</guid>
      <description>&lt;h2&gt;
  
  
  The fundamental pillars of cloud computing include various deployment models and service models. Let's explore each of these pillars:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Private Cloud:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ato2bd6vjsfmf6i537m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2ato2bd6vjsfmf6i537m.png" alt="Private Cloud"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A private cloud is a cloud environment exclusively used by a single organization.&lt;/li&gt;
&lt;li&gt;It is typically hosted on the organization's own infrastructure or in a dedicated environment provided by a cloud service provider.&lt;/li&gt;
&lt;li&gt;Private clouds offer enhanced security and control, making them suitable for organizations with strict data privacy and compliance requirements.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Public Cloud:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc0qkxgjg0u7qwa86nxpf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc0qkxgjg0u7qwa86nxpf.png" alt="Public Cloud"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A public cloud is a cloud infrastructure that is shared by multiple organizations and is owned and operated by a cloud service provider.&lt;/li&gt;
&lt;li&gt;It offers on-demand resources and services to the public over the internet.&lt;/li&gt;
&lt;li&gt;Public clouds are highly scalable, cost-effective, and suitable for a wide range of applications and workloads.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Private Cloud vs. Public Cloud:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffpbe38jrikub5luotdzl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffpbe38jrikub5luotdzl.png" alt="Private Cloud vs. Public Cloud"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;This pillar explores the differences and trade-offs between private and public clouds, helping organizations choose the right cloud deployment model for their specific needs.&lt;/li&gt;
&lt;li&gt;Considerations include factors like control, security, cost, scalability, and management.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. Brief Introduction of Infrastructure as a Service (IaaS):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw0hbnzr23ucbkhmsiii5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw0hbnzr23ucbkhmsiii5.png" alt="IaaS"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;IaaS is one of the three primary cloud service models and provides virtualized computing resources over the internet.
With IaaS, organizations can rent virtual machines, storage, and networking resources, allowing them to set up and manage their own infrastructure.&lt;/li&gt;
&lt;li&gt;Users have control over the OS and software stack installed on the virtual machines.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;5. Brief Introduction of Platform as a Service (PaaS):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzy0qjpavhdj2l58eecoz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzy0qjpavhdj2l58eecoz.png" alt="PaaS"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;PaaS is a cloud service model that abstracts away the underlying infrastructure, focusing on providing a platform for developing, deploying, and managing applications.&lt;/li&gt;
&lt;li&gt;Developers can build and deploy applications without worrying about managing the underlying infrastructure.&lt;/li&gt;
&lt;li&gt;PaaS offerings often include development tools, databases, and application hosting environments.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;6. Brief Introduction of Software as a Service (SaaS):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsxq7wi0j60ioudbn0ak9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsxq7wi0j60ioudbn0ak9.png" alt="SaaS"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SaaS is a cloud service model where software applications are hosted and provided to users over the internet on a subscription basis.&lt;/li&gt;
&lt;li&gt;Users access SaaS applications through web browsers without the need for local installation.&lt;/li&gt;
&lt;li&gt;Common examples of SaaS applications include email services, customer relationship management (CRM) software, and productivity tools like Google Workspace and Microsoft 365.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/" rel="noopener noreferrer"&gt;Linkedin&lt;/a&gt; | &lt;a href="https://twitter.com/shamim_faizi786" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt; for more such contents&lt;/p&gt;

</description>
      <category>cloud</category>
      <category>aws</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Building a Globally Connected Network: A Step-by-Step Guide to VPCs, Internet Gateway, and VPC Peering in AWS</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Thu, 09 Nov 2023 15:28:57 +0000</pubDate>
      <link>https://forem.com/msfaizi/building-a-globally-connected-network-a-step-by-step-guide-to-vpcs-internet-gateway-and-vpc-peering-in-aws-510p</link>
      <guid>https://forem.com/msfaizi/building-a-globally-connected-network-a-step-by-step-guide-to-vpcs-internet-gateway-and-vpc-peering-in-aws-510p</guid>
      <description>&lt;h2&gt;
  
  
  Creating a Virtual Private Cloud (VPC) in AWS and setting up VPC peering between two regions can be a bit complex for beginners, but I'll provide a step-by-step guide to help you through the process. VPC peering allows you to connect VPCs in different regions as if they were on the same network. Here's a simplified guide:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Log in to the AWS Console&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the AWS Management Console (&lt;a href="https://aws.amazon.com/"&gt;https://aws.amazon.com/&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Sign in with your AWS account credentials.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Choose the First Region&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the AWS Management Console, make sure you're in the region where you want to create the first VPC.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Create the First VPC and Internet Gateway&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Go to the VPC Dashboard:&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the AWS Management Console, navigate to the "Services" menu.&lt;/li&gt;
&lt;li&gt;Select "VPC" under the "Networking &amp;amp; Content Delivery" section.&lt;/li&gt;
&lt;li&gt;Click "Your VPCs" in the left-hand navigation pane.&lt;/li&gt;
&lt;li&gt;Click "Create VPC."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Fill out the form for the first VPC:&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;VPC Name: Give your VPC a name (e.g., MyVPC).&lt;/li&gt;
&lt;li&gt;IPv4 CIDR Block: Define the IP address range for your VPC (e.g., 10.0.0.0/16).&lt;/li&gt;
&lt;li&gt;IPv6 CIDR Block: You can leave this blank for now.&lt;/li&gt;
&lt;li&gt;Tenancy: Choose "Default."&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click "Create VPC."&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the VPC Dashboard, go to "Internet Gateways."&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click "Create Internet Gateway" and give it a name (e.g., MyIGW).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the Internet Gateway you just created and click "Attach to VPC." Choose the VPC you created.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Create Subnets&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;After creating the VPC, go to "Subnets" in the VPC Dashboard.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click "Create Subnet."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Fill out the form for each subnet:&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Name tag: Give it a name (e.g., Subnet-1).&lt;/li&gt;
&lt;li&gt;VPC: Choose the VPC you created.&lt;/li&gt;
&lt;li&gt;Availability Zone: Choose an availability zone.&lt;/li&gt;
&lt;li&gt;IPv4 CIDR Block: Define the subnet's IP address range (e.g., 10.0.1.0/24).&lt;/li&gt;
&lt;li&gt;Repeat this process for each subnet you want to create.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Set Up Route Tables and Internet Gateway&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Go to "Route Tables" in the VPC Dashboard.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Create a route table for each subnet and associate it with the appropriate VPC.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Define the routes for each route table. For the public subnet, add a route to the Internet Gateway.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 6: Choose the Second Region&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;In the AWS Management Console, change your region to the one where you want to create the second VPC.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 7: Create the Second VPC and Internet Gateway&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Note:&lt;/em&gt;&lt;/strong&gt; Follow the same steps as in "Step 3" to create a VPC in the second region.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;In the VPC Dashboard, go to "Internet Gateways."&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Click "Create Internet Gateway" and give it a name (e.g., MyIGW).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the Internet Gateway you just created and click "Attach to VPC." Choose the VPC from the second region.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 8: Set Up VPC Peering&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;In the second region, go to "VPC Peering Connections" in the VPC Dashboard.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click "Create Peering Connection."&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Fill out the form:&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Peering Connection Name: Give it a name (e.g., MyPeeringConnection).&lt;/li&gt;
&lt;li&gt;Your VPC: Choose the VPC from the second region.&lt;/li&gt;
&lt;li&gt;Peer VPC: Choose the VPC from the first region.&lt;/li&gt;
&lt;li&gt;Click "Create Peering Connection."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 9: Accept Peering Request&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;In the second region, select the peering connection and click "Actions."&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose "Accept Request."&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 10: Configure Route Tables for Peering&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In both regions, update your route tables to allow traffic from the peered VPC.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;That's it! You've created VPCs in two different regions, set up VPC peering, and configured an Internet Gateway for the public subnet to enable internet access from the VPCs. Be mindful of security group and network ACL rules to control the traffic.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/"&gt;Linkedin&lt;/a&gt; | &lt;a href="https://twitter.com/shamim_faizi786"&gt;Twitter&lt;/a&gt; for more such contents&lt;/p&gt;

</description>
      <category>aws</category>
      <category>beginners</category>
      <category>opensource</category>
      <category>devops</category>
    </item>
    <item>
      <title>AWS VPC Project: Learn How to Design and Configure Virtual Private Clouds</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Wed, 08 Nov 2023 18:02:12 +0000</pubDate>
      <link>https://forem.com/msfaizi/aws-vpc-project-learn-how-to-design-and-configure-virtual-private-clouds-2mbn</link>
      <guid>https://forem.com/msfaizi/aws-vpc-project-learn-how-to-design-and-configure-virtual-private-clouds-2mbn</guid>
      <description>&lt;h2&gt;
  
  
  Amazon Virtual Private Cloud (Amazon VPC) is a cloud networking service provided by Amazon Web Services (AWS) that allows you to create a logically isolated section of the AWS cloud where you can launch and manage AWS resources. It provides a way to build a private, secure, and isolated network environment within the AWS cloud.
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Here are some key features and concepts related to AWS VPC:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Isolation:&lt;/strong&gt; VPCs allow you to isolate your cloud resources. This means you can create a network that is logically separated from other VPCs and the public internet, providing enhanced security and control.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Subnets:&lt;/strong&gt; Within a VPC, you can create one or more subnets. Subnets are segments of the IP address range of your VPC and are used to organize and control traffic within your VPC. You can make subnets public or private, depending on your network architecture requirements.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Internet Gateway:&lt;/strong&gt; To connect your VPC to the internet, you can attach an Internet Gateway. This enables resources in public subnets to communicate with the internet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;NAT Gateway/NAT Instance:&lt;/strong&gt; To allow resources in private subnets to access the internet while remaining hidden from incoming traffic, you can use Network Address Translation (NAT) gateways or instances.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security Groups and Network ACLs:&lt;/strong&gt; You can control inbound and outbound traffic at the instance level using security groups, and at the subnet level using network access control lists (NACLs).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Peering:&lt;/strong&gt; You can peer VPCs to establish private connectivity between them. This can be used for various purposes, such as sharing resources or facilitating communication between VPCs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;VPC Endpoints&lt;/strong&gt;: VPC endpoints allow you to privately connect your VPC to supported AWS services, such as S3, without using the public internet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;VPC Flow Logs:&lt;/strong&gt; VPC Flow Logs capture information about IP traffic going in and out of network interfaces in your VPC. This is useful for security and monitoring purposes.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;VPC VPN and Direct Connect:&lt;/strong&gt; AWS provides options for connecting your VPC to your on-premises network using Virtual Private Network (VPN) connections or AWS Direct Connect for dedicated, high-speed network connections.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Transit Gateway:&lt;/strong&gt; Transit Gateway is a way to simplify network connectivity between multiple VPCs, on-premises data centers, and remote networks. It acts as a hub for connecting these networks.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;VPC Peering:&lt;/strong&gt; VPC peering allows you to connect two VPCs together so that resources in one VPC can communicate with resources in another VPC. This connection is private, and it does not involve traffic going over the public internet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;VPC Endpoints:&lt;/strong&gt; VPC endpoints enable you to securely access AWS services without using the public internet. This is useful for services like Amazon S3 or DynamoDB.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Project: AWS VPC Setup and Configuration
&lt;/h2&gt;

&lt;p&gt;Setting up a hands-on project to work with Amazon VPC will help you gain practical experience in configuring and managing virtual private clouds. Here's a sample project that you can follow:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Objective&lt;/strong&gt;: Create a secure AWS VPC with public and private subnets, launch EC2 instances, set up connectivity, and test network configurations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prerequisites:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An AWS account.&lt;/li&gt;
&lt;li&gt;Basic knowledge of AWS services like EC2, Security Groups, and Route Tables.&lt;/li&gt;
&lt;li&gt;AWS CLI and/or AWS Management Console access.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Create a New VPC and Subnets&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Log in to your AWS account using the AWS Management Console.&lt;/li&gt;
&lt;li&gt;Navigate to the VPC service.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create a new VPC with a CIDR block of your choice (e.g., 10.0.0.0/16).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create two subnets within the VPC:&lt;br&gt;
1.Public Subnet (e.g., 10.0.0.0/24)&lt;br&gt;
2.Private Subnet (e.g., 10.0.1.0/24)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Launch EC2 Instances&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the public subnet, launch an EC2 instance. This instance will serve as a web server. Ensure it has a public IP address.&lt;/li&gt;
&lt;li&gt;In the private subnet, launch another EC2 instance. This instance will serve as a database server.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Security Groups and Route Tables&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create security groups for both the web server and the database server. Allow necessary inbound and outbound traffic.&lt;/li&gt;
&lt;li&gt;Configure route tables for the public and private subnets. The public subnet should have a route to the internet through the Internet Gateway.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Test Connectivity&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SSH into the web server from your local machine using the public IP address.&lt;/li&gt;
&lt;li&gt;From the web server, attempt to connect to the database server using its private IP address.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Additional Configuration (Optional)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set up a Network Address Translation (NAT) Gateway or NAT Instance in the public subnet to allow the private server to access the internet while keeping it private.&lt;/li&gt;
&lt;li&gt;Experiment with VPC Peering to connect your VPC to another VPC if you have one.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 6: Clean Up&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Terminate the EC2 instances and delete any resources you've created to avoid ongoing charges.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/"&gt;Linkedin&lt;/a&gt; | &lt;a href="https://twitter.com/shamim_faizi786"&gt;Twitter&lt;/a&gt; for more such contents&lt;/p&gt;

</description>
      <category>aws</category>
      <category>beginners</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Host a Static website on AWS S3. Configure Amazon CloudFront for content delivery and Route 53 for domain management.</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Mon, 30 Oct 2023 08:02:43 +0000</pubDate>
      <link>https://forem.com/msfaizi/host-a-static-website-on-aws-s3-configure-amazon-cloudfront-for-content-delivery-and-route-53-for-domain-management-1g60</link>
      <guid>https://forem.com/msfaizi/host-a-static-website-on-aws-s3-configure-amazon-cloudfront-for-content-delivery-and-route-53-for-domain-management-1g60</guid>
      <description>&lt;p&gt;&lt;em&gt;You can fork my &lt;a href="https://github.com/MSFaizi/Static_website_AWS.git"&gt;repository&lt;/a&gt; to complete this project or make a copy to your local system using pull command&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating a static website and hosting it on AWS S3, configuring Amazon CloudFront for content delivery, and using Route 53 for domain management involves several steps. Here's a step-by-step guide to achieving this:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Create an AWS Account&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you don't have an AWS account, sign up for one at &lt;a href="https://aws.amazon.com/"&gt;https://aws.amazon.com/&lt;/a&gt;. Once you have an account, log in to the AWS Management Console.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Create an S3 Bucket&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the AWS Management Console, go to the S3 service.&lt;/li&gt;
&lt;li&gt;Click the "Create bucket" button.&lt;/li&gt;
&lt;li&gt;Choose a globally unique name for your bucket (e.g., my-static-website-example).&lt;/li&gt;
&lt;li&gt;Select a region for your bucket (choose the one closest to your target audience).&lt;/li&gt;
&lt;li&gt;Leave the default settings and create the bucket.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Upload Your Website Files&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Inside your newly created S3 bucket, click on the "Upload" button.&lt;/li&gt;
&lt;li&gt;Upload your HTML, CSS, JavaScript, and any other static assets (e.g., images) to the bucket.&lt;/li&gt;
&lt;li&gt;Once uploaded, select your HTML file and click on the "Properties" tab. Under "Permissions," set the object to be public by clicking "Make public."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Configure S3 for Static Website Hosting&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In your S3 bucket, navigate to the "Properties" tab.&lt;/li&gt;
&lt;li&gt;Scroll down to the "Static website hosting" section.&lt;/li&gt;
&lt;li&gt;Select the option for "Use this bucket to host a website."&lt;/li&gt;
&lt;li&gt;Set the index document (e.g., index.html) and the error document if desired.&lt;/li&gt;
&lt;li&gt;Click "Save changes."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Configure Amazon CloudFront for Content Delivery&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the AWS Management Console, go to the CloudFront service.&lt;/li&gt;
&lt;li&gt;Click "Create Distribution."&lt;/li&gt;
&lt;li&gt;Choose the "Web" distribution type.&lt;/li&gt;
&lt;li&gt;Configure the following settings:&lt;/li&gt;
&lt;li&gt;Origin Domain Name: Select your S3 bucket endpoint from the dropdown.&lt;/li&gt;
&lt;li&gt;Viewer Protocol Policy: Choose "Redirect HTTP to HTTPS" or "HTTPS Only" depending on your preference.&lt;/li&gt;
&lt;li&gt;Alternate Domain Names (CNAMEs): Add your domain name (e.g., &lt;a href="http://www.example.com"&gt;www.example.com&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Default Root Object: Specify your index document (e.g., index.html).&lt;/li&gt;
&lt;li&gt;Leave the rest as default or configure as needed.&lt;/li&gt;
&lt;li&gt;Click "Create Distribution."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 6: Configure Route 53 for Domain Management&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the AWS Management Console, go to the Route 53 service.&lt;/li&gt;
&lt;li&gt;Create a new hosted zone for your domain (e.g., example.com).&lt;/li&gt;
&lt;li&gt;Inside the hosted zone, create a new record set.&lt;/li&gt;
&lt;li&gt;Choose the record type (e.g., A - IPv4 address).&lt;/li&gt;
&lt;li&gt;Alias: Yes.&lt;/li&gt;
&lt;li&gt;Alias Target: Select your CloudFront distribution from the dropdown.&lt;/li&gt;
&lt;li&gt;Create another record set for the "www" subdomain following the same steps.&lt;/li&gt;
&lt;li&gt;Update the DNS settings of your domain registrar to use the Route 53 name servers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 7: Test Your Website&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It may take some time for DNS changes to propagate. Once it's done, you should be able to access your static website via your custom domain (e.g., &lt;a href="http://www.example.com"&gt;www.example.com&lt;/a&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;That's it! Your static website is now hosted on AWS S3, delivered through CloudFront for faster content delivery, and managed using Route 53 for domain management.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/"&gt;Linkedin&lt;/a&gt; | &lt;a href="https://twitter.com/shamim_faizi786"&gt;Twitter&lt;/a&gt; for more such contents&lt;/p&gt;

</description>
      <category>devops</category>
      <category>aws</category>
      <category>opensource</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Hosting a Portfolio website on AWS | Amazon Web Service | Step by Step Guide | Mini-Project for Beginners</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Sat, 21 Oct 2023 17:05:50 +0000</pubDate>
      <link>https://forem.com/msfaizi/hosting-a-portfolio-website-on-aws-amazon-web-service-step-by-step-guide-mini-project-for-beginners-27ci</link>
      <guid>https://forem.com/msfaizi/hosting-a-portfolio-website-on-aws-amazon-web-service-step-by-step-guide-mini-project-for-beginners-27ci</guid>
      <description>&lt;h2&gt;
  
  
  Hosting a portfolio website on an AWS Ubuntu server is a great way to showcase your work. Here's a step-by-step guide on how to do it:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Step-1: Launch an AWS EC2 Instance:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Log in to your AWS Management Console.&lt;/li&gt;
&lt;li&gt;Navigate to the EC2 dashboard.&lt;/li&gt;
&lt;li&gt;Click on "Launch Instance" to create a new EC2 instance.&lt;/li&gt;
&lt;li&gt;Choose an Amazon Machine Image (AMI) for Ubuntu Server.&lt;/li&gt;
&lt;li&gt;Select an instance type and configure instance details.&lt;/li&gt;
&lt;li&gt;Add storage as needed.&lt;/li&gt;
&lt;li&gt;Configure security groups to allow incoming traffic on ports 80 (HTTP) and 443 (HTTPS).&lt;/li&gt;
&lt;li&gt;Review and launch the instance.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step-2: Connect to Your Ubuntu Server:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Once the instance is running, connect to it using SSH. You can use a terminal on your local machine with the following command (replace your-key.pem and your-instance-ip with your actual key file and instance IP):
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ssh -i your-key.pem ubuntu@your-instance-ip
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step-3: Update and Upgrade Your Server:&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;After connecting, run the following commands to update and upgrade your server:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ sudo apt update
$ sudo apt upgrade
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step-4: Install a Web Server (Apache or Nginx):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can choose between Apache and Nginx as your web server. Here's how to install Apache:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ sudo apt install apache2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;After installation, start the Apache server:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ sudo systemctl start apache2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step-5: Upload Your Website Files:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can use SCP or SFTP to transfer your HTML, CSS, and JavaScript files to the server. Replace 'your-local-directory' with the path to your website files and 'your-remote-directory' with the path where you want to store them on the server:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ scp -i your-key.pem -r your-local-directory ubuntu@your-instance-ip:your-remote-directory
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step-6: Configure the Web Server:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create a virtual host configuration file for your website (replace your-public-ip with your server IP):
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ sudo vi /etc/apache2/sites-available/public-ip.conf
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Add the following configuration (modify as needed):
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;VirtualHost *:80&amp;gt;
    ServerAdmin webmaster@your-public-ip
    ServerName your-public-ip
    DocumentRoot /var/www/html/
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
&amp;lt;/VirtualHost&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step-7: Enable the virtual host and restart Apache:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ sudo a2ensite public-ip.conf
$ sudo systemctl restart apache2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step-8: Configure DNS (if using a domain):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you're using a custom domain, configure your DNS settings to point to your server's IP address.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step-9: Secure Your Website (Optional):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It's recommended to secure your website with HTTPS. You can use Let's Encrypt to obtain a free SSL certificate.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step-10: Test Your Website:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open a web browser and visit your domain or server IP to verify that your website is live.&lt;/li&gt;
&lt;li&gt;Your portfolio website should now be hosted on your AWS Ubuntu server. You can further customize and optimize the server and website as needed.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Please do let me know if you face any error, I will be happy to help and troubleshoot your issue.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/"&gt;Linkedin&lt;/a&gt; | &lt;a href="https://twitter.com/shamim_faizi786"&gt;Twitter&lt;/a&gt; for more such contents&lt;/p&gt;

</description>
      <category>devops</category>
      <category>aws</category>
      <category>cloud</category>
      <category>opensource</category>
    </item>
    <item>
      <title>AWS CLI | Important &amp; Useful Commands</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Sun, 15 Oct 2023 17:33:38 +0000</pubDate>
      <link>https://forem.com/msfaizi/aws-cli-important-useful-commands-2o4k</link>
      <guid>https://forem.com/msfaizi/aws-cli-important-useful-commands-2o4k</guid>
      <description>&lt;p&gt;&lt;strong&gt;The AWS Command Line Interface (CLI) provides a wide range of commands for interacting with various AWS services and managing your AWS resources. Here's a list of some commonly used AWS CLI commands, grouped by their respective services or functions.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html"&gt;AWS CLI installation based on Operating System&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AWS CLI Core Commands:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws configure:&lt;/strong&gt;
Set up your AWS CLI configuration, including access key, secret key, default region, and output format.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws help:&lt;/strong&gt;
Get help and information on AWS CLI commands and their usage.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon EC2 (Elastic Compute Cloud):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws ec2 describe-instances:&lt;/strong&gt; List EC2 instances in your AWS account.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws ec2 run-instances:&lt;/strong&gt; Launch a new EC2 instance.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws ec2 terminate-instances:&lt;/strong&gt; Terminate one or more EC2 instances.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon S3 (Simple Storage Service):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws s3 ls:&lt;/strong&gt; List S3 buckets or objects.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws s3 cp:&lt;/strong&gt; Copy files and directories to/from S3.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws s3 rm:&lt;/strong&gt; Delete objects from S3.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon RDS (Relational Database Service):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws rds describe-db-instances:&lt;/strong&gt; List RDS database instances.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws rds create-db-instance:&lt;/strong&gt; Create a new RDS database instance.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws rds delete-db-instance:&lt;/strong&gt; Delete an RDS database instance.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon IAM (Identity and Access Management):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws iam create-user:&lt;/strong&gt; Create a new IAM user.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws iam list-users:&lt;/strong&gt; List IAM users.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws iam attach-user-policy:&lt;/strong&gt; Attach a managed policy to an IAM user.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Lambda:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws lambda create-function:&lt;/strong&gt; Create a new Lambda function.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws lambda list-functions:&lt;/strong&gt; List Lambda functions in your AWS account.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws lambda invoke:&lt;/strong&gt; Invoke a Lambda function.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon CloudWatch:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudwatch put-metric-data:&lt;/strong&gt; Publish custom metrics to CloudWatch.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudwatch describe-alarms:&lt;/strong&gt; List CloudWatch alarms.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudwatch get-metric-statistics:&lt;/strong&gt; Get statistics for CloudWatch metrics.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon ECS (Elastic Container Service):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws ecs create-cluster:&lt;/strong&gt; Create a new ECS cluster.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws ecs list-container-instances:&lt;/strong&gt; List container instances in an ECS cluster.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws ecs run-task:&lt;/strong&gt; Run a new task on an ECS cluster.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon SQS (Simple Queue Service):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws sqs create-queue:&lt;/strong&gt; Create a new SQS queue.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws sqs list-queues:&lt;/strong&gt; List SQS queues in your AWS account.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws sqs send-message:&lt;/strong&gt; Send a message to an SQS queue.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon SNS (Simple Notification Service):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws sns create-topic:&lt;/strong&gt; Create a new SNS topic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws sns list-topics:&lt;/strong&gt; List SNS topics.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws sns publish:&lt;/strong&gt; Publish a message to an SNS topic.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon DynamoDB:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws dynamodb create-table:&lt;/strong&gt; Create a new DynamoDB table.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws dynamodb list-tables:&lt;/strong&gt; List DynamoDB tables.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws dynamodb put-item:&lt;/strong&gt; Put an item into a DynamoDB table.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Note&lt;/em&gt;: To get specific information about a particular command, you can use the 'aws help' command followed by the command you want to learn more about. For example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws help ec2 describe-instances
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Certainly! Here are more AWS CLI commands for various AWS services:&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Amazon VPC (Virtual Private Cloud):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws ec2 create-vpc:&lt;/strong&gt; Create a new Virtual Private Cloud (VPC).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws ec2 describe-vpcs:&lt;/strong&gt; List VPCs in your AWS account.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws ec2 create-subnet:&lt;/strong&gt; Create a new subnet within a VPC.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Amazon SNS (Simple Notification Service):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws sns list-subscriptions:&lt;/strong&gt; List subscriptions to an SNS topic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws sns create-subscription:&lt;/strong&gt; Subscribe an endpoint (e.g., an email address or an SQS queue) to an SNS topic.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS CloudFormation:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudformation create-stack:&lt;/strong&gt; Create a new CloudFormation stack.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudformation list-stacks:&lt;/strong&gt; List CloudFormation stacks in your AWS account.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudformation describe-stack-events:&lt;/strong&gt; Describe events for a specific CloudFormation stack.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS CloudFront (Content Delivery Network):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudfront create-distribution:&lt;/strong&gt; Create a new CloudFront distribution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudfront list-distributions:&lt;/strong&gt; List CloudFront distributions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws cloudfront create-invalidation:&lt;/strong&gt; Create an invalidation for a CloudFront distribution.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Elastic Beanstalk:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws elasticbeanstalk create-application:&lt;/strong&gt; Create a new Elastic Beanstalk application.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws elasticbeanstalk create-environment:&lt;/strong&gt; Create a new Elastic Beanstalk environment.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws elasticbeanstalk describe-environments:&lt;/strong&gt; Describe Elastic Beanstalk environments.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Glue (Data ETL Service):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws glue create-database:&lt;/strong&gt; Create a new AWS Glue database.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws glue create-crawler:&lt;/strong&gt; Create an AWS Glue crawler to discover and catalog data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws glue start-job-run:&lt;/strong&gt; Start an AWS Glue job run.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Redshift (Data Warehouse):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws redshift create-cluster:&lt;/strong&gt; Create a new Amazon Redshift cluster.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws redshift describe-clusters:&lt;/strong&gt; Describe Amazon Redshift clusters.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws redshift modify-cluster:&lt;/strong&gt; Modify the properties of an Amazon Redshift cluster.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Kinesis (Real-time Data Streaming):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws kinesis create-stream:&lt;/strong&gt; Create a new Kinesis data stream.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws kinesis list-streams:&lt;/strong&gt; List Kinesis data streams.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws kinesis put-record:&lt;/strong&gt; Put a single data record into a Kinesis data stream.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Step Functions (Serverless Orchestration):&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws stepfunctions create-state-machine:&lt;/strong&gt; Create a new Step Functions state machine.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws stepfunctions list-state-machines:&lt;/strong&gt; List Step Functions state machines.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws stepfunctions start-execution:&lt;/strong&gt; Start the execution of a Step Functions state machine.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Secrets Manager:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;aws secretsmanager create-secret:&lt;/strong&gt; Create a new secret in AWS Secrets Manager.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws secretsmanager list-secrets:&lt;/strong&gt; List secrets stored in AWS Secrets Manager.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;aws secretsmanager get-secret-value:&lt;/strong&gt; Retrieve the value of a secret.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/"&gt;Linkedin&lt;/a&gt; | &lt;a href="https://twitter.com/shamim_faizi786"&gt;Twitter&lt;/a&gt; for more such contents&lt;/p&gt;

</description>
      <category>devops</category>
      <category>aws</category>
      <category>opensource</category>
      <category>cloud</category>
    </item>
    <item>
      <title>How to write Jenkinsfile? | A Comprehensive Guide for Beginners</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Thu, 12 Oct 2023 09:15:09 +0000</pubDate>
      <link>https://forem.com/msfaizi/how-to-write-jenkinsfile-a-comprehensive-guide-for-beginners-58d2</link>
      <guid>https://forem.com/msfaizi/how-to-write-jenkinsfile-a-comprehensive-guide-for-beginners-58d2</guid>
      <description>&lt;p&gt;&lt;strong&gt;A Jenkinsfile is a text file that defines the entire build process for a Jenkins pipeline. It uses a domain-specific language (DSL) that is based on Groovy syntax. Writing a Jenkinsfile involves defining stages, steps, and other configuration elements to automate the build, test, and deployment processes. Here's a basic guide on how to write a Jenkinsfile:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create a Jenkinsfile:&lt;/strong&gt; Start by creating a Jenkinsfile in your project's repository root or in a specified directory. You can name it Jenkinsfile without any file extension.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Specify Pipeline Configuration:&lt;/strong&gt; Begin the Jenkinsfile by defining the pipeline configuration. There are two syntax options: &lt;strong&gt;Declarative&lt;/strong&gt; and &lt;strong&gt;Scripted&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Declarative Syntax:&lt;/strong&gt; This is a more structured and human-readable approach. Use the pipeline block to define your pipeline:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pipeline {
    agent {
        // Specify the agent (where the build runs)
        // e.g., 'docker', 'node', 'label', 'any', etc.
    }
    stages {
        // Define your build stages here
        stage('Build') {
            steps {
                // Define steps for the 'Build' stage
            }
        }
        stage('Test') {
            steps {
                // Define steps for the 'Test' stage
            }
        }
        // Add more stages as needed
    }
    post {
        // Define post-build actions, such as notifications or cleanup
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scripted Syntax:&lt;/strong&gt; This offers more flexibility but may be less readable for complex pipelines. Use the node block to define your pipeline:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;node {
    // Define your pipeline steps here
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Define Stages and Steps:&lt;/strong&gt; Inside the 'stages' block, define the individual stages of your build pipeline. Each stage contains one or more steps. Steps can be shell commands, scripts, or predefined Jenkins plugins.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;stages {
    stage('Build') {
        steps {
            // Execute build commands here
        }
    }
    stage('Test') {
        steps {
            // Execute test commands here
        }
    }
    // Add more stages and steps as needed
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Configure Agents:&lt;/strong&gt; In the 'agent' block (Declarative syntax) or using 'node' (Scripted syntax), specify where the build should run. You can use a specific node or container image.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Define Post-Build Actions:&lt;/strong&gt; In the 'post' block, you can define post-build actions, such as sending notifications, archiving artifacts, or triggering other Jenkins jobs based on the build result.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Save and Commit:&lt;/strong&gt; Save the Jenkinsfile and commit it to your version control system (e.g., Git). Jenkins will automatically detect and execute the pipeline when changes are pushed to the repository.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configure Jenkins Job:&lt;/strong&gt; In your Jenkins server, create a new pipeline job, specify the location of the Jenkinsfile in your repository, and configure any required parameters or triggers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Run the Pipeline:&lt;/strong&gt; Trigger the pipeline either manually or based on your configured triggers (e.g., code changes, schedules).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Monitor and Debug:&lt;/strong&gt; Use the Jenkins web interface to monitor pipeline execution, view logs, and debug any issues that may arise.&lt;/p&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/"&gt;Linkedin&lt;/a&gt;, &lt;a href="https://twitter.com/shamim_faizi786"&gt;Twitter&lt;/a&gt;&lt;/p&gt;

</description>
      <category>jenkins</category>
      <category>devops</category>
      <category>automation</category>
      <category>cicd</category>
    </item>
    <item>
      <title>How to write a YAML configuration file? | A Step-by-Step Guide for Beginners</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Mon, 09 Oct 2023 17:25:08 +0000</pubDate>
      <link>https://forem.com/msfaizi/how-to-write-a-yaml-configuration-file-a-step-by-step-guide-for-beginners-jf0</link>
      <guid>https://forem.com/msfaizi/how-to-write-a-yaml-configuration-file-a-step-by-step-guide-for-beginners-jf0</guid>
      <description>&lt;p&gt;&lt;strong&gt;Writing a YAML configuration file is relatively straightforward, and YAML (YAML Ain't Markup Language) is often used for configuration files due to its readability. YAML uses indentation to represent the structure of data hierarchies. Here's a basic guide on how to write a YAML configuration file:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Start with a Document Indicator:&lt;/strong&gt; In YAML, each document starts with --- on a new line. This indicates the beginning of a new document or configuration.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;---
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Define Key-Value Pairs:&lt;/strong&gt; YAML uses a key-value pair structure. Use a colon : to separate the key from the value, and indent the value with spaces or tabs. Commonly, two spaces per level of indentation are used, but consistency is more important than the number of spaces.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;key1: value1
key2: value2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Use Indentation for Nested Data:&lt;/strong&gt; If you have nested data structures like dictionaries or lists, use proper indentation to represent the hierarchy. YAML is whitespace-sensitive, so make sure to align items correctly.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;parent_key:
  child_key1: child_value1
  child_key2: child_value2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Lists and Arrays:&lt;/strong&gt; To create a list or array, use a hyphen '-' followed by a space to indicate list items. Lists can contain strings, numbers, or other data types.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;fruits:
  - apple
  - banana
  - cherry
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Comments:&lt;/strong&gt; You can add comments in YAML using the # symbol. Comments are for human readability and are ignored by most parsers.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# This is a comment
key: value
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Quoted Strings:&lt;/strong&gt; If a string contains special characters or starts with characters that might be misinterpreted as YAML syntax, you can enclose it in single or double quotes.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;key: "This is a string with spaces and special characters: @!$"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Multi-line Strings:&lt;/strong&gt; For multi-line strings, you can use the | character followed by a newline. This preserves newlines and leading/trailing spaces in the string.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;description: |
  This is a multi-line
  string with
  preserved formatting.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Anchors and Aliases (Advanced):&lt;/strong&gt; YAML allows you to use anchors ('&amp;amp;') and aliases ('*') to reference the same value in multiple places within your configuration. This is useful for reducing redundancy.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;first_name: &amp;amp;name John
last_name: *name
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;References to Environment Variables (Advanced):&lt;/strong&gt; In some cases, you may want to reference environment variables in your YAML configuration. You can do this using a special syntax, such as '${ENV_VAR_NAME}'.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;api_key: ${SECRET_API_KEY}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Finalize the Document:&lt;/strong&gt; End your YAML configuration with '...' or a new '---' to indicate the end of the document.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Remember&lt;/em&gt; to validate your YAML file using a YAML parser or linter to ensure that it is correctly formatted. YAML can be sensitive to indentation errors, so maintaining proper spacing is crucial for accurate parsing.&lt;/p&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/"&gt;Linkedin&lt;/a&gt;, &lt;a href="https://twitter.com/shamim_faizi786"&gt;Twitter&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devops</category>
      <category>yaml</category>
      <category>opensource</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Kubernetes Cheatsheet: Essential Commands and Concepts for Efficient Container Orchestration</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Mon, 02 Oct 2023 13:43:56 +0000</pubDate>
      <link>https://forem.com/msfaizi/kubernetes-cheatsheet-essential-commands-and-concepts-for-efficient-container-orchestration-201n</link>
      <guid>https://forem.com/msfaizi/kubernetes-cheatsheet-essential-commands-and-concepts-for-efficient-container-orchestration-201n</guid>
      <description>&lt;h2&gt;
  
  
  Kubernetes Cheatsheet
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Kubernetes Basics:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl version&lt;/strong&gt;: Check the Kubernetes client and server versions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl cluster-info&lt;/strong&gt;: View cluster details.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl get pods&lt;/strong&gt;: List all pods in the current namespace.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl get nodes&lt;/strong&gt;: List all nodes in the cluster.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl describe pod [pod-name]&lt;/strong&gt;: Get detailed information about a pod.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Creating and Managing Resources:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl create -f [yaml-file]&lt;/strong&gt;: Create a resource from a YAML file.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl apply -f [yaml-file]&lt;/strong&gt;: Apply changes to a resource.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl delete [resource-type] [resource-name]&lt;/strong&gt;: Delete a resource.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl edit [resource-type] [resource-name]&lt;/strong&gt;: Edit a resource in the default text editor.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl get [resource-type]&lt;/strong&gt;: List resources of a specific type.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl logs [pod-name]&lt;/strong&gt;: View logs of a pod.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Scaling:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl scale deployment [deployment-name] --replicas=[num-replicas]&lt;/strong&gt;: Scale a deployment.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl autoscale deployment [deployment-name] --min=[min-replicas] --max=[max-replicas]&lt;/strong&gt;: Autoscale a deployment.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Networking:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl expose [resource-type] [resource-name] --port=[port] --target-port=[target-port] --type=[service-type]:&lt;/strong&gt;Expose a resource as a service.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl get svc:&lt;/strong&gt; List services.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl port-forward [pod-name] [local-port]:[pod-port]:&lt;/strong&gt; Forward ports from a local machine to a pod.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Configuration:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl config view:&lt;/strong&gt; View the current configuration.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl config use-context [context-name]:&lt;/strong&gt; Set the current context.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pods:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl exec -it [pod-name] -- [command]:&lt;/strong&gt; Execute a command in a pod.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl run [pod-name] --image=[image-name]:&lt;/strong&gt; Create a new pod running a specific image.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Namespaces:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl create namespace [namespace-name]:&lt;/strong&gt; Create a new namespace.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl get namespaces:&lt;/strong&gt; List namespaces.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl config set-context --current --namespace=[namespace-name]:&lt;/strong&gt; Set the default namespace.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Secrets and ConfigMaps:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl create secret generic [secret-name] --from-literal=[key]=[value]:&lt;/strong&gt; Create a secret.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl create configmap [configmap-name] --from-literal=[key]=[value]:&lt;/strong&gt; Create a ConfigMap.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl describe secret [secret-name]:&lt;/strong&gt; View secret details.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl describe configmap [configmap-name]:&lt;/strong&gt; View ConfigMap details.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Storage:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl get pv:&lt;/strong&gt; List persistent volumes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl get pvc:&lt;/strong&gt; List persistent volume claims.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Advanced Troubleshooting:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;kubectl describe [resource-type] [resource-name]:&lt;/strong&gt; Get detailed information about a resource.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;kubectl top [resource-type] [resource-name]:&lt;/strong&gt; Display resource usage statistics.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Remember&lt;/em&gt; to replace placeholders like [resource-type], [resource-name], [pod-name], etc., with your actual resource and object names.&lt;/p&gt;

&lt;p&gt;This cheatsheet should help you get started with Kubernetes and serve as a handy reference as you work with containers and orchestration in Kubernetes.&lt;/p&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/"&gt;Linkedin&lt;/a&gt;, &lt;a href="https://twitter.com/shamim_faizi786"&gt;Twitter&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devops</category>
      <category>kubernetes</category>
      <category>beginners</category>
      <category>learning</category>
    </item>
    <item>
      <title>Unlocking Free AWS Certification Vouchers: Your Path to Cloud Career Advancement</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Sun, 01 Oct 2023 10:04:14 +0000</pubDate>
      <link>https://forem.com/msfaizi/unlocking-free-aws-certification-vouchers-your-path-to-cloud-career-advancement-kkp</link>
      <guid>https://forem.com/msfaizi/unlocking-free-aws-certification-vouchers-your-path-to-cloud-career-advancement-kkp</guid>
      <description>&lt;p&gt;&lt;strong&gt;Have you ever felt hindered by the cost of a certification voucher while pursuing your dream career in the cloud? Imagine the possibilities if you could get your hands on a free AWS certification voucher. Well, the good news is that it's not just a dream! In this post, I'll unveil a remarkable opportunity to obtain 100% free AWS certification vouchers and provide insights into seven other avenues to explore.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;🔍 &lt;strong&gt;Exploring the AWS Emerging Talent Community&lt;/strong&gt;&lt;br&gt;
What is the AWS Emerging Talent Community? It's an exclusive, invite-only platform designed to empower learners from AWS Academy, AWS Educate, and AWS re/Start to advance their cloud skills and embark on rewarding cloud careers. By joining this thriving community, you gain access to personalized content recommendations, AWS Certification preparation resources, discount vouchers, and much more! Learn more&lt;/p&gt;

&lt;p&gt;💡 &lt;strong&gt;Unlocking Your Invitation&lt;/strong&gt;&lt;br&gt;
While it's true that the community operates by invitation only, the process to secure your invite is surprisingly straightforward. You can achieve this too, in just a few hours. Simply create a free account at awseducate.com and utilize the filter feature to locate courses offering a badge. Completing any badge-eligible course puts you in line for an invitation to the ETC.&lt;/p&gt;

&lt;p&gt;🌟 &lt;strong&gt;Exploring Other Access Routes&lt;/strong&gt;&lt;br&gt;
Apart from AWS Educate, two other AWS Education Programs can grant you access to the AWS Emerging Talent Community: AWS Academy and AWS re/Start.&lt;/p&gt;

&lt;p&gt;🏆 &lt;strong&gt;Earn and Redeem&lt;/strong&gt;&lt;br&gt;
Once you're part of the community, you can accumulate points by conquering challenges. The more challenges you complete, the more points you earn, which can be redeemed for fantastic rewards, including AWS certification vouchers.&lt;/p&gt;

&lt;p&gt;🌐 &lt;strong&gt;Beyond Vouchers: A World of Opportunities&lt;/strong&gt;&lt;br&gt;
The benefits of joining the AWS Emerging Talent Community extend far beyond obtaining a certification voucher. I recently took advantage of the AWS Mentor Program, which offers invaluable mentorship for emerging cloud professionals. The ETC is like a daily newspaper for cloud enthusiasts, where you'll discover curated technical and career-related content. It's also a fantastic platform to connect and network with like-minded individuals on their cloud learning journey.&lt;/p&gt;

&lt;p&gt;🚀 &lt;strong&gt;Exploring Other Free Voucher Avenues&lt;/strong&gt;&lt;br&gt;
But wait, there's more! You can also secure free AWS certification vouchers through various other avenues:&lt;/p&gt;

&lt;p&gt;1️⃣ AWS Community Builders Programme&lt;br&gt;
2️⃣ All Builders Welcome Grant scholarship&lt;br&gt;
3️⃣ AWS New Voices foundational speaker training program&lt;br&gt;
4️⃣ Get AWS Certified – Sub-Saharan Africa Challenge organized by AWS Training and Certification&lt;br&gt;
5️⃣ Join and actively participate in AWS User groups&lt;br&gt;
6️⃣ Become an AWS Authorized Instructor&lt;br&gt;
7️⃣ Attain the prestigious title of AWS Cloud Captain&lt;/p&gt;

</description>
      <category>aws</category>
      <category>certification</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Exploring the Fundamentals: A Comprehensive Guide to Linux for Beginner</title>
      <dc:creator>Shamim Ansari</dc:creator>
      <pubDate>Sat, 30 Sep 2023 10:06:35 +0000</pubDate>
      <link>https://forem.com/msfaizi/exploring-the-fundamentals-a-comprehensive-guide-to-linux-for-beginner-ba8</link>
      <guid>https://forem.com/msfaizi/exploring-the-fundamentals-a-comprehensive-guide-to-linux-for-beginner-ba8</guid>
      <description>&lt;p&gt;&lt;strong&gt;Linux:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Linux is kernel not OS&lt;/li&gt;
&lt;li&gt;Linux is not a UNIX derivative. It was written from scratch&lt;/li&gt;
&lt;li&gt;A Linux distribution is the Linux kernel and a collection of software that together creates an OS.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Linux Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open source&lt;/li&gt;
&lt;li&gt;Secure&lt;/li&gt;
&lt;li&gt;Simplified updates for all installed software&lt;/li&gt;
&lt;li&gt;Light weight&lt;/li&gt;
&lt;li&gt;Multi-User or Multi-Task&lt;/li&gt;
&lt;li&gt;Multiple distributions – RedHat, Debian, Fedora etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;File System Hierarchy:&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;/home - home directory for other user&lt;br&gt;
/root – It is home directory for root user&lt;br&gt;
/boot – It contains bootable files for Linux&lt;br&gt;
/etc -  It contains all configurations files.&lt;br&gt;
/usr – By default software are installed in this directory&lt;br&gt;
/bin – It contains commands used by all users&lt;br&gt;
/sbin -  It contains commands used by only root user&lt;br&gt;
/opt – Optional application software Packages&lt;br&gt;
/dev – Essentials device files. This includes terminal devices, usb or any devices attached to the system.&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Linux Commands &amp;amp; It’s use cases:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;cat command&lt;/strong&gt;&lt;br&gt;
– The cat command is one of the most universal tools, yet all it does is Copy standard input to Standard Output.&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhtjvvv8x4qk1dqca8qq4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhtjvvv8x4qk1dqca8qq4.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Touch Command&lt;/strong&gt; - &lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs8q0y31uzq97r0vutfx1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs8q0y31uzq97r0vutfx1.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faxz2oib66fdq7z1npj88.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faxz2oib66fdq7z1npj88.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Vi editor -&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;A programmer text editor&lt;/li&gt;
&lt;li&gt;It can be used to edit all kinds of plain text, it is specially useful for editing programs, mainly used for Unix programs.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;Notes:&lt;/em&gt;           &lt;code&gt;:w – to save&lt;br&gt;
                    :wq or :x – To save and quit&lt;br&gt;
                    :q – quit&lt;br&gt;
                    :q! – force quit, no save&lt;/code&gt;&lt;br&gt;
&lt;em&gt;Vi is a standard whereas ‘nano’ has to be available depending on the linux we use.&lt;/em&gt;  &lt;/p&gt;

&lt;p&gt;&lt;code&gt;rmdir – This command is used to remove the specified directory (empty)&lt;br&gt;
rmdir -p – Removes both the parent and child directory&lt;br&gt;
rmdir -pv – Removes all the parent and sub-directories along with verbose.&lt;br&gt;
rm -rf – Removes even non-empty file and directory.&lt;br&gt;
Rm -rp – Removes non-empty directories including parent and sub directory.&lt;br&gt;
rm -r – Removes empty directory&lt;br&gt;
 hostname&lt;br&gt;
Ifconfig, cat /etc/os-release&lt;br&gt;
yum install httpd&lt;br&gt;
yum remove httpd&lt;br&gt;
yum update httpd&lt;br&gt;
service httpd start&lt;br&gt;
service httpd status&lt;br&gt;
chkconfig httpd on&lt;br&gt;
chkconfig httpd off&lt;br&gt;
which&lt;br&gt;
whoami&lt;br&gt;
echo&lt;br&gt;
yum list intalled&lt;br&gt;
useradd- To create user&lt;br&gt;
groupadd – To create a group&lt;br&gt;
gpasswd -a/-m – To add user into group, to add multiple user&lt;br&gt;
ln – Hardlink/ backup&lt;br&gt;
ln -s – Softlink/ short cut&lt;br&gt;
tar – Tar is an archiver used to combine multiple files into one&lt;br&gt;
gzip – It is a compression tool used to reduce the size of a file&lt;br&gt;
wget – It is the non-intracity network downloader.&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Access mode/ Permission:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F59k2utzt93c9zsjiobzv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F59k2utzt93c9zsjiobzv.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;chmod&lt;/strong&gt; – Used to change the access mode&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;chown&lt;/strong&gt; – Change the owner of the file or directory&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;chgrp&lt;/strong&gt; – Change the group of file or directory &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;File Details: &lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiv307vtj4w4fzu8q7rkg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiv307vtj4w4fzu8q7rkg.png" alt="Image description"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Note&lt;/em&gt;: r = read, w = write, x = execute&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;rm -rf * - To remove all file/directory in single command&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Follow me on &lt;a href="https://www.linkedin.com/in/shamim-ansari7/" rel="noopener noreferrer"&gt;Linkedin&lt;/a&gt;, &lt;a href="https://twitter.com/shamim_faizi786" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devops</category>
      <category>linux</category>
      <category>cicd</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
