<?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: Mim Ahmed</title>
    <description>The latest articles on Forem by Mim Ahmed (@mimahmed).</description>
    <link>https://forem.com/mimahmed</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%2F61446%2F7f1f1538-fe96-4ea8-b6e1-586d8597e88e.jpg</url>
      <title>Forem: Mim Ahmed</title>
      <link>https://forem.com/mimahmed</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/mimahmed"/>
    <language>en</language>
    <item>
      <title>🛡 How to Prevent IAM Password Reuse in AWS</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Wed, 23 Jul 2025 02:14:17 +0000</pubDate>
      <link>https://forem.com/aws-builders/how-to-prevent-iam-password-reuse-in-aws-36db</link>
      <guid>https://forem.com/aws-builders/how-to-prevent-iam-password-reuse-in-aws-36db</guid>
      <description>&lt;p&gt;When managing users in AWS, it's crucial to enforce strong security controls — especially around password hygiene. One such control is preventing IAM users from reusing old passwords.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Password Reuse Matters&lt;/strong&gt;&lt;br&gt;
Passwords are still a common attack vector. If users can reuse the same password (or rotate between two), you're exposing your environment to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Credential stuffing&lt;/li&gt;
&lt;li&gt;Password spraying&lt;/li&gt;
&lt;li&gt;Social engineering risks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;TL;DR: Reused passwords defeat the purpose of rotation policies.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AWS IAM Password Policy Overview&lt;/strong&gt;&lt;br&gt;
AWS IAM lets you define account-wide password policies for IAM users, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Minimum password length&lt;/li&gt;
&lt;li&gt;Require symbols/numbers/uppercase/lowercase&lt;/li&gt;
&lt;li&gt;Password expiration&lt;/li&gt;
&lt;li&gt;Password reuse prevention&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;We’re focusing on the last one today.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;How to Prevent Password Reuse in AWS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;✅ Option 1: AWS Console&lt;br&gt;
Go to IAM Console → &lt;a href="https://console.aws.amazon.com/iam/" rel="noopener noreferrer"&gt;https://console.aws.amazon.com/iam/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fydxhxj93qlwhrmja3dl6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fydxhxj93qlwhrmja3dl6.png" alt="AWS Console" width="800" height="385"&gt;&lt;/a&gt;&lt;br&gt;
Click Account Settings&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F57hjs9thev1itigacfxj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F57hjs9thev1itigacfxj.png" alt="Account Settings" width="223" height="253"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click “Change Password Policy”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F75v6idahg0ytokni2p85.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F75v6idahg0ytokni2p85.png" alt="Change Password Policy" width="800" height="196"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Check: ✅ “Prevent password reuse”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F7mzfuzyzuso8pl15vfkf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F7mzfuzyzuso8pl15vfkf.png" alt="password policy GUI" width="687" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enter a value for “Remember last N passwords” (e.g., 4)&lt;br&gt;
Click &lt;strong&gt;Save&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That’s it! Users can no longer reuse the last 4 passwords.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>iam</category>
      <category>passwordpolicy</category>
    </item>
    <item>
      <title>Running Docker Containers on a Read‑Only Root File System</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Fri, 04 Jul 2025 19:44:09 +0000</pubDate>
      <link>https://forem.com/mimahmed/running-docker-containers-on-a-read-only-root-file-system-4fa9</link>
      <guid>https://forem.com/mimahmed/running-docker-containers-on-a-read-only-root-file-system-4fa9</guid>
      <description>&lt;p&gt;In modern DevOps, immutability is a cornerstone of both security and reliability. Docker makes it straightforward to enforce immutability by mounting the container’s root file system as read‑only. This prevents any runtime modification—accidental or malicious—of the files baked into the image.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This lab‐style guide shows you how to:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Build a minimal image.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Launch a container with a read‑only root.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Prove—both manually and programmatically—that it really is read‑only.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Why lock the root file system?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Defense in depth – Attackers (or faulty scripts) can’t tamper with binaries or libraries.&lt;/li&gt;
&lt;li&gt;Operational consistency – Every container instance is bit‑for‑bit identical to the image.&lt;/li&gt;
&lt;li&gt;Stateless architecture – Ideal for workloads where state lives in external services, volumes, or databases.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“As the company’s DevOps engineer, you must deploy containers that cannot be modified in production. Your task: configure a container with a read‑only root and verify that the restriction works.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Objectives&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Build a Docker image for testing.&lt;/li&gt;
&lt;li&gt;Run the container with &lt;code&gt;--read-only.&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Validate that write attempts fail and confirm the flag via docker inspect.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;1. Build a test image&lt;/strong&gt;&lt;br&gt;
Create a new directory and add the following Dockerfile:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Use a lightweight, secure base image
FROM alpine:latest

# Create sample data to test read‑only behavior
RUN mkdir /data \
    &amp;amp;&amp;amp; echo "This is a read‑only test file." &amp;gt; /data/test.txt

WORKDIR /data
CMD ["sh"]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Build the image:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker build -t readonly-test .&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Run the container in read‑only mode&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Command: &lt;code&gt;docker run --rm -it --read-only readonly-test&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;--rm&lt;/code&gt; cleans up the container on exit.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;-it&lt;/code&gt; opens an interactive shell.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;--read-only&lt;/code&gt; mounts the root file system as read‑only.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You are now inside the container’s shell.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Attempt to write&lt;/strong&gt;&lt;br&gt;
Inside the container, try the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Append to existing file
echo "Trying to write…" &amp;gt;&amp;gt; /data/test.txt

# Create a new file
touch /data/newfile.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Expected outcome&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;sh: can't create /data/test.txt: Read-only file system&lt;br&gt;
touch: /data/newfile.txt: Read-only file system&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;4. Confirm programmatically&lt;/strong&gt;&lt;br&gt;
Open another terminal on the host:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Find the running container
docker ps

# Replace &amp;lt;container_id&amp;gt; with the actual ID or name
docker inspect &amp;lt;container_id&amp;gt; | grep '"ReadonlyRootfs"'
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;blockquote&gt;
&lt;p&gt;"ReadonlyRootfs": true,&lt;br&gt;
Docker’s metadata confirms the root file system is indeed read‑only.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;By combining a minimal image with the &lt;code&gt;--read-only&lt;/code&gt; flag, you have created an immutable runtime environment that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Blocks unauthorized changes.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Reduces attack surface.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Guarantees that every container matches the original image.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Add this technique to your DevOps toolkit whenever you need strict runtime integrity—whether for compliance, security hardening, or simply peace of mind.&lt;/p&gt;

