<?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>DEV Community: Omshree Butani</title>
    <description>The latest articles on DEV Community by Omshree Butani (@omshree).</description>
    <link>https://dev.to/omshree</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%2F1080828%2F9ef1d4a8-3959-4ef2-9e46-907d01723074.jpeg</url>
      <title>DEV Community: Omshree Butani</title>
      <link>https://dev.to/omshree</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/omshree"/>
    <language>en</language>
    <item>
      <title>Starting Your Journey as an AWS Community Builder</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Wed, 04 Mar 2026 17:17:33 +0000</pubDate>
      <link>https://dev.to/aws-builders/starting-your-journey-as-an-aws-community-builder-1kd7</link>
      <guid>https://dev.to/aws-builders/starting-your-journey-as-an-aws-community-builder-1kd7</guid>
      <description>&lt;h2&gt;
  
  
  Welcome to the AWS Community Builders Journey
&lt;/h2&gt;

&lt;p&gt;Every year when the AWS Community Builders cohort is announced, something special happens across the cloud community. People celebrate... friends tag each other... mentors feel proud... and many builders quietly reflect on the journey that brought them here. From today morning I am receiving tons of messages and mentions about how I have helped them in their journey to become a community builder... and honestly, YES I FEEL PROUD. &lt;/p&gt;

&lt;p&gt;If you are one of the newly selected AWS Community Builders this year, &lt;em&gt;congratulations&lt;/em&gt;. 🎉 Take a moment to truly appreciate it. It is one of the big achievements.&lt;/p&gt;

&lt;p&gt;Getting into the program is not just about being selected. It is recognition of the effort you have already been putting into learning, sharing knowledge, helping others, and contributing to the AWS cloud community.&lt;/p&gt;

&lt;p&gt;But here’s something important to remember.&lt;/p&gt;

&lt;p&gt;Becoming an AWS Community Builder is not the destination. It is the beginning of a new chapter.&lt;/p&gt;

&lt;p&gt;As someone once said,&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Community is built when people choose to share what they know and help others move forward.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This program is built on that spirit.&lt;/p&gt;

&lt;p&gt;So if you have just started your journey as an AWS Community Builder, here are a few thoughts on how you can make the most of this experience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step Into the Community&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One of the first things you will notice after joining the program is the &lt;em&gt;AWS Community Builders Slack workspace.&lt;/em&gt; It brings together builders from all over the world, working across different technologies and industries.&lt;/p&gt;

&lt;p&gt;At first it might feel like a lot, but spend some time exploring.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some good first steps include:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Introduce yourself in the &lt;em&gt;introductions channel&lt;/em&gt;. Share where you are from, what you work on, and what areas of AWS interest you.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Join channels related to your technical interests such as serverless, security, AI/ML, containers, DevOps, or data engineering. And if you are a women, join our women-in-tech channel, you would love it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Read through ongoing discussions and learn from the conversations happening across the community.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Connect with other builders, ask questions, and offer help where you can.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This space is designed to be collaborative. Everyone here is learning something new, and everyone is willing to help.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Every builder in the community is both a learner and a teacher.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Contribute Consistently&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The core of the Community Builders program is contribution. What matters most is showing up consistently and sharing what you learn.&lt;/p&gt;

&lt;p&gt;You can contribute in many different ways depending on what feels natural to you.&lt;/p&gt;

&lt;p&gt;Some common ways builders contribute include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Writing blog posts explaining AWS services or architectures&lt;/li&gt;
&lt;li&gt;Sharing technical insights or learning experiences on LinkedIn&lt;/li&gt;
&lt;li&gt;Creating tutorials or walkthroughs&lt;/li&gt;
&lt;li&gt;Recording technical videos or demos&lt;/li&gt;
&lt;li&gt;Speaking at meetups, webinars, or conferences&lt;/li&gt;
&lt;li&gt;Mentoring beginners who are starting their cloud journey&lt;/li&gt;
&lt;li&gt;Contributing to open source projects&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You do not have to do &lt;em&gt;everything&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Choose a format that works for you and focus on being &lt;em&gt;consistent&lt;/em&gt;. Even one thoughtful piece of content each month can help many people who are learning the same technologies.&lt;/p&gt;

&lt;p&gt;When you document your learning journey, you create a path that others can follow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Keep Learning and Building&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Another beautiful aspect of the program is the opportunity to grow technically. Community Builders often get access to learning sessions, technical workshops, AWS credits, certification benefits, and community events.&lt;/p&gt;

&lt;p&gt;Use these opportunities wisely.&lt;/p&gt;

&lt;p&gt;Some helpful things you can do include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Experiment with new AWS services that you have never used before&lt;/li&gt;
&lt;li&gt;Build small projects to explore real use cases&lt;/li&gt;
&lt;li&gt;Document the architectures and lessons you learned&lt;/li&gt;
&lt;li&gt;Share tutorials or deep dives into services you explored&lt;/li&gt;
&lt;li&gt;Attend technical sessions and learn from other builders&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;“The best way to truly understand cloud is to build something with it.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Over time, these experiments and projects become valuable learning resources for others.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Support and Help Others&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One of the strongest values of the AWS community is helping others grow.&lt;/p&gt;

&lt;p&gt;As a Community Builder, you will often see people asking questions, seeking advice, or trying to solve technical challenges.&lt;/p&gt;

&lt;p&gt;Whenever possible, try to help.&lt;/p&gt;

&lt;p&gt;You can support the community by:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Answering questions when you know the solution&lt;/li&gt;
&lt;li&gt;Sharing resources or documentation that might help someone&lt;/li&gt;
&lt;li&gt;Guiding beginners who are exploring AWS for the first time&lt;/li&gt;
&lt;li&gt;Collaborating with other builders to solve technical challenges
You are not expected to know everything.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But the willingness to help others is what truly defines a community builder.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Knowledge becomes more powerful when it is shared.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Show Up Beyond the Screen&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;While online communities are powerful, meeting people in person can be equally impactful.&lt;/p&gt;

&lt;p&gt;If you get the opportunity, try to attend community events and AWS gatherings.&lt;/p&gt;

&lt;p&gt;Some examples include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Local AWS user group meetups&lt;/li&gt;
&lt;li&gt;Community-led cloud events like AWS Community Days, AWS re:Invent re:Caps, immersion days&lt;/li&gt;
&lt;li&gt;AWS Summits&lt;/li&gt;
&lt;li&gt;Conferences such as AWS re:Invent&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These events create opportunities to meet fellow builders, exchange ideas, and build long-term connections.&lt;/p&gt;

&lt;p&gt;Some of the most meaningful collaborations in the tech community start with a simple conversation at an event.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For Those Who Applied But Were Not Selected&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you applied for the AWS Community Builders program but did not get selected this time, please do not feel discouraged.&lt;/p&gt;

&lt;p&gt;Every year the program receives thousands of applications from passionate cloud professionals around the world. Not getting selected does not mean your work or contributions are not valuable.&lt;/p&gt;

&lt;p&gt;Many Community Builders today were rejected once or even multiple times before eventually being accepted. I personally was rejected in my first try and I felt devastated and felt demotivated but I still applied next time.&lt;/p&gt;

&lt;p&gt;If you plan to apply again next year, here are some things you can focus on.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Continue learning and building projects on AWS&lt;/li&gt;
&lt;li&gt;Write blogs or posts explaining services and architectures&lt;/li&gt;
&lt;li&gt;Share your learning journey publicly&lt;/li&gt;
&lt;li&gt;Speak at local meetups or online community events&lt;/li&gt;
&lt;li&gt;Help others in forums, Slack communities, or developer groups&lt;/li&gt;
&lt;li&gt;Contribute to open source or technical communities&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Over time these contributions build a strong record of your impact.&lt;/p&gt;

&lt;p&gt;When the next application cycle opens, you will have a clear story to share about how you supported and contributed to the cloud community.&lt;/p&gt;

&lt;p&gt;And remember something important.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“You don’t need a title to be part of a community.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If you are learning, sharing, and helping others grow, you are already contributing in meaningful ways.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Real Meaning of Being a Community Builder&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;At its core, the AWS Community Builders program is not about recognition or visibility. It is about people who care about technology and who enjoy helping others learn.&lt;/p&gt;

&lt;p&gt;It is about builders who take the time to share knowledge, support beginners, and strengthen the community.&lt;/p&gt;

&lt;p&gt;If you are part of the new cohort, welcome to an incredible journey. 🌍&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Learn deeply.&lt;br&gt;
Share generously.&lt;br&gt;
Support others along the way.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;And most importantly, enjoy the process.&lt;/p&gt;

&lt;p&gt;Because communities grow stronger every time someone chooses to share what they have learned and help someone else move forward. ☁️&lt;/p&gt;

</description>
      <category>community</category>
      <category>communitybuilder</category>
      <category>aws</category>
    </item>
    <item>
      <title>VIBE Coding with Amazon Q CLI</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Wed, 14 Jan 2026 16:22:59 +0000</pubDate>
      <link>https://dev.to/omshree/vibe-coding-with-amazon-q-cli-446</link>
      <guid>https://dev.to/omshree/vibe-coding-with-amazon-q-cli-446</guid>
      <description>&lt;h2&gt;
  
  
  Are you VIBE Coding?
&lt;/h2&gt;

&lt;p&gt;Hey fellow coders! Are you VIBE Coding yet? Because I am having a lot of fun doing it. I am glad that I am not stuck in a coding dead end, spending hours on mundane tasks. You might be wondering how? It’s because I am doing Vibe Coding.&lt;/p&gt;

&lt;p&gt;"VIBE Coding?" you might ask. Basically, it's like telling your computer what app or feature you want, in regular, everyday language, and it just… builds it for you. That's the vibe! The word Vibe Coding is coined by Andrej Karpathy.&lt;/p&gt;

&lt;p&gt;Think of it as moving away from typing out endless lines of code with all those semicolons and brackets, and instead, having a more conversational, back-and-forth flow with an AI. You say, "Make me a simple game where a cat chases a laser pointer," and the AI starts generating the code. It's like having a super-smart coding buddy that gets your ideas instantly. &lt;br&gt;
I’m doing this to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Move faster from idea → prototype → MVP.&lt;/li&gt;
&lt;li&gt;Stay in flow without switching mental contexts.&lt;/li&gt;
&lt;li&gt;Let AI supercharge my productivity with intelligent suggestions.&lt;/li&gt;
&lt;li&gt;Experiment and create with joy, not friction.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Who's This For?
&lt;/h2&gt;

&lt;p&gt;Non-Techies: Yep, you heard that right! Tools are popping up that let people who've never written a line of code create simple apps or games by just describing what they want.&lt;/p&gt;

&lt;p&gt;Developers: Even for pros, this is a game-changer. AI becomes your coding partner, helping with prototyping, UI design, and even debugging. It's like having a full-stack assistant right in your code editor.&lt;/p&gt;