</description>
      <category>docker</category>
      <category>aws</category>
      <category>container</category>
    </item>
    <item>
      <title>🔐 How to Remove Access Keys from Your AWS Root Account</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Thu, 29 May 2025 07:24:04 +0000</pubDate>
      <link>https://forem.com/aws-builders/how-to-remove-access-keys-from-your-aws-root-account-43ae</link>
      <guid>https://forem.com/aws-builders/how-to-remove-access-keys-from-your-aws-root-account-43ae</guid>
      <description>&lt;h2&gt;
  
  
  🔒 Why You Should Remove AWS Root Access Keys
&lt;/h2&gt;

&lt;p&gt;Using access keys for the AWS root user is a &lt;strong&gt;huge security risk&lt;/strong&gt;. The root account has &lt;strong&gt;unrestricted access&lt;/strong&gt; to your entire AWS environment. If the root keys are compromised, so is your entire AWS account.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✅ AWS recommends never using the root account for everyday tasks.&lt;/strong&gt; Instead, use IAM roles or users with fine-grained permissions.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠 Step-by-Step: Remove AWS Root Access Keys
&lt;/h2&gt;

&lt;h3&gt;
  
  
  ✅ Prerequisites
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;You must &lt;strong&gt;sign in as the root user&lt;/strong&gt; (not an IAM user).&lt;/li&gt;
&lt;li&gt;You should already have an &lt;strong&gt;IAM user or role&lt;/strong&gt; with admin permissions.&lt;/li&gt;
&lt;li&gt;Ensure &lt;strong&gt;no services or scripts&lt;/strong&gt; are actively using the root key.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  👣 Step 1: Sign in as Root
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Go to &lt;a href="https://aws.amazon.com/" rel="noopener noreferrer"&gt;https://aws.amazon.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;"Sign In to the Console"&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;"Root user"&lt;/strong&gt; and sign in with the root email + password.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  - Complete MFA if it's enabled (highly recommended).
&lt;/h2&gt;

&lt;p&gt;If you have keys you can see like this&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fzv7ui4xmfghmeakh91sx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fzv7ui4xmfghmeakh91sx.png" alt="aws root console" width="800" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  👣 Step 2: Navigate to Security Credentials
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Click your &lt;strong&gt;account name&lt;/strong&gt; at the top right.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;"Security credentials"&lt;/strong&gt; from the dropdown.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;a href="https://media2.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%2Fm93xh10pwd7tg4f3lfaw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fm93xh10pwd7tg4f3lfaw.png" alt="Security Credentials" width="494" height="507"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  👣 Step 3: Locate the Access Keys
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Scroll to the &lt;strong&gt;“Access keys”&lt;/strong&gt; section.&lt;/li&gt;
&lt;li&gt;You will see a list of existing access keys.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  - Keys may be in one of these states: &lt;strong&gt;Active&lt;/strong&gt;, &lt;strong&gt;Inactive&lt;/strong&gt;, or &lt;strong&gt;Deleted&lt;/strong&gt;.
&lt;/h2&gt;

&lt;p&gt;Select The Keys or All Keys to Delete&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fr2v0wnnaw45vu00k6x9y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fr2v0wnnaw45vu00k6x9y.png" alt="Locate the Access Keys" width="800" height="138"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on Actions and First Deactivate it (if active).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fddz2dvpsgvsmwqjde5ek.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fddz2dvpsgvsmwqjde5ek.png" alt="Deactivate Keys" width="800" height="135"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now Again Click Delete&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fkeuja7v2d6ovnfkx2cwv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fkeuja7v2d6ovnfkx2cwv.png" alt="Delete Keys" width="800" height="117"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  👣 Step 4: Delete the Access Key(s)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Click &lt;strong&gt;"Delete"&lt;/strong&gt; next to each active/inactive key.&lt;/li&gt;
&lt;li&gt;Confirm the deletion when prompted.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Ftj57h6aeidzwbttfg3ap.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Ftj57h6aeidzwbttfg3ap.png" alt="Delete Keys" width="731" height="588"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After Successful Delete you can see like this&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fgl6g84ms3quvwqawkuv6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fgl6g84ms3quvwqawkuv6.png" alt="Successful Delete" width="800" height="161"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now on Dashboard You can see like this&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fz1zopnmya3ygwwahe0wx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fz1zopnmya3ygwwahe0wx.png" alt="Dashboard No Access Keys Root User" width="800" height="233"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;h2&gt;
  
  
  💡 Tip: If unsure whether a key is still in use, &lt;strong&gt;deactivate&lt;/strong&gt; it first and observe if anything breaks. If not, proceed with deletion.
&lt;/h2&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devops</category>
      <category>cloud</category>
    </item>
    <item>
      <title>How to Install K3S on AWS EC2 &amp; Deploy Simple JS Game 🚀</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Mon, 09 Sep 2024 08:59:28 +0000</pubDate>
      <link>https://forem.com/aws-builders/how-to-install-k3s-on-aws-ec2-deploy-simple-js-game-3cpa</link>
      <guid>https://forem.com/aws-builders/how-to-install-k3s-on-aws-ec2-deploy-simple-js-game-3cpa</guid>
      <description>&lt;p&gt;In this tutorial you are going to learn How to setup K3S Cluster in EC2 and Join worker nodes and deploy a simple JavaScript Game.&lt;/p&gt;

&lt;p&gt;First we need to create EC2 Instances.If you don't know how to create an EC2 Instance you &lt;a href="https://www.techtarget.com/searchcloudcomputing/tutorial/How-to-create-an-EC2-instance-from-AWS-Console" rel="noopener noreferrer"&gt;can check this&lt;/a&gt; article.&lt;/p&gt;

&lt;h3&gt;
  
  
  Before You Start
&lt;/h3&gt;

&lt;h4&gt;
  
  
  You need
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;3 EC2 instances (1 master, 2 workers) &lt;/li&gt;
&lt;li&gt;Configured with permissions for the necessary ports (e.g. SSH, K3s API, NodePort).&lt;/li&gt;
&lt;li&gt;AWS CLI configured for your account.&lt;/li&gt;
&lt;/ul&gt;