&lt;p&gt;Now you might be wondering how Amazon Q came into picture, right?&lt;/p&gt;

&lt;h2&gt;
  
  
  How to VIBE Code with Amazon Q CLI?
&lt;/h2&gt;

&lt;p&gt;Amazon Q CLI is your new dev bestie on the terminal. It’s the developer companion CLI tool from AWS, and it’s not your average command-line utility. This one comes supercharged with generative AI, powered by the same tech that’s redefining how we write, think, and build. It’s like having an LLM-powered engineer sitting beside you on your terminal — helping you write, debug, and understand AWS workflows and code.&lt;/p&gt;

&lt;p&gt;That’s what Amazon Q CLI brings to the table. It’s like combining the power of AWS with the intuition of a senior cloud engineer, all through natural language.&lt;/p&gt;

&lt;h2&gt;
  
  
  Installation &amp;amp; Prerequisites
&lt;/h2&gt;

&lt;p&gt;To start VIBE Coding, let’s get your setup ready. It’s super simple and should take just a few minutes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Install AWS CLI (if you haven’t)&lt;/strong&gt;&lt;br&gt;
Head over to the official AWS website and download the CLI for your OS (Windows, macOS, Linux). Refer this to install AWS CLI: &lt;a href="https://docs.aws.amazon.com/cli/v1/userguide/cli-chap-install.html" rel="noopener noreferrer"&gt;https://docs.aws.amazon.com/cli/v1/userguide/cli-chap-install.html&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Configure AWS CLI&lt;/strong&gt;&lt;br&gt;
Once you have installed AWS CLI, verify and configure AWS CLI. You’ll be prompted to enter:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS Access Key ID&lt;/li&gt;
&lt;li&gt;AWS Secret Access Key&lt;/li&gt;
&lt;li&gt;Region&lt;/li&gt;
&lt;li&gt;Output format (choose json or yaml)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Install Amazon Q CLI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Amazon Q CLI doesn’t have a native Windows version yet, but you can still use it on Windows through WSL (Windows Subsystem for Linux).&lt;br&gt;
Install WSL: Follow &lt;a href="https://learn.microsoft.com/en-us/windows/wsl/install" rel="noopener noreferrer"&gt;https://learn.microsoft.com/en-us/windows/wsl/install&lt;/a&gt; to enable WSL on your machine.&lt;/p&gt;

&lt;p&gt;Install Ubuntu: Get it from the Microsoft Store or via CLI&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Download &amp;amp; Install Amazon Q CLI for Linux: Use the official Linux zip package inside WSL. Refer to &lt;a href="https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-installing.html" rel="noopener noreferrer"&gt;https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-installing.html&lt;/a&gt; for details.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Configure AWS Login&lt;br&gt;
Inside WSL, run: “q login”. Here select “Use for Free with Builder ID”. If you do not have Builder ID yet create it using your email.&lt;/p&gt;

&lt;p&gt;Now you have to confirm the code in the browser by manually opening the link.&lt;/p&gt;

&lt;p&gt;Once you confirm the code in the browser, you will have to allow the access to Amazon Q.&lt;/p&gt;

&lt;p&gt;After allowing you will see this window. Congratulations, you have successfully downloaded Amazon Q CLI and are able to use it now.&lt;/p&gt;

&lt;h2&gt;
  
  
  Let's Build an App with Amazon Q CLI
&lt;/h2&gt;

&lt;p&gt;Now that we have installed Amazon Q CLI, let's build an amazing project. Let’s create an application that gives FinOps best practices for different AWS Services.&lt;br&gt;
&lt;strong&gt;Step 1: Type “q chat” command.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Write your prompt and enter “y” to continue.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: It has created an “index.html” file and stored it in the folder. Type “y” to continue.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: It has created a “style.css” file and stored it in the folder. Type “y” to continue.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: It has created a “script.js” file and stored it in the folder. Type “y” to continue.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 6: It has also created a read.me file. Type “y” to continue&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Step 7: I have asked to deploy the app on AWS. *&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;There was some error while creating S3 Bucket. But it corrected automatically.&lt;/p&gt;

&lt;p&gt;It has configured public access settings.&lt;/p&gt;

&lt;p&gt;It has uploaded all the files into the bucket.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 8: FinOps app is successfully deployed on AWS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 9: Lets delete our resources so that we are not charged for this.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Later, I have also asked to create a read.me of all that we have done to keep record of it. I have also asked to create an architecture diagram of this. Although it has not created the diagram using AWS icons, the gist was correct.&lt;/p&gt;

&lt;p&gt;So what are you waiting for? Go on and create your application using Amazon Q CLI. But there are few tips and tricks that you need to keep in mind while working with Amazon Q CLI.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tips and Tricks
&lt;/h2&gt;

&lt;p&gt;While Amazon Q CLI offers a powerful interface for generating code and managing AWS workflows, its effectiveness depends heavily on how you interact with it. Here are some best practices to help you make the most of the tool:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Prompt Engineering: Be Specific and Clear
The quality of the output is directly related to the quality of your input. The more context you provide in your prompts, the better the quality of the code or explanation you receive.
For example:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Better Prompt: Generate a Python Lambda function that writes user data to a DynamoDB table named 'users', with error handling and input validation.&lt;/li&gt;
&lt;li&gt;Poor Prompt: Make a Lambda for database.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By specifying the language, purpose, service involved, and additional constraints, you’re more likely to get a relevant, usable result.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Troubleshooting: Use Q CLI as a Diagnostic Tool
When something breaks, there are a few different ways to approach the issue:
Prompt Q CLI with your error
You can paste AWS errors or logs and ask Q CLI for help diagnosing the issue. 
Example:
Why is my Lambda function getting AccessDenied when writing to DynamoDB?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Cross-reference with AWS Documentation&lt;/p&gt;

&lt;p&gt;While Q CLI provides useful output, always validate commands and recommendations against the official AWS documentation for production use.&lt;br&gt;
Community Support&lt;/p&gt;

&lt;p&gt;If you're stuck, explore AWS Developer Forums, GitHub issues, or Stack Overflow. These resources are valuable for resolving edge cases and getting community-validated solutions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Precautions and Considerations
&lt;/h2&gt;

&lt;p&gt;Not gonna lie - Amazon Q CLI is impressive. It’s fast, smart, and makes you feel like you have an LLM-powered intern who never takes breaks. But let’s keep it real for a second...&lt;br&gt;
Is it perfect?&lt;br&gt;
Nope. Not yet.&lt;/p&gt;

&lt;p&gt;And maybe that’s a good thing - because we’re not just shipping anything. We’re shipping quality. And even though the AI might write code that runs, there are still some critical areas where you, the human dev, are irreplaceable.&lt;/p&gt;

&lt;p&gt;Let’s break it down &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Review: Always Read What the AI Writes&lt;/strong&gt;&lt;br&gt;
Amazon Q might generate a Lambda function, a policy, or an S3 command - but it doesn’t mean it’s 100% optimal.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Does the logic actually match your use case?&lt;/li&gt;
&lt;li&gt;Is it readable, maintainable, or overly verbose?&lt;/li&gt;
&lt;li&gt;Does it align with your coding style?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Human review is non-negotiable. Treat AI like an eager intern. Smart, helpful, but not ready to commit directly to main.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Testing: Code That Runs ≠ Code That’s Reliable&lt;/strong&gt;&lt;br&gt;
Yes, it might deploy.&lt;br&gt;
Yes, it might return a response.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;But does it handle edge cases?&lt;/li&gt;
&lt;li&gt;Does it break when inputs are unexpected?&lt;/li&gt;
&lt;li&gt;Did it cover retries, failures, timeouts?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You still need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unit tests&lt;/li&gt;
&lt;li&gt;Integration tests&lt;/li&gt;
&lt;li&gt;Manual poking (aka: break things on purpose)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;VIBE Coding is not "vibe &amp;amp; hope." It's "vibe &amp;amp; verify." &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Security: Is It Safe to Use in Prod?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AI-generated IAM policies might be too permissive. Your Lambda code might forget to validate input or sanitize data. And don’t get me started on secret keys in code.&lt;/p&gt;

&lt;p&gt;Security isn’t just about firewalls. It’s about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Principle of least privilege&lt;/li&gt;
&lt;li&gt;Input validation&lt;/li&gt;
&lt;li&gt;Data encryption&lt;/li&gt;
&lt;li&gt;Logging &amp;amp; monitoring&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;VIBE Coding without security = chaos in production.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Scalability: Will It Break Under Load?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sure, Q CLI can spin up a basic app. But will that app:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Handle 1000 concurrent users?&lt;/li&gt;
&lt;li&gt;Scale when traffic spikes?&lt;/li&gt;
&lt;li&gt;Handle retries gracefully under pressure?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Scalability is an architecture mindset, not just code.&lt;/p&gt;

&lt;p&gt;Ask Q CLI to help with autoscaling or load balancing - but you need to know when and how to use those answers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Debugging: When AI Code Goes Sideways&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Let’s be honest: AI-generated code will break sometimes. Maybe the logic’s wrong. Maybe the syntax is off. Maybe it just… doesn’t work.&lt;br&gt;
Now what?&lt;/p&gt;

&lt;p&gt;Two options:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fix it manually (classic dev style)&lt;/li&gt;
&lt;li&gt;Prompt the AI smarter (next-gen dev style)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The new dev skill isn’t just writing code - it’s crafting good prompts, and understanding the answers.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Future of VIBE Coding and Amazon Q CLI: What's Next?
&lt;/h2&gt;

&lt;p&gt;The future is bright! As AI continues to evolve, we can expect even more powerful coding tools. Imagine AI that can design entire applications or write complex algorithms with a single command.&lt;/p&gt;

&lt;p&gt;VIBE Coding with Amazon Q CLI is more than just a trend; it's a paradigm shift in how we write code. Embrace it, experiment with it, and expand your coding potential!&lt;/p&gt;

&lt;h2&gt;
  
  
  Know more here
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://aws.amazon.com/blogs/devops/introducing-the-enhanced-command-line-interface-in-amazon-q-developer/" rel="noopener noreferrer"&gt;https://aws.amazon.com/blogs/devops/introducing-the-enhanced-command-line-interface-in-amazon-q-developer/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line.html" rel="noopener noreferrer"&gt;https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>genai</category>
      <category>vibecoding</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Revolutionizing Assessments: A Dive into AWS Well-Architected Tool's Newest Feature – “Review Templates”</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Fri, 02 Feb 2024 05:03:10 +0000</pubDate>
      <link>https://dev.to/omshree/revolutionizing-assessments-a-dive-into-aws-well-architected-tools-newest-feature-review-templates-3j22</link>
      <guid>https://dev.to/omshree/revolutionizing-assessments-a-dive-into-aws-well-architected-tools-newest-feature-review-templates-3j22</guid>
      <description>&lt;h3&gt;
  
  
  ​Table of Contents
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;Introduction&lt;/code&gt;&lt;br&gt;
&lt;code&gt;What is Review Template?&lt;/code&gt;&lt;br&gt;
&lt;code&gt;Benefits of Review Template&lt;/code&gt;&lt;br&gt;
&lt;code&gt;Review Templates in Action&lt;/code&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;Accessing the AWS Well-Architected Tool &lt;br&gt;
 Creating a Review Template &lt;br&gt;
 Customizing Your Review Template &lt;br&gt;
 Defining Workload from Template&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;code&gt;Well Architected Tool pricing&lt;/code&gt;&lt;br&gt;
&lt;code&gt;Resource Clean up&lt;/code&gt;&lt;br&gt;
&lt;code&gt;Conclusion&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Introduction
&lt;/h3&gt;

&lt;p&gt;AWS continues to empower organizations with tools that enhance operational efficiency, scalability, and reliability. One such tool, the AWS Well-Architected Tool, has recently introduced a game-changing feature - the “Review Template”. This innovative addition promises to revolutionize how organizations approach and implement best practices, fostering consistency and standardization across teams and workloads. &lt;/p&gt;

&lt;h3&gt;
  
  
  What is Review Template?
&lt;/h3&gt;

&lt;p&gt;Review templates in the AWS Well-Architected Tool serve as a powerful solution to the challenge of repeatedly filling in the same answers for best practices across various workloads. These templates enable users to pre-fill answers for both Well-Architected Framework and custom lens best practice questions. The primary goal is to streamline the process of conducting Well-Architected reviews while ensuring that common best practices are consistently applied. &lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits of Review Template
&lt;/h3&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%2F6eycecji2hytetrwz6o6.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%2F6eycecji2hytetrwz6o6.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Review Templates in Action
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Accessing the AWS Well-Architected Tool
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Begin by logging into the AWS Management Console and navigating to the Well-Architected Tool.&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%2Fulzv3fknosm0cl09fila.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%2Fulzv3fknosm0cl09fila.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Creating a Review Template
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Once in the Well-Architected Tool, locate the "Review Templates" section. &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%2Fpy6dvs47lbsfwuzc0v65.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%2Fpy6dvs47lbsfwuzc0v65.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click on "Create Template" to initiate the process. &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%2Fw61ixalquu376z9m3fq7.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%2Fw61ixalquu376z9m3fq7.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Name your template and provide a brief description to help users understand its purpose. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the relevant workload type (e.g., production, development) for which you intend to use the template. &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%2F5i4tl7u64eplhn81aucr.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%2F5i4tl7u64eplhn81aucr.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select "AWS Well-Architected Framework" and then click on "Create Template"&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%2Fh0izn5agw9kj9fvirc3q.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%2Fh0izn5agw9kj9fvirc3q.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You will see that your template is created and as of now you have not answered any questions of the Well-Architected Framework Pillar.&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%2Fgz428ctwz57ch8jmkekp.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%2Fgz428ctwz57ch8jmkekp.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Customizing Your Review Template
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The beauty of Review Templates lies in the ability to pre-fill answers for common best practice questions. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Navigate through the well-architected pillars and questions, providing answers that align with your organization's standards.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;As you progress, notice how the Review Template auto-populates answers, saving you valuable time during future well-architected reviews. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Once you have provided answers to questions of various well-architected pillars, you will see that the template will get updated.&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%2Fbgl2jys7wwcdl21fb9oc.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%2Fbgl2jys7wwcdl21fb9oc.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Defining Workload from Template
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Once your Review Template is configured, you can use it to define workloads effortlessly. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select "Define workload from template" and choose the template you created. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The tool will apply the pre-filled answers and notes to the new workload, ensuring consistency with established best practices.&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%2F1a6imqxkrf3o2mxlxpha.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%2F1a6imqxkrf3o2mxlxpha.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Now select the Review Template that you have already created.&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%2Fh3yg1avc41wuasurvvgu.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%2Fh3yg1avc41wuasurvvgu.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Enter details of your workload such as Name, Description, Review Owner, environment and regions and then click "Next"&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%2F6pkf8umc75jb2qzn8q05.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%2F6pkf8umc75jb2qzn8q05.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Keep it as it is and click "Next"&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%2F7961nubbz6uiu84xzte5.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%2F7961nubbz6uiu84xzte5.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Applying Profile is optional. You can apply if you want to, as of now we are skipping it and click on "Next"&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%2Fuzetrc3zqi7kbpdrttre.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%2Fuzetrc3zqi7kbpdrttre.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In Lenses, click on "AWS Well-Architected Framework" &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%2F54cztdy9vagfpw8qzj78.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%2F54cztdy9vagfpw8qzj78.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Here, you can see that your workload is created and automatically the questions are answered because we have created this workload using the Review Template.&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%2Fmy39z7ugfuya9pi6sr0e.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%2Fmy39z7ugfuya9pi6sr0e.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If there are few questions that you want to edit, click on "Edit". Once you answer those questions it will reflect in "Workload overview"&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%2Fc7g2zs5ty6rj12m186m6.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%2Fc7g2zs5ty6rj12m186m6.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Edit Review Template
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;To edit a review template choose the review template and then select 'Edit' in the Template details section of the Overview tab to update the Name, Description, or Template notes. &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%2Fc1gy2v0geos8jblxfhdy.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%2Fc1gy2v0geos8jblxfhdy.png" alt="Image description"&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%2F5ucwd1i3af6d1s6yzrgz.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%2F5ucwd1i3af6d1s6yzrgz.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To modify applied lenses for the review template, select 'Edit applied lenses' in the Lenses section of the Overview tab.&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%2F4l3jgfbdi5p6yt92azp3.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%2F4l3jgfbdi5p6yt92azp3.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Share Review Template
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Navigate to the Review templates section in the left menu, choose the desired template, click on the Shares tab, and then create and select "Share with IAM users or accounts" to specify user or account IDs in the Send invitations box before choosing Create.&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%2Fhh80qyu7m7pl2wk8spr1.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%2Fhh80qyu7m7pl2wk8spr1.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create and choose "Share with Organizations" to share with an organization or organizational unit. Opt for "Grant permissions to the entire Organization" for the entire organization or select "Grant permissions to individual Organizational Units," specify the unit, and click Create for sharing with a specific organizational unit.&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%2Fxf60btost4iwnudpfzm4.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%2Fxf60btost4iwnudpfzm4.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Well Architected Tool pricing
&lt;/h3&gt;

&lt;p&gt;The AWS Well-Architected Tool itself is generally offered at &lt;em&gt;&lt;strong&gt;no additional cost&lt;/strong&gt;&lt;/em&gt;. However, it's essential to note that the AWS Well-Architected Review process may involve the use of other AWS services, and the cost associated with those services is separate from the Well-Architected Tool itself. For example, if your review identifies recommendations for changes to your AWS architecture, implementing those changes might involve using additional AWS resources or services that have their own associated costs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Resource Clean up
&lt;/h3&gt;

&lt;p&gt;After performing this practical, DO NOT FORGET to delete all your resources. &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%2Faszsvsubx276vhqgznpq.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%2Faszsvsubx276vhqgznpq.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;The introduction of the Review Template feature in the AWS Well-Architected Tool marks a significant step forward in simplifying and enhancing the well-architected review process. By reducing manual efforts, promoting consistency, enabling collaboration, and facilitating the scaling of best practices, this feature aligns seamlessly with AWS's commitment to providing tools that empower users to build robust and efficient cloud architectures. &lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;Embrace the power of Review Templates to elevate your AWS architecture to new heights of efficiency and excellence!&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>costoptimization</category>
      <category>awscloud</category>
      <category>awscommunitybuilder</category>
    </item>
    <item>
      <title>AWS Well-Architected Review in Action</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Wed, 31 Jan 2024 04:19:03 +0000</pubDate>
      <link>https://dev.to/omshree/aws-well-architected-review-in-action-3mh4</link>
      <guid>https://dev.to/omshree/aws-well-architected-review-in-action-3mh4</guid>
      <description>&lt;h4&gt;
  
  
  Author: &lt;a class="mentioned-user" href="https://dev.to/omshree"&gt;@omshree&lt;/a&gt; and &lt;a class="mentioned-user" href="https://dev.to/bhuvanas"&gt;@bhuvanas&lt;/a&gt;
&lt;/h4&gt;

&lt;h3&gt;
  
  
  Table of Contents
&lt;/h3&gt;

&lt;p&gt;Introduction&lt;br&gt;
Step 1: Identify Your Workload&lt;br&gt;
Step 2: Assemble a Review Team&lt;br&gt;
Step 3: Access the AWS Well-Architected Tool&lt;br&gt;
Step 4: Choose the Pillars&lt;br&gt;
Step 5: Review the Pillar Questions&lt;br&gt;
Step 6: Gather Information&lt;br&gt;
Step 7: Evaluate the Workload&lt;br&gt;
Step 8: Identify Improvement Opportunities&lt;br&gt;
Step 9: Create an Action Plan&lt;br&gt;
Step 10: Implement Changes&lt;br&gt;
Step 11: Review and Iterate&lt;br&gt;
Conclusion&lt;/p&gt;

&lt;h3&gt;
  
  
  Introduction
&lt;/h3&gt;

&lt;p&gt;When you look at the design your team is building, can you answer the question – Are you Well–Architected?&lt;/p&gt;

&lt;p&gt;The AWS Well-Architected Framework is an essential tool in the domain of cloud computing. It serves as a comprehensive guide to help organizations evaluate and enhance their cloud workloads. By adhering to this framework, businesses can ensure their infrastructure is optimally designed, promoting Operational Excellence, Reliability, Security, Performance, Sustainability, and Cost Optimization— which in fact are the Six Pillars of Well-Architected Framework. Embracing these best practices not only enhances overall cloud performance but also fortifies data security, reduces costs, and fosters operational excellence.&lt;/p&gt;

&lt;p&gt;Since its inception in 2012 to improved prescriptive guidance in 2023, AWS Well-Architected Framework has evolved and matured over a decade in multiple dimensions. A single blog may touch the surface, but the complexity and depth of the Well-Architected Framework merit a detailed exploration.&lt;/p&gt;

&lt;p&gt;By delving into a series of blogs, we can systematically unpack each pillar—Operational Excellence, Reliability, Security, Performance, Sustainability, and Cost Optimization. This approach allows us to provide a thorough examination of best practices, guidelines, and real-world examples that cater to the diverse aspects of cloud workloads.&lt;/p&gt;

&lt;p&gt;In this blog post (aka AWS WA Blog Series – Part 1), we will walk you through a step-by-step approach to performing AWS Well-Architected Reviews.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Identify Your Workload
&lt;/h3&gt;

&lt;p&gt;The first step in conducting a Well-Architected Review is to identify your workload. Determine which specific AWS workloads or applications you want to assess. This could be a single application or an entire environment (non-prod or prod), depending on your needs.&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%2Fbqu013hor28t6tcmad8t.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%2Fbqu013hor28t6tcmad8t.png" alt="Image description" width="570" height="456"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Assemble a Review Team
&lt;/h3&gt;