&lt;h5&gt;
  
  
  Hardware Requirements:
&lt;/h5&gt;

&lt;p&gt;Hardware requirements scale based on the size of your deployments. Minimum recommendations are outlined here.&lt;/p&gt;

&lt;h4&gt;
  
  
  1. Minimum Hardware Requirements for Master Node:
&lt;/h4&gt;

&lt;p&gt;The master node in a Kubernetes cluster manages the control plane, handling tasks like scheduling, maintaining cluster state, and managing the API server. As such, it requires adequate resources to perform these tasks efficiently.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPU: 2 vCPUs (minimum)&lt;/li&gt;
&lt;li&gt;RAM: 2 GB (minimum); 4 GB or more recommended for production environments&lt;/li&gt;
&lt;li&gt;Storage: 10 GB (minimum)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  2. Minimum Hardware Requirements for Worker Nodes:
&lt;/h4&gt;

&lt;p&gt;Worker nodes in a Kubernetes cluster host the application workloads, running containers that are orchestrated by the master node. The requirements for worker nodes depend on the workloads they will run, but the following are the general minimum recommendations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPU: 1 vCPU (minimum); more depending on workload demands&lt;/li&gt;
&lt;li&gt;RAM: 1 GB (minimum); 2 GB or more recommended for moderate workloads&lt;/li&gt;
&lt;li&gt;Storage: 10 GB (minimum)&lt;/li&gt;
&lt;li&gt;Network: High-speed and low-latency network connectivity, especially for communication with the master node and other worker nodes&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;Example Configuration for AWS EC2:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Master Node: t3.medium (2 vCPUs, 4 GB RAM) for a small cluster&lt;/li&gt;
&lt;li&gt;Worker Nodes: t3.small (2 vCPUs, 2 GB RAM) or t3.medium for moderate workloads&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;h4&gt;
  
  
  We can see we have 3 Instances running