&lt;p&gt;Gather a team of experts who will participate in the review. This team should include individuals with knowledge and expertise in areas such as architecture, security, operations, and cost optimization. Assign roles and responsibilities to each team member, such as a lead reviewer and specialist for each pillar of the Well-Architected Framework.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Access the AWS Well-Architected Tool
&lt;/h3&gt;

&lt;p&gt;AWS provides a free tool called the AWS Well-Architected Tool that can help you assess your workloads against the framework's best practices. Access the tool through the AWS Management Console. If you use multiple AWS accounts, then it is recommended to use one specific AWS account (not necessarily a management account) for Well-Architected Review, irrespective of which environment you use.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4: Choose the Pillars
&lt;/h3&gt;

&lt;p&gt;The AWS Well-Architected Framework consists of six pillars:&lt;/p&gt;

&lt;p&gt;Operational Excellence&lt;br&gt;
Security&lt;br&gt;
Reliability&lt;br&gt;
Performance Efficiency&lt;br&gt;
Cost Optimization&lt;br&gt;
Sustainability&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%2Fqwniq8agy70dbblt5lp2.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%2Fqwniq8agy70dbblt5lp2.png" alt="Image description" width="800" height="404"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For each workload, select the relevant pillars to focus on during the review. It's advisable to address all six pillars, but you can prioritize based on your specific goals.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 5: Review the Pillar Questions
&lt;/h3&gt;

&lt;p&gt;Within each pillar, there are a series of questions that help you evaluate your workload's alignment with best practices. Review these questions with your team to ensure everyone understands the criteria for a well-architected workload.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 6: Gather Information
&lt;/h3&gt;

&lt;p&gt;Collect relevant documentation, architectural diagrams, configuration details, security policies, cost reports and data about your workload. This may also include AWS CloudFormation templates, AWS Identity and Access Management (IAM) policies, logs, and performance metrics. Having a complete set of information will help your team assess the workload accurately.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 7: Evaluate the Workload
&lt;/h3&gt;

&lt;p&gt;Using the AWS Well-Architected Tool, go through each of the selected pillars and answer the questions based on your workload's design and implementation. Be honest and critical in your assessment to identify areas that need improvement.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 8: Identify Improvement Opportunities
&lt;/h3&gt;

&lt;p&gt;The AWS Well-Architected Tool will provide recommendations and best practices for each pillar based on your answers. Collaborate with your team to identify improvement opportunities and prioritize them based on their impact and feasibility.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 9: Create an Action Plan
&lt;/h3&gt;

&lt;p&gt;Develop a comprehensive action plan that outlines the steps required to address the identified improvement opportunities. Assign responsibilities and set deadlines to ensure that improvements are implemented effectively.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 10: Implement Changes
&lt;/h3&gt;

&lt;p&gt;Execute the action plan and make the necessary changes to your AWS workloads. Ensure that the improvements align with the best practices defined by the AWS Well-Architected Framework.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 11: Review and Iterate
&lt;/h3&gt;

&lt;p&gt;After implementing the changes, revisit the AWS Well-Architected Tool to assess the impact of the improvements. Continue to monitor and iterate on your workloads to maintain alignment with best practices and adapt to evolving requirements.&lt;/p&gt;

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

&lt;p&gt;Performing AWS Well-Architected Reviews is a critical process for maintaining the health and efficiency of your cloud workloads. By following this step-by-step approach, you can systematically assess and improve your AWS environments in alignment with the AWS Well-Architected Framework. Regular reviews and continuous improvement will help you optimize your cloud infrastructure for reliability, security, and cost-effectiveness.&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%2Fdc3lz6jdnqhg3s6dthri.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%2Fdc3lz6jdnqhg3s6dthri.png" alt="Image description" width="394" height="193"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;See you soon in AWS WA Blog Series – Part 2&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>wellarchitected</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Recap of AWS CEO Adam Selipsky's Keynote at AWS re:Invent 2023</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Mon, 04 Dec 2023 16:00:43 +0000</pubDate>
      <link>https://dev.to/omshree/recap-of-aws-ceo-adam-selipskys-keynote-at-aws-reinvent-2023-1k13</link>
      <guid>https://dev.to/omshree/recap-of-aws-ceo-adam-selipskys-keynote-at-aws-reinvent-2023-1k13</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;AWS re:Invent 2023 kicked off with a bang as AWS CEO Adam Selipsky took the stage to unveil a plethora of groundbreaking announcements, setting the stage for the future of cloud computing. From cutting-edge technologies to strategic partnerships, Selipsky's keynote was a showcase of innovation and the relentless pursuit of excellence. Let's dive into the top announcements that are poised to reshape the landscape of cloud services.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XKqwNeYK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gzbme4fbsxmttp7qeikb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XKqwNeYK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gzbme4fbsxmttp7qeikb.png" alt="Image description" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Reinventing S3: Amazon S3 Express One Zone
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Highest performance and Lowest latency cloud object storage&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--i8kE9xeC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1jx9rs935bnmxwfqi75n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--i8kE9xeC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1jx9rs935bnmxwfqi75n.png" alt="Image description" width="800" height="196"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Reinventing general purpose computing
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;AWS Graviton4 - the most powerful and energy-efficient chip ever built&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--y9fIJoqQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wli80hn0lguhh4hxfzdq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--y9fIJoqQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wli80hn0lguhh4hxfzdq.png" alt="Image description" width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Reinventing with Generative AI
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Amazon EC2 – Capacity blocks for ML&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Reserve EC2 UltraClusters to run your ML workloads with hundreds of GPUs&lt;/li&gt;
&lt;li&gt;Ideal for training and fine-tuning FMs, short-duration workloads &amp;amp; handling capacity surges&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;AWS Trainium2&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Purpose-built chip for generative AI &amp;amp; ML training&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--R40jvFFk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/93ibqv8h2nn33mdef46f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--R40jvFFk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/93ibqv8h2nn33mdef46f.png" alt="Image description" width="800" height="297"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Amazon Bedrock – Customization capabilities&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bTnRZ_ww--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qdv7j34yyhizmkbbrf3d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bTnRZ_ww--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qdv7j34yyhizmkbbrf3d.png" alt="Image description" width="648" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Agents for Amazon Bedrock&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Execute multi-step tasks across company systems and data sources&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Eh8tUkGL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h755h9unm6n9gyu01qh3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Eh8tUkGL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h755h9unm6n9gyu01qh3.png" alt="Image description" width="665" height="259"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Guardrails for Amazon Bedrock&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Safeguard your GenAI applications with your responsible AI policies&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FkrxE1Xd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vmr9tlo1u9ygdh6w93hd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FkrxE1Xd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vmr9tlo1u9ygdh6w93hd.png" alt="Image description" width="618" height="279"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;blockquote&gt;
&lt;p&gt;A generative AI-powered assistant for work that is tailored to your business&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--usW3Xi58--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kwwrqbfg5wc13lfhmc08.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--usW3Xi58--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kwwrqbfg5wc13lfhmc08.png" alt="Image description" width="575" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Reinventing Amazon Redshift
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Zero-ETL integrations with Amazon Redshift&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TOcJpZKw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mhqkp5o23ezg02xv57ru.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TOcJpZKw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mhqkp5o23ezg02xv57ru.png" alt="Image description" width="621" height="225"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Amazon DataZone AI recommendations
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Automatically add business context to your data catalog in a few clicks&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_jhM1Aqh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3n46d6x4jbup52op4tvv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_jhM1Aqh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3n46d6x4jbup52op4tvv.png" alt="Image description" width="676" height="294"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Enhanced Strategic Partnership
&lt;/h2&gt;

&lt;p&gt;In a significant move to fortify its position at the forefront of cloud computing and artificial intelligence, AWS has announced enhanced strategic partnerships with Salesforce, Nvidia, and Anthropic. The collaboration with Salesforce aims to seamlessly integrate AWS's cloud infrastructure with Salesforce's customer relationship management (CRM) platform, fostering a more interconnected and efficient experience for joint customers. The expanded partnership with Nvidia underscores AWS's commitment to providing cutting-edge GPU capabilities for high-performance computing and machine learning applications. Additionally, the collaboration with Anthropic, a leader in developing advanced AI models, signifies AWS's dedication to incorporating innovative technologies into its cloud services, further empowering businesses to harness the potential of artificial intelligence for diverse applications. These strengthened partnerships underscore AWS's continuous effort to deliver comprehensive solutions and drive innovation in the rapidly evolving landscape of cloud computing and AI.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JEZ0xQn3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/byq77xho24aapjl9mst3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JEZ0xQn3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/byq77xho24aapjl9mst3.png" alt="Image description" width="515" height="216"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Adam Selipsky’s keynote at AWS re:Invent 2023 was a tour de force, showcasing AWS's unwavering commitment to innovation, sustainability, and collaboration. The announced advancements in Amazon S3 Express one zone, Graviton4, Amazon Q, coupled with strategic partnerships and eco-friendly initiatives, underscore AWS's position as a pioneer in the ever-evolving landscape of cloud services. As businesses embark on their digital transformation journeys, the tools and services unveiled during this keynote set the stage for a future where innovation knows no bounds.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>reinvent</category>
      <category>keynote</category>
      <category>announcements</category>
    </item>
    <item>
      <title>AWS Cloud Cost Dilemma: Savings Plans vs. RIs - Your Definitive Guide</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Tue, 03 Oct 2023 20:06:27 +0000</pubDate>
      <link>https://dev.to/omshree/aws-cloud-cost-dilemma-savings-plans-vs-ris-your-definitive-guide-3oi8</link>
      <guid>https://dev.to/omshree/aws-cloud-cost-dilemma-savings-plans-vs-ris-your-definitive-guide-3oi8</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Fun Fact: AWS Savings Plans and Reserved Instances can be a bit like choosing a car. One's a fuel-efficient sedan (Savings Plans), while the other's a customized sports car (RIs). The question is, do you need to race, or are you looking to save on gas? &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;The cloud has revolutionized the way organizations operate, offering scalability, flexibility, and cost efficiency. However, cost optimization remains a top priority for organizations leveraging services from AWS. Two key options to achieve cost efficiency are AWS Savings Plans and Reserved Instances (RIs). Choosing between these cost-saving strategies can be a daunting task. In this definitive guide, I'll dissect the AWS cloud cost dilemma, providing you with the insights and knowledge needed to make informed decisions for your organization. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Se64W2YS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sy7w4tfz3yznm6v5bk3q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Se64W2YS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sy7w4tfz3yznm6v5bk3q.png" alt="Image description" width="800" height="486"&gt;&lt;/a&gt;&lt;em&gt;POV: At the crossroads of cloud cost management, there's a man in a dilemma. His choices: AWS Savings Plans or Reserved Instances. It's like he's in a cloud-based version of 'The Matrix.' Are you ready to take the red pill or the blue pill?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The mission is to empower organizations to make strategic decisions for optimal cloud resource utilization. In this regard, a comprehensive six-step decision-making process for effectively choosing between AWS Reserved Instances (RIs) and Savings Plans is outlined. By considering unique usage patterns, service scope, cost flexibility, workload variations, and growth projections, individuals and teams can ensure a well-informed choice that aligns with their specific needs and financial goals. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AqVPcKEW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8squs2decjqse6n91fsz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AqVPcKEW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8squs2decjqse6n91fsz.png" alt="Image description" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Understanding the AWS Reserved Instances and AWS Savings Plan&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Reserved Instances:&lt;/code&gt;&lt;/em&gt; A pricing model that allows you to commit to a specific instance types and families in exchange for a lower hourly rate. RIs offer better predictability for instance types but can be less flexible compared to Savings Plans.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Savings Plan:&lt;/code&gt;&lt;/em&gt; A pricing model that offers cost savings across a broader range of services without the need to commit to a specific instance or family. Savings Plans provide consistent pricing benefits, but they offer less instance type predictability compared to RIs.  &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Determine your organization's cloud usage patterns&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Reserved Instances:&lt;/code&gt;&lt;/em&gt; Suitable when your usage is consistent and predictable, and you can commit to using specific instance types and families over a longer term.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Savings Plan:&lt;/code&gt;&lt;/em&gt; Ideal if your usage fluctuates across instance types, families, or services. They provide broader flexibility for cost savings across various services.  &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Determine the scope of cloud services&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Reserved Instances:&lt;/code&gt;&lt;/em&gt; Primarily apply to EC2 instances, making them more suitable if your organization's primary usage is focused on compute or database instances.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Savings Plan:&lt;/code&gt;&lt;/em&gt; They cover a wider range of services, making them suitable if your organization uses a variety of AWS services beyond just EC2 instances such as AWS Lambda, Fargate, sagemaker etc.  &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Analyze Cost Flexibility&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Reserved Instances:&lt;/code&gt;&lt;/em&gt; Convertible RIs offer the option to switch instance sizes and families for increased flexibility. Additionally, Standard RIs can be resold in the marketplace.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Savings Plan:&lt;/code&gt;&lt;/em&gt; Provide flexibility to switch automatically between instance types and families, allowing you to adapt to changing requirements.   &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Determine and plan for varying workloads&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Reserved Instances:&lt;/code&gt;&lt;/em&gt; Appropriate when your resource requirements display consistent stability, and you can dedicate to utilizing particular instances. Well-suited for companies with foreseeable expansion, as they secure cost savings throughout an extended commitment duration.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;&lt;code&gt;Savings Plan:&lt;/code&gt;&lt;/em&gt; Ideal for rapidly changing resource demands, enabling seamless transitions between various instance types and families. Offers the agility to accommodate growth and evolving workload needs, making it a great fit for organizations with dynamic scaling requirements.  &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 6: Make a decision that is right for your organization&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;There is no one-size-fits-all answer to this question. The best option for your organization will depend on your specific needs and requirements. Based on the above considerations, make an informed decision:  &lt;/p&gt;

&lt;p&gt;Choose Savings Plans if your organization's workload is diverse, flexible, and spans various cloud services, allowing for cost-efficient adaptability.  &lt;/p&gt;

&lt;p&gt;Opt for RIs if your organization's usage is consistent, you can commit to specific instance types, and you prioritize cost predictability and long-term savings.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Success Story&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;By proactively engaging FinOps expertise and implementing targeted technology solutions, one of our customers has achieved unparalleled cost efficiency and resource utilization. One of the key factors contributing to their remarkable success was the strategic procurement of Savings Plans.   &lt;/p&gt;

&lt;p&gt;Initially, we adhered to the comprehensive six-step process detailed earlier, leading us to select the Savings Plan option. This decision was driven by the demand patterns of their executive personas and our careful observations.    &lt;/p&gt;

&lt;p&gt;We evaluated their workload and reviewed the monthly on-demand billing for EC2 services. Upon analyzing the workload, we determined that the expenditure for EC2 services was &lt;em&gt;at least $70 per hour&lt;/em&gt;. This prompted us to opt for an initial savings plan of &lt;em&gt;$56 to avoid excessive commitment&lt;/em&gt;. After two months, observing complete utilization of the initial savings plan, we proceeded to introduce an &lt;em&gt;additional $15 per hour savings plan&lt;/em&gt;, all guided by the evolving workload dynamics.   &lt;/p&gt;

&lt;p&gt;These financial commitments allowed the Security Software Vendor to lock in significant cost savings on their computing resources while ensuring long-term predictability and stability in their cloud expenditures. By intelligently leveraging Savings Plans, the customer experienced &lt;em&gt;an impressive 20-23% reduction&lt;/em&gt; in their monthly cloud spend. This decisive move, combined with other resource-level optimizations, resulted in an overall 30% savings on their monthly cloud expenditure. Moreover, the Savings Plans successfully covered over 80% of their computing resources, offering unmatched value and return on investment.   &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Comparison Table&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--o1DFQDad--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vrabhw663mvtkwdyyjul.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--o1DFQDad--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vrabhw663mvtkwdyyjul.png" alt="Image description" width="800" height="200"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;By systematically analyzing your organization's current workloads, future scaling plans, flexibility requirements, cost predictability needs, and instance type preferences, you can make a well-informed decision between Savings Plans and Reserved Instances. This decision should align with your organization's strategic objectives and cost optimization goals, ensuring efficient cloud resource utilization.  &lt;/p&gt;

</description>
      <category>aws</category>
      <category>savingsplan</category>
      <category>ri</category>
      <category>costoptimization</category>
    </item>
    <item>
      <title>The Shape-Shifter of AWS: Transforming Data in the Blink of an Eye with S3 Object Lambda</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Fri, 30 Jun 2023 18:28:53 +0000</pubDate>
      <link>https://dev.to/omshree/the-shape-shifter-of-aws-transforming-data-in-the-blink-of-an-eye-with-s3-object-lambda-2e64</link>
      <guid>https://dev.to/omshree/the-shape-shifter-of-aws-transforming-data-in-the-blink-of-an-eye-with-s3-object-lambda-2e64</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;"With S3 Object Lambda, data becomes a canvas and code becomes a brush, allowing you to paint masterpieces of transformation." &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Let me take you to the exciting voyage of s3 Object Lambda where the boundaries of data processing are shattered, and a new era of customization begins. Step into a world where objects stored in the ethereal cloud take on new forms, effortlessly molded by the magic of custom code and real-time processing. S3 Object Lambda, a feature of Amazon Web Services, empowers developers to rewrite the rules of data manipulation, transcending the constraints of traditional storage. In this blog post, we will explore the concept of S3 Object Lambda and delve into its capabilities through an insightful demo. Buckle up, for the journey ahead promises to reshape the very fabric of your digital universe. &lt;/p&gt;

&lt;h2&gt;
  
  
  What is S3 Object Lambda?
&lt;/h2&gt;

&lt;p&gt;S3 Object Lambda is a cutting-edge feature of Amazon S3 that allows developers to apply custom code and processing logic to data retrieved from S3 buckets. It seamlessly integrates with AWS Lambda, the serverless compute service, enabling dynamic transformation of objects on the fly. This means that you can easily filter, resize, or encrypt your data as it is retrieved, based on the specific needs of your application or users.​ With S3 Object Lambda, developers gain the ability to modify and personalize the content of S3 objects without the need for additional infrastructure or complex workflows. &lt;/p&gt;

&lt;h2&gt;
  
  
  Use Cases for S3 Object Lambda
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KjjfFVFr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mr97k0k7y121qqa8s6k6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KjjfFVFr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mr97k0k7y121qqa8s6k6.png" alt="Image description" width="800" height="268"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How It Works?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fMXB80VF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yi1qcoopp8ylx2fwm1rf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fMXB80VF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yi1qcoopp8ylx2fwm1rf.png" alt="Image description" width="800" height="368"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;S3 Object Lambda integrates with AWS Lambda, which allows you to write custom code using various programming languages, including Python and JavaScript. &lt;/p&gt;

&lt;p&gt;When a request is made to retrieve an object from S3, the request is routed to your Lambda function, which can modify the object data or metadata before returning it to the requester. &lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;AWS Account &lt;/li&gt;
&lt;li&gt;S3 Bucket &lt;/li&gt;
&lt;li&gt;Lambda Function &lt;/li&gt;
&lt;li&gt;AWS CLI &lt;/li&gt;
&lt;li&gt;Permissions &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  AWS Services Used
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--J5s4uE7R--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kz50ejtzj2lh1g3tct9m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--J5s4uE7R--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kz50ejtzj2lh1g3tct9m.png" alt="Image description" width="373" height="181"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo: Exploring the Power of S3 Object Lambda
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Step 1: Create S3 bucket&lt;/em&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the left navigation pane of the Amazon S3 menu, click on "Buckets." &lt;/li&gt;
&lt;li&gt;Click on the "Create bucket" button. &lt;/li&gt;
&lt;li&gt;Provide a unique and descriptive name for your bucket in the "Bucket name" field. Ensure it is globally unique. &lt;/li&gt;
&lt;li&gt;Choose the AWS Region where you want the bucket to be created. Note that another resource in this tutorial will need to be in the same AWS Region. &lt;/li&gt;
&lt;li&gt;You can keep the default selections for the remaining options. &lt;/li&gt;
&lt;li&gt;Scroll down to the bottom of the page and click on "Create bucket”.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0qwYt1gg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/csn2jd5nbgpyzza6wjle.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0qwYt1gg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/csn2jd5nbgpyzza6wjle.png" alt="Image description" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Step 2: Upload Object in the s3 bucket&lt;/em&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click on the "Add files" button and select the desired image from your file browser.
&lt;/li&gt;
&lt;li&gt;Scroll down the page and click on the "Upload" button.
&lt;/li&gt;
&lt;li&gt;Once the upload is complete and successful, click on the "Close" button.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AWI2ZVC9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/heha1orvgafwf953cddh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AWI2ZVC9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/heha1orvgafwf953cddh.png" alt="Image description" width="800" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Step 3: Access the Image uploaded in the s3 bucket&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Y0QDYYmK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bz2hdslarykhh05a4rll.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Y0QDYYmK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bz2hdslarykhh05a4rll.png" alt="Image description" width="800" height="383"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Step 4: Create access point for the bucket&lt;/em&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open the S3 console and click on the "Access Points" option in the left sidebar. &lt;/li&gt;
&lt;li&gt;Click on the "Create access point" button. &lt;/li&gt;
&lt;li&gt;In the "Properties" section, provide a name for the access point and click the "Browse S3" button to select the desired bucket name entered in Step 1. &lt;/li&gt;
&lt;li&gt;Set the "Network origin" to "Internet" while leaving all other settings at their default values. &lt;/li&gt;
&lt;li&gt;Scroll to the bottom of the page and click the "Create access point" button. &lt;/li&gt;
&lt;li&gt;After creation, the S3 Access Point will be visible in the list when you navigate to the "Access Points" section in the left sidebar.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gZvCozmq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/712ymovp5tajb8nnl6ug.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gZvCozmq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/712ymovp5tajb8nnl6ug.png" alt="Image description" width="800" height="405"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PIF7x3UZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gtoy646fo5mbfsk3juh6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PIF7x3UZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gtoy646fo5mbfsk3juh6.png" alt="Image description" width="800" height="409"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Step 5: Create the Lambda function&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Execute the provided code in CloudShell to set up the environment and deploy the Lambda layer containing the Pillow module.
&lt;/li&gt;
&lt;li&gt;Simply copy and paste the following code into CloudShell to install the necessary dependencies and deploy the Lambda function.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Install the required libraries to build new python 