&lt;/h4&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%2Ffilstpxjf2awl2osuqd8.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%2Ffilstpxjf2awl2osuqd8.png" alt="AWS ec2 instance console"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Inbound Rules need to allow for K3s Nodes
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Protocol&lt;/th&gt;
&lt;th&gt;Port&lt;/th&gt;
&lt;th&gt;Source&lt;/th&gt;
&lt;th&gt;Destination&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;2379-2380&lt;/td&gt;
&lt;td&gt;Servers&lt;/td&gt;
&lt;td&gt;Servers&lt;/td&gt;
&lt;td&gt;Required only for HA with embedded etcd&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;6443&lt;/td&gt;
&lt;td&gt;Agents&lt;/td&gt;
&lt;td&gt;Servers&lt;/td&gt;
&lt;td&gt;K3s supervisor and Kubernetes API Server&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;UDP&lt;/td&gt;
&lt;td&gt;8472&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;Required only for Flannel VXLAN&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;10250&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;Kubelet metrics&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;UDP&lt;/td&gt;
&lt;td&gt;51820&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;Required only for Flannel Wireguard with IPv4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;UDP&lt;/td&gt;
&lt;td&gt;51821&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;Required only for Flannel Wireguard with IPv6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;5001&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;Required only for embedded distributed registry (Spegel)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;6443&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;All nodes&lt;/td&gt;
&lt;td&gt;Required only for embedded distributed registry (Spegel)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;The K3s server needs port 6443 to be accessible by all nodes.&lt;/li&gt;
&lt;li&gt;Typically, all outbound traffic is allowed.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 1: Install K3S on Master Node
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;In this tutorial I am using Ubuntu 22.04. If you are using any old version of Ubuntu you may face some issues with iptables.&lt;/code&gt; &lt;a href="https://docs.k3s.io/installation/requirements?os=debian#operating-systems" rel="noopener noreferrer"&gt;Check more here:&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Now&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;1.0 SSH your Master node (i am using web 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%2F4uiwt9gai6u3cd04gbw4.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%2F4uiwt9gai6u3cd04gbw4.png" alt="ssh-console-k3s-master"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Run Following Commands on terminal.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;1.1. &lt;code&gt;sudo su&lt;/code&gt; (for root privileges)&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%2Fabwycrp3837zlg2dz8d9.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%2Fabwycrp3837zlg2dz8d9.png" alt="move-sudo"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;1.2 &lt;code&gt;apt update&lt;/code&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%2Fr5k30rtv9f0cv1idh2tn.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%2Fr5k30rtv9f0cv1idh2tn.png" alt="apt-update"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;1.3. Now Install k3s on master node. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Command:&lt;/strong&gt; &lt;code&gt;curl -sfL https://get.k3s.io | sh -&lt;/code&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%2F2ytn5zjkrdhrgcr3k6px.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%2F2ytn5zjkrdhrgcr3k6px.png" alt="k3s-installation-done"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;1.4 &lt;strong&gt;Check Status&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;systemctl status k3s&lt;/code&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%2Fehpatt71mw0kq98u45ij.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%2Fehpatt71mw0kq98u45ij.png" alt="k3s-status"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Now Get the node token (needed to join worker nodes):
&lt;/h3&gt;

&lt;p&gt;You need this token to securely join worker nodes to the master node (also known as the control plane).&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;For Example&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Authentication&lt;/li&gt;
&lt;li&gt;Secure Communication&lt;/li&gt;
&lt;li&gt;Cluster Management&lt;/li&gt;
&lt;li&gt;Simplified Node Addition&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Command&lt;/strong&gt;&lt;br&gt;
   &lt;code&gt;sudo cat /var/lib/rancher/k3s/server/node-token&lt;/code&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%2Ft6sam7ue34f45z9odmk8.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%2Ft6sam7ue34f45z9odmk8.png" alt="k3s-master-token"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Prepare Worker Node
&lt;/h2&gt;

&lt;p&gt;Same Above we need to create 2 EC2 instances for worker nodes. For this tutorial we have two &lt;strong&gt;t3.medium&lt;/strong&gt; EC2 machine. Now SSH both worker nodes and perform the below tasks:&lt;/p&gt;

&lt;blockquote&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Install Docker in the both worker machine.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Join the machine in master node using the token.&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;2.0 Change the host name to Workwer-1 &amp;amp; Worker-2&lt;/li&gt;
&lt;li&gt;2.1 Install Docker&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

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

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;sudo su&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;apt update&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;apt install docker.io -y&lt;/code&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%2Fxkojq334ac3p5qf4yibi.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%2Fxkojq334ac3p5qf4yibi.png" alt="install docker"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;2.2 &lt;strong&gt;Check Status&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;systemctl status docker&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Worker-1&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%2Fy40tpyxem22iaybyghn8.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%2Fy40tpyxem22iaybyghn8.png" alt="docker-status-w2"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Worker-2&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%2Fpj06x4pdjt019ps3fc4j.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%2Fpj06x4pdjt019ps3fc4j.png" alt="docker-status-w2"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Join Worker Nodes to the Cluster (Master Node)
&lt;/h2&gt;

&lt;p&gt;First get the token form master node. We already collect the token earlier this tutorial. Now to join the nodes in master nodes run this command from worker nodes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Command&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;curl -sfL https://get.k3s.io | K3S_URL=https://&amp;lt;MasterNodePublicIP&amp;gt;:6443 K3S_TOKEN=&amp;lt;NodeToken&amp;gt; sh -&lt;/code&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Here change the &lt;code&gt;&amp;lt;MasterNodePublicIP&amp;gt;&lt;/code&gt; with your EC2 master node Public IP &amp;amp; &lt;code&gt;&amp;lt;NodeToken&amp;gt;&lt;/code&gt; with your token from master node.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Worker-1&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%2Fdp3xawu50vxw6tj79bgo.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%2Fdp3xawu50vxw6tj79bgo.png" alt="Worker-1"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Worker-2&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%2Fx5rwufymc1lomf1o7fbl.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%2Fx5rwufymc1lomf1o7fbl.png" alt="Worker-2"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Now Check the nodes list from master node
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Command:&lt;/strong&gt; &lt;code&gt;kubectl get nodes&lt;/code&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%2Fjwodshjbbcvfb6hlb9j3.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%2Fjwodshjbbcvfb6hlb9j3.png" alt="nodes-list"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Now Deploy a JS Game on k3s:
&lt;/h2&gt;

&lt;p&gt;To run an application on K3s, we need to create Kubernetes deployment and service files.&lt;/p&gt;

&lt;h3&gt;
  
  
  First Create a Namespace
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Kubernetes namespace is like a separate section within a Kubernetes cluster, where you can keep your resources organized and isolated from others. Think of it as different folders on your computer. Each namespace (or folder) can have its own set of applications, settings, and permissions, and they won’t interfere with each other.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Command:&lt;/strong&gt; &lt;code&gt;kubectl create namespace js-game&lt;/code&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%2Fv6y37utk1ol7u1sshkl8.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%2Fv6y37utk1ol7u1sshkl8.png" alt="create-namespace"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Now Create Kubernetes Deployment File:
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Command&lt;/strong&gt;: &lt;code&gt;nano js-game-app.yml&lt;/code&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%2Fywi4o58s9e9k1umao3w7.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%2Fywi4o58s9e9k1umao3w7.png" alt="yaml-file"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now Copy Paste the code into js-game-app.yml&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%2F6t0lipz7p845hj4cmdy4.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%2F6t0lipz7p845hj4cmdy4.png" alt="deployment-yml-file"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;in the Image line you can update your dockerhub or any image link.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Applying the Manifest
&lt;/h3&gt;

&lt;p&gt;Save this configuration to a file named js-game-app.yml and apply it using the following &lt;strong&gt;command:&lt;/strong&gt; &lt;code&gt;kubectl apply -f js-game-app.yml -n js-game&lt;/code&gt;&lt;br&gt;
`&lt;br&gt;
You will see this if everything is work correctly....&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%2Ftjngadypi2idr5164c93.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%2Ftjngadypi2idr5164c93.png" alt="k3s-service"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Verify the Deployment
&lt;/h3&gt;

&lt;p&gt;To check if the deployment, service, and ingress are created successfully, you can use the following commands:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;kubectl get deployments -n js-game&lt;/code&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%2Fz1d70174g01jw82le4s8.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%2Fz1d70174g01jw82le4s8.png" alt="developments"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;kubectl get services -n js-game&lt;/code&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%2Fjv2ndk1yi5yahapvjq3s.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%2Fjv2ndk1yi5yahapvjq3s.png" alt="services"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;kubectl get ingress -n js-game&lt;/code&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%2Fv2npkkvlndx34btoxegp.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%2Fv2npkkvlndx34btoxegp.png" alt="ingress"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Now check the pods running....
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Command:&lt;/strong&gt; &lt;code&gt;kubectl get pods -n js-game&lt;/code&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%2F7v0o6uhn0ui0998aidvt.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%2F7v0o6uhn0ui0998aidvt.png" alt="running-pods"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now open the browser and visit with your &lt;strong&gt;Master Node Public IP&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%2F9n346pcrq8k90i3dwd0w.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%2F9n346pcrq8k90i3dwd0w.png" alt="game-window"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Ref:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Docker Image: internaldev/jsgame:latest&lt;/li&gt;
&lt;li&gt;YAML File: &lt;a href="https://github.com/mimqupspy/k3s-yaml" rel="noopener noreferrer"&gt;https://github.com/mimqupspy/k3s-yaml&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>k3s</category>
      <category>devops</category>
      <category>sysops</category>
    </item>
    <item>
      <title>Elevate Your Experience: Amazon Q, the Next-Gen AI Assistant by AWS at re:Invent 2023 🚀🔮</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Wed, 31 Jan 2024 18:24:54 +0000</pubDate>
      <link>https://forem.com/aws-builders/amazon-q-a-new-generative-ai-powered-assistant-by-aws-1i62</link>
      <guid>https://forem.com/aws-builders/amazon-q-a-new-generative-ai-powered-assistant-by-aws-1i62</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv9xciqs6i0zkdgtz3804.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv9xciqs6i0zkdgtz3804.png" alt="re:Invent 2023" width="800" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Recently AWS re:Invent 2023 Was Happened. There are lots of amazing new lunches. But I think I want to share my experience is Amazon Q.&lt;/p&gt;

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

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

&lt;blockquote&gt;
&lt;p&gt;Image Source: AWS&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Amazon Q, a new generative AI-powered assistant intended for work, at AWS re:Invent in one of the biggest announcements to date.
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;What's the Features&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Filtering using metadata – Use document attributes to customize and control the end user chat experience. Currently supported only if you use the Amazon Q API.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Source attribution with citations – Verify responses using Amazon Q source attributions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Upload files and chat – Let end users upload files directly into chat and use uploaded file data to perform web experience tasks.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Quick prompts – Feature sample prompts to inform end users of the capabilities of their Amazon Q web experience.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Users may converse, find solutions to issues, create content, and obtain insight using Amazon Q. Using basic natural language cues, Amazon Q assists business users in completing tasks.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;AWS said Amazon Q was trained on 17 years’ worth of AWS knowledge and can be used to ask questions specific to AWS use. It can suggest the best AWS services for a project.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Areas of expertise
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Your business
&lt;/h3&gt;

&lt;p&gt;Amazon Q can be tailored to your business by connecting it to company data, information, and systems, made simple with more than 40 built-in connectors. &lt;/p&gt;

&lt;h3&gt;
  
  
  AWS
&lt;/h3&gt;

&lt;p&gt;Amazon Q is an expert on patterns in the AWS Well-Architected Framework, best practices, documentation, and solution implementations, making it easier and faster for you to explore new services and capabilities, learn unfamiliar technologies, and architect solutions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Amazon QuickSight
&lt;/h3&gt;

&lt;p&gt;Amazon QuickSight is a unified business intelligence (BI) service built for the cloud that offers interactive dashboards, paginated reports, and embedded analytics, plus natural language querying capabilities. &lt;/p&gt;

&lt;h3&gt;
  
  
  Amazon Connect
&lt;/h3&gt;

&lt;p&gt;In Amazon Connect, our contact center service, Amazon Q helps your customer service agents provide better customer service.&lt;/p&gt;

&lt;h3&gt;
  
  
  AWS Supply Chain
&lt;/h3&gt;

&lt;p&gt;Using Amazon Q in Supply Chain (coming soon), inventory managers, supply and demand planners, and others will be able to ask and get intelligent answers about what is happening in their supply chain.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Know More: &lt;a href="https://aws.amazon.com/q/" rel="noopener noreferrer"&gt;https://aws.amazon.com/q/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  How Amazon Q works
&lt;/h2&gt;

&lt;p&gt;With Amazon Q, you can build an interactive chat application for your organization’s end users, using a combination of your enterprise data and large language model knowledge, or enterprise data only. The following sections outline how Amazon Q works.&lt;/p&gt;

&lt;h3&gt;
  
  
  Demo
&lt;/h3&gt;

&lt;p&gt;Step 1: Go to your AWS Console and on the right side click on the Q Icon.&lt;/p&gt;

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

&lt;p&gt;Step 2: Let's Learn S3 First🙂&lt;br&gt;
Q1: Ask Q "How to Turn on S3 Versioning" &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxiuzz8wbx35j4n0casm9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxiuzz8wbx35j4n0casm9.png" alt="S3 Question to Q" width="254" height="619"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here Q Shows me some suggestion.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Q2: How to reduce my EC2 latency issue? &lt;/p&gt;

&lt;p&gt;Here Q guide me how to troubleshoot my latency issue. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1mmwkbk5bmhxr0goniy1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1mmwkbk5bmhxr0goniy1.png" alt="EC2 latency issue" width="257" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Q3: Learning about other AWS products&lt;/p&gt;

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

&lt;h4&gt;
  
  
  Amazon Q Pricing
&lt;/h4&gt;

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

&lt;p&gt;&lt;em&gt;During Writing this blog there are 2 Pricing model please check the official Amazon Q Page for latest price.&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Link: &lt;a href="https://aws.amazon.com/q/pricing" rel="noopener noreferrer"&gt;https://aws.amazon.com/q/pricing&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>amazonq</category>
      <category>ai</category>
    </item>
    <item>
      <title>How to Stop Objects from Being Upload to Amazon S3 Without Encryption using Bucket Policies</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Wed, 20 Dec 2023 13:42:31 +0000</pubDate>
      <link>https://forem.com/aws-builders/how-to-stop-objects-from-being-upload-to-amazon-s3-without-encryption-using-bucket-policies-4jie</link>
      <guid>https://forem.com/aws-builders/how-to-stop-objects-from-being-upload-to-amazon-s3-without-encryption-using-bucket-policies-4jie</guid>
      <description>&lt;p&gt;To prevent uploads of unencrypted objects to Amazon S3, you can enforce encryption at the bucket level or use bucket policies to require server-side encryption. Amazon S3 provides several options for server-side encryption, including Amazon S3 managed keys (SSE-S3), AWS Key Management Service (AWS KMS) keys (SSE-KMS), and customer-provided keys (SSE-C). Here are steps you can take to enforce encryption.&lt;/p&gt;

&lt;h4&gt;
  
  
  In this article we are going to learn how to do this using Bucket Policies.
&lt;/h4&gt;

&lt;h3&gt;
  
  
  Step 1:
&lt;/h3&gt;

&lt;p&gt;Go to your S3 Console &amp;amp; Choose or create a Bucket&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fvmq18og23luj8wirndym.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fvmq18og23luj8wirndym.png" alt="S3 Conosle" width="800" height="547"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2:
&lt;/h3&gt;

&lt;p&gt;Now to go the permission tab and scroll down and choose &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fnm1e8da6wl4bsfln7za6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fnm1e8da6wl4bsfln7za6.png" alt="S3 Bucket" width="800" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now Click on Policy generator&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fjc7esu5emydzxdk0f9tc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fjc7esu5emydzxdk0f9tc.png" alt="Bucket Policy" width="488" height="152"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now go back policy page and copy the bucket ARN (We Need This Later)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fp519afk4jmkup8ofq1wn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fp519afk4jmkup8ofq1wn.png" alt="bucket ARN" width="519" height="428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Config Bucket Policy
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fsp2jnz72crvwod3268d0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fsp2jnz72crvwod3268d0.png" alt="Bucket Policy" width="800" height="768"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now Click add Statement &amp;amp; Click Generate Policy&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F4bdj2yv780movb7vtg5e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F4bdj2yv780movb7vtg5e.png" alt="Generate Policy" width="800" height="151"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Now Copy the JSON and past it to bucket policy box
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F5gwsnbs52ekn0oey3u4l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F5gwsnbs52ekn0oey3u4l.png" alt="Policy JSON" width="800" height="499"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Resource Line Just add ' /* ' and click save changes. This Means Every Objects in this Bucket.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fis7zgmq36xjr7e0n05dw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fis7zgmq36xjr7e0n05dw.png" alt="policy" width="580" height="549"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F4ejjsgfuio5f6haj9z88.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F4ejjsgfuio5f6haj9z88.png" alt="save changes" width="295" height="159"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F2drjy5yuemb3tly4xj62.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F2drjy5yuemb3tly4xj62.png" alt="save sucessfull" width="743" height="262"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now go back Object Tab and upload some files. The upload will failed unless you choose Encryption Options. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fbw3nd9s2adkt020l7cat.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fbw3nd9s2adkt020l7cat.png" alt="upload failed" width="800" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Before
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F4sv83x4s0fsiqhxe2246.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F4sv83x4s0fsiqhxe2246.gif" alt="Unencrypted" width="1914" height="807"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  After
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Fjixv66fhm6ork8921p92.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Fjixv66fhm6ork8921p92.gif" alt="encrypted" width="1914" height="807"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion:
&lt;/h3&gt;

&lt;p&gt;Securing your S3 bucket against unencrypted file uploads is a proactive step towards maintaining the integrity and confidentiality of your data. By following the guidelines outlined in this post, you'll be equipped with the knowledge to establish a robust security framework for your AWS S3 bucket. Stay ahead of potential threats and safeguard your data with these essential practices.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>s3bucketpolicy</category>
      <category>encryption</category>
      <category>saac03</category>
    </item>
    <item>
      <title>AWS Startup Day 2023 in Dhaka, Bangladesh: A Day of Learning and Innovation</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Sat, 07 Oct 2023 16:10:52 +0000</pubDate>
      <link>https://forem.com/aws-builders/aws-startup-day-2023-in-dhaka-bangladesh-a-day-of-learning-and-innovation-2dig</link>
      <guid>https://forem.com/aws-builders/aws-startup-day-2023-in-dhaka-bangladesh-a-day-of-learning-and-innovation-2dig</guid>
      <description>&lt;p&gt;On October 5, 2023, at Daffodil Plaza, 4/2 Sobhanbag, Mirpur Road, Dhanmondi, Dhaka-1207, Bangladesh, a momentous event took place—the first-ever AWS Startup Day. This event brought together cloud enthusiasts, startup founders, and tech aficionados eager to explore the boundless opportunities that AWS (Amazon Web Services) offers.&lt;/p&gt;

&lt;p&gt;The day was packed with knowledge-sharing sessions, hands-on AWS DevOps, ML/AI workshops, and deep dives into security practices.&lt;/p&gt;

&lt;p&gt;One of the standout features of AWS Startup Day was the comprehensive workshop on AWS DevOps, which provided attendees with practical skills and knowledge to efficiently deploy, manage, and scale applications on the AWS platform. The ML/AI workshop delved into the fascinating world of machine learning and artificial intelligence, showing participants how AWS can be leveraged to build intelligent applications.&lt;/p&gt;

&lt;p&gt;In addition to technical sessions, the event also focused on the business side of startups. Entrepreneurs learned how to navigate the intricate path of starting a new venture and scaling it to reach new heights.&lt;/p&gt;

&lt;p&gt;The highlight of the day was the announcement of AWS credits awarded to three outstanding startups. These credits, $10,000 AWS Activate Credits for Qualified Startup, will enable these startups to host their solutions on AWS and utilize AWS services to tackle complex problems.&lt;/p&gt;

&lt;p&gt;The AWS Startup Day in Dhaka, Bangladesh, marked a pivotal moment in the region's tech landscape. It brought together a community of like-minded individuals passionate about technology, innovation, and entrepreneurship. As the day concluded, attendees left with not only newfound knowledge but also a renewed sense of enthusiasm to harness the power of AWS and embark on their startup journeys.&lt;/p&gt;

&lt;p&gt;I am Really enjoy to help the participants in the workshop sessions to archive their goal.&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%2Fyi7q0zdfd5jdnbrxvzlv.jpg" 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%2Fyi7q0zdfd5jdnbrxvzlv.jpg" alt="awsmentor"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Some Glimpses of the Session.&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%2Fucl5vhri9tn7hwsdsurx.jpeg" 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%2Fucl5vhri9tn7hwsdsurx.jpeg" alt="AWS Startup Day Pic"&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%2F9c6wi92ahgf1b92v8z7j.jpg" 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%2F9c6wi92ahgf1b92v8z7j.jpg" alt="AWS Startup Day Pic"&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%2Ferpbsi4sjk04rrxyflr4.jpeg" 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%2Ferpbsi4sjk04rrxyflr4.jpeg" alt="AWS Startup Day Pic"&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%2Fzc4htfoue6sz8c0mjdwd.jpeg" 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%2Fzc4htfoue6sz8c0mjdwd.jpeg" alt="AWS Startup Day Pic"&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%2Fbxorv46tjkl4z3jqs3mj.jpeg" 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%2Fbxorv46tjkl4z3jqs3mj.jpeg" alt="AWS Startup Day Pic"&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%2F79gmbovsnz5ttahz24jg.jpg" 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%2F79gmbovsnz5ttahz24jg.jpg" alt="AWS Startup Day Pic"&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%2Fruni4yrgqeylnibuoow2.jpeg" 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%2Fruni4yrgqeylnibuoow2.jpeg" alt="Closing Ceremony"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and Lovely Food&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%2Fhpq9k08r65vby4xro1b8.jpg" 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%2Fhpq9k08r65vby4xro1b8.jpg" alt="AWS Startup Day Pic Food"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  List of Workshops
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;UI/UX/Story - Designing your Startup with FIGMA&lt;/li&gt;
&lt;li&gt;App Build - Build your application utilizing Amplify (Presentation and Hands-on Workshop)
Link: &lt;a href="https://catalog.workshops.aws/amplify-core/en-US/01-introduction" rel="noopener noreferrer"&gt;https://catalog.workshops.aws/amplify-core/en-US/01-introduction&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;GenAI - Integrate GenAI into your Startup (Presentation and Hands on Workshop)
Link:&lt;a href="https://catalog.us-east-1.prod.workshops.aws/workshops/972fd252-36e5-4eed-8608-743e84957f8e/en-US/lab1" rel="noopener noreferrer"&gt;https://catalog.us-east-1.prod.workshops.aws/workshops/972fd252-36e5-4eed-8608-743e84957f8e/en-US/lab1&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;p&gt;Integrate AI/ML into your application (Presentation and Hand on Workshop)&lt;br&gt;
Links: &lt;br&gt;
&lt;a href="https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-custom-models.html" rel="noopener noreferrer"&gt;https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-custom-models.html&lt;/a&gt;&lt;br&gt;
&lt;a href="https://aws.amazon.com/marketplace/b/57003bb6-9ad2-4c4e-89df-018b56a5af17?category=57003bb6-9ad2-4c4e-89df-018b56a5af17" rel="noopener noreferrer"&gt;https://aws.amazon.com/marketplace/b/57003bb6-9ad2-4c4e-89df-018b56a5af17?category=57003bb6-9ad2-4c4e-89df-018b56a5af17&lt;/a&gt;&lt;br&gt;
&lt;a href="https://aws.amazon.com/personalize/features/?trk=a4abf964-0e19-44b8-87c3-61cfeb2877ed&amp;amp;sc_channel=ps&amp;amp;ef_id=Cj0KCQjw1OmoBhDXARIsAAAYGSH538XNLBk_pa5VQjPE8SR_M-ffacFHCmlilIqvEj6RrKCRswMnB0QaAsTQEALw_wcB:G:s&amp;amp;s_kwcid=AL!4422!3!652868433298!p!!g!!aws%20personalization!19909695542!150385746209" rel="noopener noreferrer"&gt;https://aws.amazon.com/personalize/features/?trk=a4abf964-0e19-44b8-87c3-61cfeb2877ed&amp;amp;sc_channel=ps&amp;amp;ef_id=Cj0KCQjw1OmoBhDXARIsAAAYGSH538XNLBk_pa5VQjPE8SR_M-ffacFHCmlilIqvEj6RrKCRswMnB0QaAsTQEALw_wcB:G:s&amp;amp;s_kwcid=AL!4422!3!652868433298!p!!g!!aws%20personalization!19909695542!150385746209&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scaling your application with DevSecOps (Presentation and Hands on Workshop)&lt;br&gt;
Link: &lt;a href="https://samin-bjit.github.io/devsecops-in-aws/" rel="noopener noreferrer"&gt;https://samin-bjit.github.io/devsecops-in-aws/&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>aws</category>
      <category>awsstartupday</category>
      <category>awsworkshops</category>
      <category>awsinnovation</category>
    </item>
    <item>
      <title>Install Java 11 on Amazon Linux 2</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Wed, 11 Jan 2023 09:35:31 +0000</pubDate>
      <link>https://forem.com/aws-builders/install-java-11-on-amazon-linux-2-2k1i</link>
      <guid>https://forem.com/aws-builders/install-java-11-on-amazon-linux-2-2k1i</guid>
      <description>&lt;h4&gt;
  
  
  First SSH Your Linux Machine
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Flp64c1goif6u0wqu1eia.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Flp64c1goif6u0wqu1eia.png" alt="SSH EC2" width="800" height="492"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Run the yum update command. Optionally, you can add the --security flag to apply only security updates
&lt;/h3&gt;

&lt;p&gt;Command: sudo yum update&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;img src="https://media2.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%2Fpizdi1mpnm6rkie0u5iy.png" alt="yum update" width="800" height="267"&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  In order to install java 11:
&lt;/h2&gt;

&lt;p&gt;sudo amazon-linux-extras install java-openjdk11&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Flq1mktxdkm03h95mlooo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Flq1mktxdkm03h95mlooo.png" alt="Java Install" width="781" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Type "Y" for install packages&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Frfcwadmlxev2k1c8hrrl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Frfcwadmlxev2k1c8hrrl.png" alt="Y" width="434" height="120"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F11ol2ic9fb6dvq0hptf8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F11ol2ic9fb6dvq0hptf8.png" alt="Package installation" width="646" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wait until all packages finished install&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2F49awli7gtx9eqbstra46.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2F49awli7gtx9eqbstra46.png" alt="Finished Install" width="472" height="599"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Check Java Instillation
&lt;/h2&gt;

&lt;p&gt;Command: java -version&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.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%2Firvv3vohhj3wb8ra3hst.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.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%2Firvv3vohhj3wb8ra3hst.png" alt="Java Check" width="800" height="158"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>amazonlinux</category>
      <category>installjava11</category>
    </item>
    <item>
      <title>Understanding AWS Market Place?</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Sat, 05 Nov 2022 08:47:34 +0000</pubDate>
      <link>https://forem.com/aws-builders/understanding-aws-market-place-ji3</link>
      <guid>https://forem.com/aws-builders/understanding-aws-market-place-ji3</guid>
      <description>&lt;p&gt;In General Marketplace is a place or platform where you can find Goods or product for buy. Also in market place where vendors can come together to sell their products or services to a curated customer base.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is AWS Market Place?
&lt;/h2&gt;

&lt;p&gt;AWS market place is virtual place where different vendors and developer sell their software or services which we can use when we build and architect our applications or solutions on AWS. &lt;/p&gt;

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

&lt;p&gt;There are lots of Categories you found when you land on AWS Market Place Site. &lt;/p&gt;

&lt;p&gt;For Example,&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe15pku9d1tq6oess94kq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe15pku9d1tq6oess94kq.png" alt="AWS Market Place Categories" width="800" height="283"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you can see below image you can purchase ready-made WordPress Solutions in AWS Market Place. With that you can easily deploy a WordPress site with zero knowledge of Infrastructure.&lt;/p&gt;

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

&lt;p&gt;You can also find lots of Solutions on there.&lt;/p&gt;

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

&lt;p&gt;Visit and Explore AWS Market Place: &lt;a href="https://aws.amazon.com/marketplace" rel="noopener noreferrer"&gt;https://aws.amazon.com/marketplace&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;

</description>
      <category>aws</category>
      <category>awsmarketplace</category>
    </item>
    <item>
      <title>Amazon EC2 Master Class</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Mon, 01 Aug 2022 06:17:54 +0000</pubDate>
      <link>https://forem.com/aws-builders/amazon-ec2-master-class-57fi</link>
      <guid>https://forem.com/aws-builders/amazon-ec2-master-class-57fi</guid>
      <description>&lt;p&gt;In this series of blog I will discuss every key parts of Amazon EC2 that everybody should know.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is EC2?
&lt;/h2&gt;

&lt;p&gt;So, When you first start your cloud learning journey on AWS you heard the word EC2. But, What is EC2 and what can we do with EC2?&lt;/p&gt;

&lt;p&gt;Ok, I will tell you what is EC2. First of all I believe you already know what is a Server. &lt;/p&gt;

&lt;p&gt;But here i recap what a server is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A server is a piece of hardware or software that offers a &lt;br&gt;
  service to a client—also known as another computer program—and &lt;br&gt;
  its user. The actual computer that a server program runs on is &lt;br&gt;
  usually referred to as a server in a data center.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuhoauzgh96h6in347y8x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuhoauzgh96h6in347y8x.png" alt="What is a Server" width="363" height="218"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So, EC2 is a virtual server that runs on a cloud providers (AWS) datacenter. That's it. Super cool! 😎&lt;/p&gt;

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

&lt;p&gt;EC2 = &lt;b&gt;E&lt;/b&gt;lastic &lt;b&gt;C&lt;/b&gt;omputing &lt;b&gt;C&lt;/b&gt;loud. &lt;/p&gt;

&lt;h2&gt;
  
  
  What is the Use of AWS EC2?
&lt;/h2&gt;

&lt;p&gt;EC2 also allows users to build apps to automate scaling according to changing needs and peak periods, and makes it simple to deploy virtual servers and manage storage, lessening the need to invest in hardware and helping streamline development processes.&lt;/p&gt;

&lt;p&gt;Next part we will discuss about the key components of AWS EC2 what makes the EC2 great.&lt;/p&gt;

&lt;p&gt;If you need to deploy your app on cloud you can &lt;a href="https://www.fiverr.com/mimahmedjoy/setup-your-websites-on-azure-aws-gcp-digital-ocen" rel="noopener noreferrer"&gt;knock me&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ec2</category>
      <category>virtualmachine</category>
      <category>server</category>
    </item>
    <item>
      <title>How to Create a VM on Google Cloud With Web Console</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Wed, 15 Jun 2022 04:50:45 +0000</pubDate>
      <link>https://forem.com/mimahmed/how-to-create-a-vm-on-google-cloud-with-web-console-2k4a</link>
      <guid>https://forem.com/mimahmed/how-to-create-a-vm-on-google-cloud-with-web-console-2k4a</guid>
      <description>&lt;p&gt;Hello, Everyone in this blog i will show you how you can create a virtual machine in Google Cloud.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1&lt;/strong&gt;: Go to Google Cloud Console: &lt;a href="https://console.cloud.google.com" rel="noopener noreferrer"&gt;https://console.cloud.google.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Login With your username and password.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2&lt;/strong&gt;: Now Click on the Hamburger Menu and Choose Compute Engine and Click VM Instances.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsgnkbzj9s8cgtclnlnq5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsgnkbzj9s8cgtclnlnq5.png" alt="Image description" width="800" height="394"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Step 3&lt;/strong&gt;: If you have a new account click on Enable API&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faejucy2fo065o33v4as5.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faejucy2fo065o33v4as5.PNG" alt="Image description" width="800" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wait Few Minutes to Enable The API.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F95ulu42tohlwc004ktf7.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F95ulu42tohlwc004ktf7.PNG" alt="Image description" width="399" height="248"&gt;&lt;/a&gt;&lt;br&gt;
After Successfully Enable The API you will see a notification like this.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5bzn4oive7dxbk3eevdv.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5bzn4oive7dxbk3eevdv.PNG" alt="Image description" width="800" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4&lt;/strong&gt;: Now Click on Create Instance&lt;/p&gt;

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

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

&lt;p&gt;Now Click on Create&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6afesc2zghggggzusc4x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6afesc2zghggggzusc4x.png" alt="Image description" width="477" height="111"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wait Some Time after few moments your VM Will Created.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzbyivj9nai9tjwreukgm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzbyivj9nai9tjwreukgm.png" alt="Image description" width="759" height="200"&gt;&lt;/a&gt;&lt;br&gt;
After Successfully created your VM you will get information like this.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1osfgaupsnu05z9fy2xi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1osfgaupsnu05z9fy2xi.png" alt="Image description" width="800" height="80"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can now access your VM Via SSH. &lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmll09jgewlu26atmaz8f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmll09jgewlu26atmaz8f.png" alt="Image description" width="711" height="402"&gt;&lt;/a&gt;&lt;/p&gt;

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

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

&lt;p&gt;Thanks&lt;/p&gt;

</description>
      <category>googlecloud</category>
      <category>virtualmachine</category>
      <category>computeinstance</category>
    </item>
    <item>
      <title>How to fix Error deleting Snapshots on AWS EC2.</title>
      <dc:creator>Mim Ahmed</dc:creator>
      <pubDate>Sat, 25 Dec 2021 15:08:26 +0000</pubDate>
      <link>https://forem.com/aws-builders/how-to-fix-error-deleting-snapshots-on-aws-ec2-55h8</link>
      <guid>https://forem.com/aws-builders/how-to-fix-error-deleting-snapshots-on-aws-ec2-55h8</guid>
      <description>&lt;p&gt;Sometimes you have some EBS volume occurring cost but you don't have any EC2 Instance Running.  &lt;/p&gt;

&lt;p&gt;You May Have Take Snapshot some EC2 Machine and forget later. Let's find out how to fix this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyhavhv8di98tujs91cvr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyhavhv8di98tujs91cvr.png" alt="Error deleting Snapshots" width="775" height="296"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;First Copy The AMI ID.&lt;/p&gt;

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

&lt;p&gt;Now Go TO AMI&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmw898s362jhfeej7bj4p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmw898s362jhfeej7bj4p.png" alt="AMI LIST" width="202" height="469"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now Search The AMI By The ID and you will found the AMI Snap&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7pi9nopx9xupuvkv9ctd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7pi9nopx9xupuvkv9ctd.png" alt="AMI Snap List" width="800" height="176"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now Delete This Snap.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fltg7xsjvqyqqf3xjj4i1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fltg7xsjvqyqqf3xjj4i1.png" alt="Delete Snap Dialog" width="749" height="275"&gt;&lt;/a&gt;&lt;br&gt;
Click Delete&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdvvontz9x3on1s86lb7f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdvvontz9x3on1s86lb7f.png" alt="Snap Delete" width="408" height="235"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now You Can Go Back EBS Snapshots Again and Delete the Volume.&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ec2</category>
      <category>ebs</category>
      <category>snapshots</category>
    </item>
  </channel>
</rss>