sudo yum install gcc openssl-devel bzip2-devel libffi-devel -y
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Install Pyenv 

curl https://pyenv.run | bash 

echo 'export PYENV_ROOT="$HOME/.pyenv"' &amp;gt;&amp;gt; ~/.bash_profile 

echo 'export PATH="$PYENV_ROOT/bin:$PATH"' &amp;gt;&amp;gt; ~/.bash_profile 

echo 'eval "$(pyenv init -)"' &amp;gt;&amp;gt; ~/.bash_profile 

source ~/.bash_profile 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Install Python version 3.9 

pyenv install 3.9.13 

pyenv global 3.9.13 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Build the pillow Lambda layer 

`mkdir python 

cd python 

pip install pillow -t . 

cd .. 

zip -r9 pillow.zip python/ 

aws lambda publish-layer-version \ 

    --layer-name Pillow \ 

    --description "Python Image Library" \ 

    --license-info "HPND" \ 

    --zip-file fileb://pillow.zip \ 

    --compatible-runtimes python3.9
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Obtain a TrueType font that will be utilized by the Lambda function for watermarking images.
&lt;/li&gt;
&lt;li&gt;Simply copy and paste the provided commands into CloudShell to download the font.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;wget https://m.media-amazon.com/images/G/01/mobile-apps/dex/alexa/branding/Amazon_Typefaces_Complete_Font_Set_Mar2020.zip
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;unzip -oj Amazon_Typefaces_Complete_Font_Set_Mar2020.zip "Amazon_Typefaces_Complete_Font_Set_Mar2020/Ember/AmazonEmber_Rg.ttf"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Create the Lambda code for handling the requests made to the S3 Object Lambda for processing.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cat &amp;lt;&amp;lt; EOF &amp;gt; lambda.py 

import boto3 

import json 

import os 

import logging 

from io import BytesIO 

from PIL import Image, ImageDraw, ImageFont 

from urllib import request 

from urllib.parse import urlparse, parse_qs, unquote 

from urllib.error import HTTPError 

from typing import Optional 



logger = logging.getLogger('S3-img-processing') 

logger.addHandler(logging.StreamHandler()) 

logger.setLevel(getattr(logging, os.getenv('LOG_LEVEL', 'INFO'))) 

FILE_EXT = { 

    'JPEG': ['.jpg', '.jpeg'], 

    'PNG': ['.png'], 

    'TIFF': ['.tif'] 

} 

OPACITY = 64  # 0 = transparent and 255 = full solid 

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def get_img_encoding(file_ext: str) -&amp;gt; Optional[str]: 

    result = None 

    for key, value in FILE_EXT.items(): 

        if file_ext in value: 

            result = key 

            break 

    return result 





def add_watermark(img: Image, text: str) -&amp;gt; Image: 

    font = ImageFont.truetype("AmazonEmber_Rg.ttf", 82) 

    txt = Image.new('RGBA', img.size, (255, 255, 255, 0)) 

    if img.mode != 'RGBA': 

        image = img.convert('RGBA') 

    else: 

        image = img 



    d = ImageDraw.Draw(txt) 

    # Positioning Text 

    width, height = image.size 

    text_width, text_height = d.textsize(text, font) 

    x = width / 2 - text_width / 2 

    y = height / 2 - text_height / 2 

    # Applying Text 

    d.text((x, y), text, fill=(255, 255, 255, OPACITY), font=font) 

    # Combining Original Image with Text and Saving 

    watermarked = Image.alpha_composite(image, txt) 

    return watermarked 

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def handler(event, context) -&amp;gt; dict: 

    logger.debug(json.dumps(event)) 

    object_context = event["getObjectContext"] 

    # Get the presigned URL to fetch the requested original object 

    # from S3 

    s3_url = object_context["inputS3Url"] 

    # Extract the route and request token from the input context 

    request_route = object_context["outputRoute"] 

    request_token = object_context["outputToken"] 

    parsed_url = urlparse(event['userRequest']['url']) 

    object_key = parsed_url.path 

    logger.info(f'Object to retrieve: {object_key}') 

    parsed_qs = parse_qs(parsed_url.query) 

    for k, v in parsed_qs.items(): 

        parsed_qs[k][0] = unquote(v[0]) 

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;filename = os.path.splitext(os.path.basename(object_key)) 

    # Get the original S3 object using the presigned URL 

    req = request.Request(s3_url) 

    try: 

        response = request.urlopen(req) 

    except HTTPError as e: 

        logger.info(f'Error downloading the object. Error code: {e.code}') 

        logger.exception(e.read()) 

        return {'status_code': e.code} 



    if encoding := get_img_encoding(filename[1].lower()): 

        logger.info(f'Compatible Image format found! Processing image: {"".join(filename)}') 

        img = Image.open(response) 

        logger.debug(f'Image format: {img.format}') 

        logger.debug(f'Image mode: {img.mode}') 

        logger.debug(f'Image Width: {img.width}') 

        logger.debug(f'Image Height: {img.height}') 



        img_result = add_watermark(img, parsed_qs.get('X-Amz-watermark', ['Watermark'])[0]) 

        img_bytes = BytesIO() 



        if img.mode != 'RGBA': 

            # Watermark added an Alpha channel that is not compatible with JPEG. We need to convert to RGB to save 

            img_result = img_result.convert('RGB') 

            img_result.save(img_bytes, format='JPEG') 

        else: 

            # Will use the original image format (PNG, GIF, TIFF, etc.) 

            img_result.save(img_bytes, encoding) 

        img_bytes.seek(0) 

        transformed_object = img_bytes.read() 



    else: 

        logger.info(f'File format not compatible. Bypass file: {"".join(filename)}') 

        transformed_object = response.read() 



    # Write object back to S3 Object Lambda 

    s3 = boto3.client('s3') 

    # The WriteGetObjectResponse API sends the transformed data 

    if os.getenv('AWS_EXECUTION_ENV'): 

        s3.write_get_object_response( 

            Body=transformed_object, 

            RequestRoute=request_route, 

            RequestToken=request_token) 

    else: 

        # Running in a local environment. Saving the file locally 

        with open(f'myImage{filename[1]}', 'wb') as f: 

            logger.debug(f'Writing file: myImage{filename[1]} to the local filesystem') 

            f.write(transformed_object) 



    # Exit the Lambda function: return the status code 

    return {'status_code': 200} 

EOF 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Create the IAM role that will be attached to the Lambda function.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws iam create-role --role-name ol-lambda-images --assume-role-policy-document '{"Version": "2012-10-17","Statement": [{"Effect": "Allow", "Principal": {"Service": "lambda.amazonaws.com"}, "Action": "sts:AssumeRole"}]}'
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Attach a predefined IAM policy with the previously created IAM role.
&lt;/li&gt;
&lt;li&gt;This policy contains the minimum permissions needed to execute the Lambda function.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws iam attach-role-policy --role-name ol-lambda-images --policy-arn arn:aws:iam::aws:policy/service-role/AmazonS3ObjectLambdaExecutionRolePolicy 

export OL_LAMBDA_ROLE=$(aws iam get-role --role-name ol-lambda-images | jq -r .Role.Arn) 

export LAMBDA_LAYER=$(aws lambda list-layers --query 'Layers[?contains(LayerName, `Pillow`) == `true`].LatestMatchingVersion.LayerVersionArn' | jq -r .[])
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Create and upload the Lambda function
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws lambda create-function --function-name ol_image_processing \ 

--zip-file fileb://lambda.zip --handler lambda.handler --runtime python3.9 \ 

--role $OL_LAMBDA_ROLE \ 

--layers $LAMBDA_LAYER \ 

--memory-size 1024
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Step 6: Create object lambda access point&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RBKgszTz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lwlsrfs5wnc6289voxve.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RBKgszTz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lwlsrfs5wnc6289voxve.png" alt="Image description" width="800" height="396"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lbVmZgUe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/saugocfwout89bd7ilan.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lbVmZgUe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/saugocfwout89bd7ilan.png" alt="Image description" width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Step 7: Retrieve the image through S3 object lambda access point&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gsphd4IS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/57deip95rn7cuuatal0t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gsphd4IS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/57deip95rn7cuuatal0t.png" alt="Image description" width="799" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo Result
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fJjJGGxv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jj1po9x9hxfag5wy774k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fJjJGGxv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jj1po9x9hxfag5wy774k.png" alt="Image description" width="800" height="272"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Benefits
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Using S3 Object Lambda provides several benefits, including: &lt;/li&gt;
&lt;li&gt;Reduced data transfer costs &lt;/li&gt;
&lt;li&gt;Improved performance and reduced latency &lt;/li&gt;
&lt;li&gt;Simplified application architecture &lt;/li&gt;
&lt;li&gt;Ability to apply custom logic to retrieved data &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Best Practices while using S3 Object Lambda
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9xm4beE4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w8dtn6sthvxma5w7ih35.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9xm4beE4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w8dtn6sthvxma5w7ih35.png" alt="Image description" width="800" height="234"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Security Considerations while using amazon s3 object lambda
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2SaQsZtN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wnhkumdw1j0grox1yuc4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2SaQsZtN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wnhkumdw1j0grox1yuc4.png" alt="Image description" width="800" height="244"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  S3 Object Lambda pricing
&lt;/h2&gt;

&lt;p&gt;When utilizing S3 Object Lambda, you incur costs based on the amount of data that is delivered to you through S3 Object Lambda, with a charge applied per gigabyte.  &lt;/p&gt;

&lt;p&gt;Additionally, charges are incurred for the type of requests made (GET, LIST, and HEAD requests), as well as AWS Lambda compute charges for the duration during which your designated function processes the requested data. &lt;/p&gt;

&lt;h2&gt;
  
  
  Resource Clean up
&lt;/h2&gt;

&lt;p&gt;It is time for you to clean up your own resources that you have created as part of this article by following the instructions below. &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Step 1: Delete the S3 Object Lambda Access Point&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the S3 console and select "Object Lambda Access Points" from the menu on the left-hand side. &lt;/li&gt;
&lt;li&gt;On the page for Object Lambda Access Points, click on the radio button next to the S3 Object Lambda Access Point that you previously created. &lt;/li&gt;
&lt;li&gt;Finally, click on the "Delete" option. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Step 2: Delete the S3 Access Point&lt;/em&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to the left navigation pane of the S3 console and select "Access Points". &lt;/li&gt;
&lt;li&gt;Locate the S3 Access Point you want to delete and click on the radio button next to its name. &lt;/li&gt;
&lt;li&gt;Select the "Delete" option.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Step 3: Delete the test object&lt;/em&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Access the S3 console and locate the Buckets menu option on the left-hand side. Next, locate the test bucket you have been using in this tutorial and remove the test object within it.
&lt;/li&gt;
&lt;li&gt;Simply click on the checkbox beside the name of the test object, followed by selecting the Delete button. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Step 4: Delete the S3 bucket&lt;/em&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Navigate to the S3 console menu on the left-hand side and click on "Buckets".
&lt;/li&gt;
&lt;li&gt;From there, locate the source bucket you established specifically for this tutorial and mark the radio button on its left side. Finally, proceed by clicking on the "Delete" button. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Step 5: Delete the Lambda function&lt;/em&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Access the AWS Lambda console. &lt;/li&gt;
&lt;li&gt;Navigate to the "Functions" section in the left sidebar. &lt;/li&gt;
&lt;li&gt;Locate the function you created and mark the checkbox next to its name. &lt;/li&gt;
&lt;li&gt;Click on "Actions" and then select "Delete. &lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;Now it's your time to use S3 Object Lambda feature!!&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>serverless</category>
      <category>awscommunity</category>
      <category>lambda</category>
      <category>s3</category>
    </item>
    <item>
      <title>Celebrating Milestones: Reflecting on My Debut Tech Talk at the AWS Community</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Mon, 26 Jun 2023 21:56:53 +0000</pubDate>
      <link>https://dev.to/omshree/celebrating-milestones-reflecting-on-my-debut-tech-talk-at-the-aws-community-21n7</link>
      <guid>https://dev.to/omshree/celebrating-milestones-reflecting-on-my-debut-tech-talk-at-the-aws-community-21n7</guid>
      <description>&lt;p&gt;The path to success is rarely a solitary one. Along our journey, we often encounter mentors who guide, inspire, and uplift us. I recently had the privilege of presenting my debut speaker tech talk at Genese Academy under the AWS User Group Nepal, and this momentous achievement would not have been possible without the constant and limitless support and motivation of my manager and AWS Hero, Bhuvaneswari Subramani or as I call her Bhuvana. In this blog post, I would like to share the inspiring story of how Bhuvana helped me overcome my fears, nurtured my potential, and empowered me to step onto the stage with confidence and deliver my first tech talk for the AWS Community. &lt;/p&gt;

&lt;p&gt;A few months ago, I vividly recall the moment when Bhuvana visited our Ahmedabad Office. We engaged in a conversation about the AWS Community and her remarkable journey. It had always been my desire to contribute to the AWS Community and become an active member. During our discussion, Bhuvana provided me with the motivation to start writing blogs and preparing presentations, assuring me that she would help me find an opportunity to present within the community. &lt;/p&gt;

&lt;p&gt;Embracing Bhuvana's guidance, I began crafting and publishing blogs on dev.to. One fateful day, during one of our calls, Bhuvana excitedly shared with me, "Om, I have received an invitation to present at a University in Nepal under the AWS User Group Nepal, and you will be presenting alongside me." Upon hearing those words, I couldn't contain my excitement, and I found myself dancing with sheer joy. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--49Qggzed--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uthe5k1qluwl576a4usf.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--49Qggzed--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uthe5k1qluwl576a4usf.jpg" alt="Image description" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The collaboration between the AWS User Group Nepal and AWS User Group India blossomed into an absolutely AWSome talk. I was filled with excitement as I witnessed this remarkable cross-country collaboration unfold.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bVX5wFdT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q5lo9ewxqnnxxtcuxlwy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bVX5wFdT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q5lo9ewxqnnxxtcuxlwy.png" alt="Image description" width="800" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We embarked on the journey of preparing the slide deck, carefully curating content that would captivate and educate our audience.  &lt;/p&gt;

&lt;p&gt;Finally, on the 8th of June, 2023, the day arrived - it marked a significant milestone for me, as I delivered my first-ever debut tech talk. The mix of nerves and exhilaration was palpable, but I was determined to share my knowledge and passion with the audience. &lt;/p&gt;

&lt;p&gt;The talk became a memorable experience, showcasing the power of collaboration and knowledge exchange between the AWS User Group Nepal and AWS User Group India. It was a testament to the vibrant and supportive tech community that we belong to. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JYeW7C8t--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3xpvq20s8ws1sxhxi649.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JYeW7C8t--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3xpvq20s8ws1sxhxi649.png" alt="**_Bhuvana during the session_**" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;During our session on "Serverless Computing with AWS Lambda," Bhuvana and I delved into a wide range of topics, exploring the evolution of serverless computing, demystifying the concept of servers, understanding what serverless truly means, and highlighting the numerous advantages of adopting a serverless approach. &lt;/p&gt;

&lt;p&gt;We also delved into the comprehensive suite of services offered by the AWS Serverless Platform. Through an engaging demo, we showcased the power of services such as Amazon S3, Amazon API Gateway, AWS Lambda, Amazon CloudWatch, Amazon EventBridge, and many other noteworthy components. &lt;/p&gt;

&lt;p&gt;Together, we aimed to provide a holistic view of serverless computing, empowering our audience to leverage these cutting-edge technologies to build scalable, flexible, and cost-efficient applications. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8xb6cWJN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uddwbj3xwpjo8npe1d0q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8xb6cWJN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uddwbj3xwpjo8npe1d0q.png" alt="Image description" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--v8wcp3Xm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uzn0h6ujr95mj4vrr2jy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v8wcp3Xm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uzn0h6ujr95mj4vrr2jy.png" alt="**_Omshree during the session_**" width="800" height="428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Moin7ntM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4ow64uant50pnx0v7zbj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Moin7ntM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4ow64uant50pnx0v7zbj.png" alt="**_Demo for Serverless Service using AWS Lambda_** " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ikIDlyAX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9rdvzfuo6le4s5vkeskq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ikIDlyAX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9rdvzfuo6le4s5vkeskq.png" alt="**_Q&amp;amp;A  round at the end of the Session_** " width="800" height="422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This journey has ignited a fire within me, fueling a deep passion to continue making meaningful contributions, expanding my knowledge, and inspiring others in the dynamic and ever-evolving world of technology. The experience of delivering my first tech talk has opened doors to new possibilities and opportunities for growth. &lt;/p&gt;

</description>
      <category>aws</category>
      <category>community</category>
      <category>serverless</category>
      <category>lambda</category>
    </item>
    <item>
      <title>Maximizing Efficiency with EC2 Image Builder for Your Container Image Pipeline</title>
      <dc:creator>Omshree Butani</dc:creator>
      <pubDate>Sun, 14 May 2023 19:39:02 +0000</pubDate>
      <link>https://dev.to/omshree/maximizing-efficiency-with-ec2-image-builder-for-your-container-image-pipeline-2j0k</link>
      <guid>https://dev.to/omshree/maximizing-efficiency-with-ec2-image-builder-for-your-container-image-pipeline-2j0k</guid>
      <description>&lt;p&gt;In recent years, containerization has become a popular approach for deploying software applications. Containers allow developers to package their applications along with their dependencies into a single portable package, which can be easily deployed across different environments. However, creating and managing container images can be a complex and time-consuming process. &lt;/p&gt;

&lt;p&gt;This is where EC2 Image Builder comes in - a managed service provided by AWS that helps to automate the creation, management, and deployment of container images. With EC2 Image Builder, you can easily create and maintain secure, up-to-date container images that can be used across multiple environments. &lt;/p&gt;

&lt;p&gt;In this blog post, we will explore how to create a container image pipeline using the EC2 Image Builder. We'll take a step-by-step approach, starting from setting up our environment to creating, testing, and deploying container images using EC2 Image Builder. We'll also cover some best practices for creating container images and show how EC2 Image Builder can help you adhere to those best practices. &lt;/p&gt;

&lt;p&gt;TABLE OF CONTENTS: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How EC2 Image Builder works?&lt;/li&gt;
&lt;li&gt;AWS Services Used &lt;/li&gt;
&lt;li&gt;Create &amp;amp; Configure Amazon ECR&lt;/li&gt;
&lt;li&gt;Create &amp;amp; Configure Image Pipeline&lt;/li&gt;
&lt;li&gt;Pipeline Output&lt;/li&gt;
&lt;li&gt;EC2 Image Builder pricing&lt;/li&gt;
&lt;li&gt;Resource CleanUp&lt;/li&gt;
&lt;li&gt;FAQs&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How EC2 Image Builder works?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--E6t9T-tJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mdemas4ar3remduwnooz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--E6t9T-tJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mdemas4ar3remduwnooz.png" alt="Image description" width="800" height="248"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With Image Builder, customers can easily automate their image management processes using an intuitive wizard available on the AWS console.  &lt;/p&gt;

&lt;p&gt;This service enables them to generate a streamlined pipeline to create Linux and Windows Server images that comply with standards, both for AWS and on-premises use.  &lt;/p&gt;

&lt;p&gt;Additionally, Image Builder ensures that the images are kept up to date by automatically generating new ones when software updates become available.  &lt;/p&gt;

&lt;p&gt;After testing the newly created images, they are automatically distributed to the specified AWS regions. &lt;/p&gt;

&lt;p&gt;In summary, Image Builder provides a convenient and efficient way to manage images and keep them current. &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;em&gt;AWS Services Used&lt;/em&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;EC2 Image Builder &lt;/li&gt;
&lt;li&gt;Amazon ECR &lt;/li&gt;
&lt;li&gt;Amazon EC2 &lt;/li&gt;
&lt;li&gt;Identity and Access Management (IAM) &lt;/li&gt;
&lt;li&gt;Cloud Watch &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;EC2 Image Builder&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Amazon EC2 Image Builder is a fully managed AWS service that simplifies the creation, customization, and distribution of Amazon Machine Images (AMIs) for EC2 instances. It allows you to automate the image building process by providing a graphical interface or API-driven approach to create, maintain, and distribute custom images that meet your specific configuration requirements. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Amazon ECR&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Amazon Elastic Container Registry (ECR) is a fully managed Docker container registry that makes it easy to store, manage, and deploy Docker container images. ECR integrates with other AWS services like Amazon ECS, Amazon EKS, and AWS Fargate, and offers features such as image scanning, lifecycle policies, and integration with AWS Identity and Access Management (IAM) for secure access control. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Amazon EC2&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;EC2 instances used for EC2 Image Builder are virtual servers that can be launched and managed on-demand. These instances provide the computing power and resources necessary for EC2 Image Builder to build, test, and deploy images. When building images, EC2 Image Builder launches and manages temporary instances, known as build instances, to perform the image building tasks. &lt;/p&gt;

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

&lt;p&gt;AWS Identity and Access Management (IAM) is used with EC2 Image Builder to provide secure access control and manage permissions for users and services that interact with EC2 Image Builder. Additionally, IAM enables integration with other AWS services, such as Amazon S3, which is commonly used to store and manage EC2 Image Builder artifacts. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloud Watch&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Additionally, IAM enables integration with other AWS services, such as Amazon S3, which is commonly used to store and manage EC2 Image Builder artifacts. With CloudWatch, users can monitor the health of their EC2 Image Builder resources, such as build instances and pipelines, and troubleshoot issues by analyzing logs and metrics.&lt;/p&gt;

&lt;h2&gt;
  
  
  Create &amp;amp; Configure Amazon ECR
&lt;/h2&gt;

&lt;p&gt;Sign into the AWS Management Console and open the &lt;em&gt;&lt;strong&gt;Amazon ECR&lt;/strong&gt;&lt;/em&gt; console and click on &lt;em&gt;&lt;strong&gt;Create Repository&lt;/strong&gt;&lt;/em&gt;.  &lt;/p&gt;

&lt;p&gt;In the &lt;strong&gt;&lt;em&gt;Visibility&lt;/em&gt;&lt;/strong&gt; settings select Private and write the repository name.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8G19j5Vn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mzd2rw2y9tniemqed82a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8G19j5Vn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mzd2rw2y9tniemqed82a.png" alt="Image description" width="724" height="408"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enable &lt;strong&gt;&lt;em&gt;Scan on Push&lt;/em&gt;&lt;/strong&gt; to have each image automatically scanned after being pushed to a repository &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FaBMiwQk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7to4441dwwq8ccqf8uds.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FaBMiwQk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7to4441dwwq8ccqf8uds.png" alt="Image description" width="724" height="252"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Create &amp;amp; Configure image pipeline
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Specify pipeline details
&lt;/h3&gt;

&lt;p&gt;Open the &lt;strong&gt;&lt;em&gt;EC2 Image Builder&lt;/em&gt;&lt;/strong&gt; console and click on Create image pipeline &lt;/p&gt;

&lt;p&gt;Enter the Pipeline name and select enable enhanced metadata collection  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3vXQlHIy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d9agvkvpj298o0qbpr5o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3vXQlHIy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d9agvkvpj298o0qbpr5o.png" alt="Image description" width="670" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In schedule options keep Schedule builder as select Run pipeline at the scheduled time if there are dependency updates &lt;/p&gt;

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

&lt;p&gt;Select Create new recipe in the configuration options and select Docker image as image type &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_-bN_kMl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ine6665i3gp6ddpnxd7e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_-bN_kMl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ine6665i3gp6ddpnxd7e.png" alt="Image description" width="708" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the General section, enter name and version as 1.0.0 for the configuration &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3DK8G-Yi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i8n8711yp22pr18str8p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3DK8G-Yi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i8n8711yp22pr18str8p.png" alt="Image description" width="697" height="322"&gt;&lt;/a&gt;                     &lt;/p&gt;

&lt;p&gt;Select managed images and Amazon Linux as Image Operating System &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--INq0zfJZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5wc6yr37gsg4af82dyci.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--INq0zfJZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5wc6yr37gsg4af82dyci.png" alt="Image description" width="676" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Select Quick Start as image origin and choose an image name as per your choice. Use the latest available OS version as Auto-versioning option &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--f-e1DqvV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mccw6npzhwceyj3warl2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--f-e1DqvV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mccw6npzhwceyj3warl2.png" alt="Image description" width="678" height="382"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Let's select two build components &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lCjCzePY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9ktav2lv4x6bo3kypgdv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lCjCzePY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9ktav2lv4x6bo3kypgdv.png" alt="Image description" width="700" height="408"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--r3ZzFz-3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x8rqoc4s74pzouz7sjjl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--r3ZzFz-3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x8rqoc4s74pzouz7sjjl.png" alt="Image description" width="706" height="367"&gt;&lt;/a&gt;                            &lt;/p&gt;

&lt;p&gt;Dockerfile template will be created by default from your above configurations &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iwmpgXgW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0r5kww94deqs09qqdesw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iwmpgXgW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0r5kww94deqs09qqdesw.png" alt="Image description" width="721" height="231"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Select Target repository which you created earlier &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4Gyz2L4B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ahd7ayuq99teztdvdmu2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4Gyz2L4B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ahd7ayuq99teztdvdmu2.png" alt="Image description" width="763" height="244"&gt;&lt;/a&gt;                     &lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Define infrastructure configuration
&lt;/h3&gt;

&lt;p&gt;Keep the infrastructure configuration as default. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5ye4Ar4b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0mi532s6ccp3q0fsb7q5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5ye4Ar4b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0mi532s6ccp3q0fsb7q5.png" alt="Image description" width="675" height="450"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4: Define distribution settings
&lt;/h3&gt;

&lt;p&gt;Keep the distribution settings as default. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gSzHC6Pa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eiyy45q28re2fb70jo92.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gSzHC6Pa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eiyy45q28re2fb70jo92.png" alt="Image description" width="714" height="337"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on Create Pipeline &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PUQhZx9q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tsccy9xk7mqzmcavnm7n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PUQhZx9q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tsccy9xk7mqzmcavnm7n.png" alt="Image description" width="717" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Pipeline Output
&lt;/h2&gt;

&lt;p&gt;As you have scheduled your pipeline to be executed at a particular time you need to manually Run Pipeline &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dLn5R7UE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o7gbn48zg8v61lfweo84.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dLn5R7UE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o7gbn48zg8v61lfweo84.png" alt="Image description" width="688" height="331"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here is the log from CloudWatch &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--oRAzQXEg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4f2fiads1fz8nxjs2mrv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--oRAzQXEg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4f2fiads1fz8nxjs2mrv.png" alt="Image description" width="774" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;EC2 Image Builder pricing&lt;/p&gt;

&lt;p&gt;Using EC2 Image Builder to build unique AMI or container images is free. Other services employed in the process, however, are included in the standard pricing. Depending on your configuration, the use of the following AWS services may result in costs when you create, build, store, and distribute your custom AMI or container images. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Storing logs on Amazon S3 &lt;/li&gt;
&lt;li&gt;Storing Amazon EBS Snapshots for your AMIs &lt;/li&gt;
&lt;li&gt;Storing container images in Amazon ECR &lt;/li&gt;
&lt;li&gt;Pushing and pulling container images into and out of Amazon ECR &lt;/li&gt;
&lt;li&gt;Launching an EC2 instance &lt;/li&gt;
&lt;li&gt;Validating images with Amazon Inspector &lt;/li&gt;
&lt;li&gt;If Systems Manager Advanced Tier is turned on, and Amazon EC2 instances run with on-premises activation, you might be charged for resources through Systems Manager &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Resource Clean up
&lt;/h2&gt;

&lt;p&gt;It is time for you to clean up your own resources that you have created as part of this article by following the below instructions. &lt;/p&gt;

&lt;h3&gt;
  
  
  Delete Pipeline
&lt;/h3&gt;

&lt;p&gt;Go to EC2 Image Builder console and choose Image Pipelines from the navigation pane.  &lt;/p&gt;

&lt;p&gt;Select the pipeline that you have created and on the Actions menu, choose Delete. &lt;/p&gt;

&lt;p&gt;To confirm the deletion, input "Delete" in the designated field, and then select the option to delete. &lt;/p&gt;

&lt;h3&gt;
  
  
  Delete Container Recipe
&lt;/h3&gt;

&lt;p&gt;Choose Container Recipe from the navigation pane and select the container recipe you created. &lt;/p&gt;

&lt;p&gt;At the top of the Container recipes panel, on the Actions menu, choose Delete recipe. &lt;/p&gt;

&lt;p&gt;To confirm the deletion, input "Delete" in the designated field, and then select the option to delete. &lt;/p&gt;

&lt;h3&gt;
  
  
  Delete Infrastructure Configuration
&lt;/h3&gt;

&lt;p&gt;Choose Infrastructure Configuration from the navigation pane and select the infrastructure configuration you created. &lt;/p&gt;

&lt;p&gt;At the top of the Infrastructure Configuration panel, on the Actions menu, choose Delete recipe. &lt;/p&gt;

&lt;p&gt;To confirm the deletion, input "Delete" in the designated field, and then select the option to delete. &lt;/p&gt;

&lt;h3&gt;
  
  
  Delete Distribution Settings
&lt;/h3&gt;

&lt;p&gt;Choose Distribution Settings from the navigation pane and select the distribution settings you created. &lt;/p&gt;

&lt;p&gt;At the top of the Distribution Settings panel, on the Actions menu, choose Delete recipe. &lt;/p&gt;

&lt;p&gt;To confirm the deletion, input "Delete" in the designated field, and then select the option to delete. &lt;/p&gt;

&lt;h3&gt;
  
  
  Delete Image
&lt;/h3&gt;

&lt;p&gt;Choose Images from the navigation pane and select the version of the image you want to delete. &lt;/p&gt;

&lt;p&gt;At the top of the Image build versions panel, choose Delete version. &lt;/p&gt;

&lt;p&gt;To confirm the deletion, input "Delete" in the designated field, and then select the option to delete. &lt;/p&gt;

&lt;h2&gt;
  
  
  FAQs
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What is an Image Builder recipe?
&lt;/h3&gt;

&lt;p&gt;An EC2 Image Builder recipe is a file that captures the configuration and steps needed to build a specific Amazon Machine Image (AMI). Recipes can be saved, shared, and version-controlled outside of the Image Builder UI, allowing for repeatable builds and collaboration. This enables users to maintain version-controlled recipes with their own version control software, making it easy to share and track changes. &lt;/p&gt;

&lt;h3&gt;
  
  
  Which operating systems does the Image Builder support?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Amazon Linux 2 and 2023 &lt;/li&gt;
&lt;li&gt;Windows Server 2012R2, 2016, 2019, 2004, 20H2, and 2022 &lt;/li&gt;
&lt;li&gt;Ubuntu 18.04 LTS, 20.04 LTS, and 22.04 LTS &lt;/li&gt;
&lt;li&gt;Red Hat Enterprise Linux (RHEL) 7 and 8 &lt;/li&gt;
&lt;li&gt;Cent OS 7 and 8 &lt;/li&gt;
&lt;li&gt;SUSE Linux Enterprise Server (SLES) 12 and 15&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  How can I integrate my existing CI/CD pipeline with Image Builder to produce my images?
&lt;/h3&gt;

&lt;p&gt;EC2 Image Builder can be integrated with AWS CI/CD services like CodeBuild and CodePipeline, enabling the creation of a complete end-to-end CI/CD pipeline that handles AMI building, testing, and deployment. &lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
