<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: daniel shaibu</title>
    <description>The latest articles on Forem by daniel shaibu (@daniel_shaibu).</description>
    <link>https://forem.com/daniel_shaibu</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%2F3395301%2Ffaa2c2cc-1381-47d9-b2be-bcd87df65315.png</url>
      <title>Forem: daniel shaibu</title>
      <link>https://forem.com/daniel_shaibu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/daniel_shaibu"/>
    <language>en</language>
    <item>
      <title>Perform basic Self-Service Password Rest (SSPR) tasks in Microsoft-Entra-Management-Tasks</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Tue, 10 Mar 2026 18:08:06 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/perform-basic-self-service-password-rest-sspr-tasks-in-microsoft-entra-management-tasks-137g</link>
      <guid>https://forem.com/daniel_shaibu/perform-basic-self-service-password-rest-sspr-tasks-in-microsoft-entra-management-tasks-137g</guid>
      <description>&lt;p&gt;In this exercise you will learn where the self-service password reset feature is located in Microsoft Entra and explore the process to configure it.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the Microsoft Entra admin center at &lt;a href="https://entra.microsoft.com" rel="noopener noreferrer"&gt;https://entra.microsoft.com&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Log in using the credentials for your tenant.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;From the menu on the left, open Protection submenu and then select Password reset. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwtpyf9bmv697hkzj32u5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwtpyf9bmv697hkzj32u5.png" alt=" " width="800" height="493"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Find the Self service password enabled bar.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Value           What it means&lt;br&gt;
None            No users can use the SSPR feature&lt;br&gt;
Selected        Only members of the selected group(s) can use SSPR&lt;br&gt;
All         All users can use the SSPR feature&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Set the value to Selected. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnyhhzznp9d767b2nxvsq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnyhhzznp9d767b2nxvsq.png" alt=" " width="800" height="490"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the text No groups selected.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Mark the Project23 group we created previously.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Use the Select button to complete your choice.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Save your configuration.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>beginners</category>
      <category>microsoftgraph</category>
      <category>microsoftcloud</category>
      <category>devops</category>
    </item>
    <item>
      <title>Perform basic Password Protection tasks in Microsoft-Entra-Management-Tasks</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Tue, 10 Mar 2026 10:52:13 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/perform-basic-password-protection-tasks-in-microsoft-entra-management-tasks-2mhl</link>
      <guid>https://forem.com/daniel_shaibu/perform-basic-password-protection-tasks-in-microsoft-entra-management-tasks-2mhl</guid>
      <description>&lt;p&gt;In this exercise you will explore the capabilities Microsoft Entra ID offers in protecting your password. You will see how you can automate and enforce a strong password, and use login restrictions to prevent password attacks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;View lock settings, and review duration and threshold values&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the Microsoft Entra admin center at &lt;a href="https://entra.microsoft.com" rel="noopener noreferrer"&gt;https://entra.microsoft.com&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Log in using the credentials for your tenant.&lt;/li&gt;
&lt;li&gt;From the menu on the left, select Protection submenu and then select Authentication methods.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgdo1kj3pa9vs6hlwlvhi.png" alt=" " width="800" height="512"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Note - You could also search on Password protection in the search bar at the top.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Select Password protection from the list. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fusudupfwan4ynqrau3ck.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fusudupfwan4ynqrau3ck.png" alt=" " width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Set the Custom smart lockout with the following values.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Field                Value  Description&lt;br&gt;
Lockout threshold   5   How many times can you fail to login with&lt;br&gt;&lt;br&gt;
                                a password before your account locks.&lt;br&gt;
Lockout duration    30  How many second the account should lock&lt;br&gt;&lt;br&gt;
                                when the threshold is reached.   &lt;/p&gt;

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

&lt;p&gt;Note - You can also configure a custom banned password list here.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Set Enforce custom list to Yes.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Enter the following values:&lt;br&gt;
Contoso&lt;br&gt;
London&lt;br&gt;
Widget&lt;br&gt;
Lab Tip - Your lab is being performed for a company called Contoso, located in London, and it makes Widgets. By enter these three words you block them from being part or a whole of a password.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Set the value for Mode to Enforced.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the Save item at the top of the screen.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>devops</category>
      <category>aws</category>
      <category>azure</category>
      <category>microsoft365</category>
    </item>
    <item>
      <title>Get-started-Microsoft-Entra-Management-Tasks</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Sat, 07 Mar 2026 14:03:01 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/get-started-microsoft-entra-management-tasks-19ol</link>
      <guid>https://forem.com/daniel_shaibu/get-started-microsoft-entra-management-tasks-19ol</guid>
      <description>&lt;p&gt;&lt;strong&gt;Overview of the Exercise&lt;/strong&gt;&lt;br&gt;
This exercise teaches you how to perform foundational identity tasks in &lt;strong&gt;Microsoft Entra ID&lt;/strong&gt;, including:&lt;/p&gt;

&lt;p&gt;Creating users&lt;/p&gt;

&lt;p&gt;Assigning licenses&lt;/p&gt;

&lt;p&gt;Resetting passwords&lt;/p&gt;

&lt;p&gt;Deleting and restoring users&lt;/p&gt;

&lt;p&gt;These are core admin skills for any cloud or IT role.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Create a New User&lt;/strong&gt;&lt;br&gt;
You begin by creating a standard cloud‑only user.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Steps&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Sign in to the Microsoft Entra admin center. (&lt;a href="https://entra.microsoft.com" rel="noopener noreferrer"&gt;https://entra.microsoft.com&lt;/a&gt;) &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8m550wgnv3j9ub1itiea.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8m550wgnv3j9ub1itiea.png" alt=" " width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the left menu, select Identity → Users.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8wsq1usaqgebi53q85ll.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8wsq1usaqgebi53q85ll.png" alt=" " width="800" height="576"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select All users → New user.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwlrymoq3bp93i9pzjjv7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwlrymoq3bp93i9pzjjv7.png" alt=" " width="800" height="510"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose Create new user.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxi4ymwo8skmzm4fj1ast.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxi4ymwo8skmzm4fj1ast.png" alt=" " width="800" height="510"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

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

&lt;ol&gt;
&lt;li&gt;Enter the required details:
Username
Name
Password settings 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw08fkjwfi9i9zyg5fr8c.png" alt=" " width="800" height="596"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;2. Select the Properties tab&lt;/strong&gt;&lt;br&gt;
Set the values for &lt;br&gt;
first and &lt;br&gt;
last name:&lt;br&gt;
User type to Member  If you pick Guest, it will restrict the users capabilities.&lt;br&gt;
Usage location to United States &lt;br&gt;
Select the Review + create button&lt;br&gt;
Select Create. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo017adwsdi55b2ps0ggm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo017adwsdi55b2ps0ggm.png" alt=" " width="800" height="589"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Select Create.&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;This adds the user to your directory.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Subtask 1 - Log in to confirm user&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open an InPrivate browsing window.&lt;/li&gt;
&lt;li&gt;Connect to the Microsoft Entra admin center at the link &lt;a href="https://entra.microsoft.com" rel="noopener noreferrer"&gt;https://entra.microsoft.com&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Task 2 - Add a license to the user&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open a new tab in your browser.&lt;/li&gt;
&lt;li&gt;Connect to the Microsoft 365 admin center at https//:admin.microsoft.com.&lt;/li&gt;
&lt;li&gt;If prompted, log in using the credentials for your tenant.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3b2bwdzov8ubpesdkkcg.png" alt=" " width="800" height="517"&gt;
&lt;/li&gt;
&lt;li&gt;Find the menu on the left side of the screen.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Open the Billing item in the menu.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvyqgp8if50bzs6014h1w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvyqgp8if50bzs6014h1w.png" alt=" " width="800" height="517"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select Licenses from the list.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ab8npx8rnee9zfcw6q4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8ab8npx8rnee9zfcw6q4.png" alt=" " width="800" height="514"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When the list of licenses appears, select Microsoft Power Automate Free.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the + Assign licenses item.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose Brogeswar from the list (user created in previous task).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the Assign button at the bottom of the page.&lt;br&gt;
Notice the message that you have successfully assigned a license.&lt;br&gt;
Close the tab with Microsoft 365 admin center.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Task 3 - Invite an external user to your tenant&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;If not already open - Open a browser and connect to the Microsoft Entra admin center at &lt;a href="https://entra.microsoft.com" rel="noopener noreferrer"&gt;https://entra.microsoft.com&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;If prompted, log in using the credentials for your tenant.&lt;/li&gt;
&lt;li&gt;In the left menu find the Identity section. Open it if not already opened.&lt;/li&gt;
&lt;li&gt;Select Users then select All users. 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl8dxnoy6ii1az2xfta2w.png" alt=" " width="800" height="599"&gt;
&lt;/li&gt;
&lt;li&gt;Choose the option to Invite external user from the dropdown.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4xkngajq42nvangcgu9z.png" alt=" " width="800" height="513"&gt;
&lt;/li&gt;
&lt;li&gt;Enter the information for your new external user:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Field:  Value&lt;br&gt;
Email:  &lt;a href="mailto:ExtUser@testemail.com"&gt;ExtUser@testemail.com&lt;/a&gt;&lt;br&gt;
Display name:   External User&lt;br&gt;
Message Thank you for joining the company for this short work project. We look forward to building this project together.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq4ysor8d7y7tth1pa2ar.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq4ysor8d7y7tth1pa2ar.png" alt=" " width="800" height="511"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Select the Review + Create button.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2kb37y13di5w3b3hgz7q.png" alt=" " width="800" height="515"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Task 4 - Assign a role to a user&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;If not already open - Open a browser and connect to the Microsoft Entra admin center at &lt;a href="https://entra.microsoft.com" rel="noopener noreferrer"&gt;https://entra.microsoft.com&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;If prompted, log in using the credentials for your tenant.&lt;/li&gt;
&lt;li&gt;In the left menu find the Identity section. Open it if not already opened.&lt;/li&gt;
&lt;li&gt;Select Users then select All users. 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsxed22qnxjbmc8a4oyuo.png" alt=" " width="800" height="514"&gt;
&lt;/li&gt;
&lt;li&gt;Choose the user Bhogeswar Kalita create in the earlier task.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Firt5x1ep5vlyhqt70loo.png" alt=" " width="800" height="514"&gt;
&lt;/li&gt;
&lt;li&gt;From the newly opened menu select Assigned roles. 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F66rz4pfmkfvftv3ymgl4.png" alt=" " width="800" height="506"&gt;
&lt;/li&gt;
&lt;li&gt;At the top of the screen select + Add assignment.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsbhfsjf4f3hff5l99neo.png" alt=" " width="800" height="513"&gt;
&lt;/li&gt;
&lt;li&gt;From the Select role dropdown menu chose the role Attribute Definition Reader. 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe2u4aws4sgtva80h10kd.png" alt=" " width="800" height="513"&gt;
&lt;/li&gt;
&lt;li&gt;Select the Next button when it becomes available.&lt;/li&gt;
&lt;li&gt;Choose the option Eligible for Assignment type.
11`. Select Assign. 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl8lggbkgqkufk1pr04t8.png" alt=" " width="800" height="514"&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>azure</category>
      <category>beginners</category>
      <category>microsoft</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>How to Create a VPC in AWS</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Thu, 26 Feb 2026 12:01:49 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/how-to-create-a-vpc-in-aws-3mj2</link>
      <guid>https://forem.com/daniel_shaibu/how-to-create-a-vpc-in-aws-3mj2</guid>
      <description>&lt;p&gt;A Virtual Private Cloud (VPC) is the foundation of every AWS network. It lets you define your own IP ranges, create public/private subnets, attach gateways, and control traffic flow. VNet (Azure) serves a similar purpose in Azure — it’s the foundation of Azure networking, enabling communication between Azure resources, on-premises networks, and the internet. VNets define the overall address space and can be segmented into subnets. Security is managed using Network Security Groups (NSGs), which combine AWS SG and NACL functionality, and VNets support peering and VPN/ExpressRoute for hybrid connectivity. &lt;br&gt;
Subnets exist within a VPC or VNet and divide the network into smaller, manageable segments. Each subnet has its own IP address range (CIDR block) and can be associated with specific route tables and security rules. In AWS, subnets are AZ-specific and can be public or private depending on routing to an Internet Gateway. In Azure, subnets are not tied to physical zones but are logical divisions of the VNet, often used for tiered application design and traffic isolation .&lt;/p&gt;

&lt;p&gt;Key distinctions:&lt;/p&gt;

&lt;p&gt;Scope: VPC/VNet define the entire virtual network, subnets are segments within them.&lt;/p&gt;

&lt;p&gt;Function: VPC/VNet handle global network configuration (address space, connectivity), subnets handle resource grouping and traffic control.&lt;/p&gt;

&lt;p&gt;Connectivity: VPC/VNet connect to other networks (on-premises, internet), subnets control internal segmentation.&lt;/p&gt;

&lt;p&gt;Security: VPC (AWS) uses SG + NACL; VNet (Azure) uses NSG; subnets inherit and apply these rules at their level.&lt;/p&gt;

&lt;p&gt;Example: For a 3-tier app —&lt;/p&gt;

&lt;p&gt;VPC/VNet: Encompasses all tiers.&lt;/p&gt;

&lt;p&gt;Subnets: Separate ones for web, application, and database layers for isolation and security.&lt;/p&gt;

&lt;p&gt;AWS: VPC (10.0.0.0/16)&lt;br&gt;
├── Public Subnet (10.0.1.0/24) - Web servers&lt;br&gt;
├── Private Subnet (10.0.2.0/24) - App servers&lt;br&gt;
└── Private Subnet (10.0.3.0/24) - Database&lt;br&gt;
Azure: VNet (10.1.0.0/16)&lt;br&gt;
├── Subnet-Frontend (10.1.1.0/24)&lt;br&gt;
├── Subnet-App (10.1.2.0/24)&lt;br&gt;
└── Subnet-DB (10.1.3.0/24)&lt;br&gt;
Copy&lt;br&gt;
This layered approach ensures security, scalability, and efficient traffic management in both AWS and Azure environments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step‑by‑Step Guide on How to Create a VPC in AWS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1 — Open the Amazon VPC Console&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Sign in to the AWS Management Console.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the search bar, type VPC and open Amazon VPC.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feb2vdwbczaqyu5w8lz2m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feb2vdwbczaqyu5w8lz2m.png" alt=" " width="800" height="584"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the left menu, select Your VPCs.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Step 2 — Start the VPC Creation Wizard&lt;/strong&gt;&lt;br&gt;
AWS provides two options:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;VPC and more (recommended — creates subnets, route tables, and gateways automatically) &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9dwdsxk24ik2g17irp4v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9dwdsxk24ik2g17irp4v.png" alt=" " width="800" height="603"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;VPC only (creates only the VPC)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For most tutorials and DEV articles, choose Create VPC → VPC and more.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3 — Configure VPC Settings&lt;/strong&gt;&lt;br&gt;
Fill in the following fields:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;VPC Settings&lt;/strong&gt;&lt;br&gt;
Name tag: my-vpc&lt;/p&gt;

&lt;p&gt;IPv4 CIDR block: 10.0.0.0/16 (common beginner-friendly range)&lt;/p&gt;

&lt;p&gt;Tenancy: Default&lt;/p&gt;

&lt;p&gt;Subnets&lt;br&gt;
Choose:&lt;/p&gt;

&lt;p&gt;Number of Availability Zones: 1&lt;/p&gt;

&lt;p&gt;Public subnets: 1&lt;/p&gt;

&lt;p&gt;Private subnets: 1&lt;/p&gt;

&lt;p&gt;Gateways &amp;amp; Routing&lt;br&gt;
Make sure these are enabled:&lt;/p&gt;

&lt;p&gt;Create an Internet Gateway&lt;/p&gt;

&lt;p&gt;Create a NAT Gateway (for private subnet outbound access)&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0xsf9xu4pd5wxtxppkvr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0xsf9xu4pd5wxtxppkvr.png" alt=" " width="800" height="603"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 4 — Review and Create &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjof2gws7192y9xbv8u75.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjof2gws7192y9xbv8u75.png" alt=" " width="800" height="570"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 5 - create subnet ( you create the subnet inside the VPC)&lt;br&gt;
In the search bar, search for subnet&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7r30899msqli6e0ooj3s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7r30899msqli6e0ooj3s.png" alt=" " width="800" height="542"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;click on create subnet &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsyolw0vcurpnj7kx61wq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsyolw0vcurpnj7kx61wq.png" alt=" " width="800" height="514"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;configure the subnet&lt;/p&gt;

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

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

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

&lt;p&gt;Step 6 - create an internet gateway &lt;br&gt;
on the search bar, search for internet gateway&lt;/p&gt;

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

&lt;p&gt;click on create internet gateway&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj02ibwmycdf1v0kh3suz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj02ibwmycdf1v0kh3suz.png" alt=" " width="800" height="513"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Configure the internet gateway&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvqsacljyhyt4m1rgtu03.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvqsacljyhyt4m1rgtu03.png" alt=" " width="800" height="507"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 7 - create a route table &lt;br&gt;
in the search bar, search for route table &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1zadwprz7hrmza1ubois.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1zadwprz7hrmza1ubois.png" alt=" " width="800" height="509"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on the create route table &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff3wxa6wwztaxidn5xpma.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff3wxa6wwztaxidn5xpma.png" alt=" " width="800" height="511"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Give it a name and select the VPC and click on create route table &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fypkwi24a6m68j3z1e4oj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fypkwi24a6m68j3z1e4oj.png" alt=" " width="800" height="509"&gt;&lt;/a&gt;&lt;/p&gt;

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

</description>
      <category>webdev</category>
      <category>security</category>
      <category>aws</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Create and Configure Network Security Groups (NSGs)</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Tue, 17 Feb 2026 21:56:57 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/create-and-configure-network-security-groups-nsgs-nkd</link>
      <guid>https://forem.com/daniel_shaibu/create-and-configure-network-security-groups-nsgs-nkd</guid>
      <description>&lt;p&gt;This exercise focuses on securing traffic inside app‑vnet by using Network Security Groups (NSGs) and Application Security Groups (ASGs). You’ll create rules for frontend web servers and backend database servers, then deploy two VMs to test the configuration.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;&lt;br&gt;
Your organization needs tighter control over traffic inside the virtual network. The requirements are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Frontend subnet hosts web servers accessible from the internet&lt;/li&gt;
&lt;li&gt;These servers must be grouped using an Application Security Group (ASG)&lt;/li&gt;
&lt;li&gt;Backend subnet hosts database servers&lt;/li&gt;
&lt;li&gt;Backend traffic must only be reachable from the frontend servers&lt;/li&gt;
&lt;li&gt;Two Ubuntu VMs (VM1 and VM2) will be deployed for testing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step-by-Step Instructions&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;1. Deploy the Required Virtual Machines&lt;/strong&gt;&lt;br&gt;
The lab provides an ARM template to deploy &lt;strong&gt;VM1&lt;/strong&gt; (frontend) and *&lt;em&gt;VM2 *&lt;/em&gt;(backend).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open &lt;strong&gt;Azure Cloud Shell&lt;/strong&gt; (PowerShell).
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuu28as9xr7v0madooeix.png" alt=" " width="800" height="586"&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run the deployment command :&lt;br&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Favxw4wjg7dqxq0q8xkzp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Favxw4wjg7dqxq0q8xkzp.png" alt=" " width="800" height="494"&gt;&lt;/a&gt; &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F64248n6oqhkm6x2sidpz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F64248n6oqhkm6x2sidpz.png" alt=" " width="800" height="583"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create two VMs (vm1 &amp;amp; vm2) windows and ubutu respectively&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

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

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

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

&lt;p&gt;&lt;strong&gt;2. Create the Application Security Group (ASG)&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;In the Azure portal, search for Application security groups.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdomxqpkcr4tzocmkg2iv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdomxqpkcr4tzocmkg2iv.png" alt=" " width="800" height="586"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select + Create.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9462l58atxldq0ehjagf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9462l58atxldq0ehjagf.png" alt=" " width="800" height="588"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configure:&lt;br&gt;
Resource group: RG1&lt;br&gt;
Name: app-frontend-asg&lt;br&gt;
Region:  Norway East&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;&lt;strong&gt;3. Associate the ASG with VM1&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Open VM1 in the Azure portal.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjojeiq1idw38bt87e7e1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjojeiq1idw38bt87e7e1.png" alt=" " width="800" height="593"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Go to Networking → Application security groups.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select Add application security groups. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2pu8p1mx1uvfkm2m9o7d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2pu8p1mx1uvfkm2m9o7d.png" alt=" " width="800" height="493"&gt;&lt;/a&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqwnhqzl25uaec5pctj5o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqwnhqzl25uaec5pctj5o.png" alt=" " width="800" height="494"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose app-frontend-asg → Add. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq0fwklxkll7qw3lc8mss.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq0fwklxkll7qw3lc8mss.png" alt=" " width="800" height="492"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This step ensures VM1 is part of the frontend ASG, as required in the exercise&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Create the Network Security Group (NSG)&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Search for Network security groups.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbq4qbrbq1alwk7qiuwy3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbq4qbrbq1alwk7qiuwy3.png" alt=" " width="800" height="595"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select + Create.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fulcjy7zfgs045ks99hb0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fulcjy7zfgs045ks99hb0.png" alt=" " width="800" height="577"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configure:&lt;br&gt;
Resource group: RG1&lt;br&gt;
Name: app-vnet-nsg&lt;br&gt;
Region: Norway East&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F47uorq3vkm7pxxcjto7j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F47uorq3vkm7pxxcjto7j.png" alt=" " width="800" height="495"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select Review + create, then Create&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffmmgjfit3n73zjpim1wn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffmmgjfit3n73zjpim1wn.png" alt=" " width="800" height="498"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;5. Associate the NSG with the Backend Subnet&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Open app-vnet-nsg.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F31ep5741ydg8520bb5l2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F31ep5741ydg8520bb5l2.png" alt=" " width="800" height="495"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Go to Subnets → + Associate.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwwv5vb5wj45yhda93nk1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwwv5vb5wj45yhda93nk1.png" alt=" " width="800" height="493"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvy5od36isb6i6zmqjm42.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvy5od36isb6i6zmqjm42.png" alt=" " width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Select:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Virtual network: app‑vnet&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Subnet: backend&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select OK.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2m6cx62xuhfjavorgdel.png" alt=" " width="800" height="497"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;6. Create the NSG Rule to Allow Frontend → Backend Traffic&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Open app-vnet-nsg.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgehnw5aielteca92sw5w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgehnw5aielteca92sw5w.png" alt=" " width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Go to Inbound security rules → + Add.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fll704gm9aaj9n3xth5ek.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fll704gm9aaj9n3xth5ek.png" alt=" " width="800" height="496"&gt;&lt;/a&gt; &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffxmu755kylmpf3htf5xc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffxmu755kylmpf3htf5xc.png" alt=" " width="800" height="504"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configure the rule:&lt;br&gt;
Source: Application security group&lt;br&gt;
Source ASG: app-frontend-asg&lt;br&gt;
Destination: Any&lt;br&gt;
Service: SSH (as defined in the lab)&lt;br&gt;
Action: Allow&lt;br&gt;
Priority: 100&lt;br&gt;
Name: AllowSSH&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

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

&lt;ol&gt;
&lt;li&gt;Save the rule. 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbovnh88wdh96ogcowm0m.png" alt=" " width="800" height="495"&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>devops</category>
      <category>cloud</category>
      <category>aws</category>
      <category>github</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Sat, 14 Feb 2026 13:54:25 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/-5632</link>
      <guid>https://forem.com/daniel_shaibu/-5632</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/daniel_shaibu" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3395301%2Ffaa2c2cc-1381-47d9-b2be-bcd87df65315.png" alt="daniel_shaibu"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/daniel_shaibu/create-and-configure-virtual-networks-31cc" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Create and configure virtual networks&lt;/h2&gt;
      &lt;h3&gt;daniel shaibu ・ Feb 14&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#devops&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#cloud&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#aws&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#github&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>devops</category>
      <category>cloud</category>
      <category>aws</category>
      <category>github</category>
    </item>
    <item>
      <title>Create and configure virtual networks</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Sat, 14 Feb 2026 13:22:52 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/create-and-configure-virtual-networks-31cc</link>
      <guid>https://forem.com/daniel_shaibu/create-and-configure-virtual-networks-31cc</guid>
      <description>&lt;p&gt;This exercise walks you through building a simple hub‑and‑spoke network architecture in Azure. You’ll create two virtual networks, configure subnets, and establish secure VNet peering between them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;&lt;br&gt;
Your organization is migrating a web-based application to Azure. To prepare the environment, you must:&lt;/p&gt;

&lt;p&gt;Create two VNets: app‑vnet (spoke) and hub‑vnet (hub)&lt;/p&gt;

&lt;p&gt;Add subnets for frontend, backend, and firewall&lt;/p&gt;

&lt;p&gt;Peer the VNets so they can communicate privately&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step-by-Step Instructions&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sign in to Azure&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;ii. In the search bar, type Virtual Networks and open the service.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fne9mia7rtgs3jkmua4k0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fne9mia7rtgs3jkmua4k0.png" alt=" " width="800" height="539"&gt;&lt;/a&gt;&lt;br&gt;
**&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Create the app‑vnet Virtual Network&lt;/strong&gt;**&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select + Create.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F22kvc9ti07bsqyy0nojz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F22kvc9ti07bsqyy0nojz.png" alt=" " width="800" height="591"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configure the VNet using the following values:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Property:           Value&lt;br&gt;
Resource group:     RG1&lt;br&gt;
Virtual network name:   app-vnet&lt;br&gt;
Region:             East US&lt;br&gt;
IPv4 address space: 10.1.0.0/16&lt;/p&gt;

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

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

&lt;ol&gt;
&lt;li&gt;Add the **frontend **subnet:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Name: frontend&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Address range: 10.1.0.0/24&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fldgmxo0t3gz2m12cikr8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fldgmxo0t3gz2m12cikr8.png" alt=" " width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Add the **backend **subnet:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Name: backend&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Address range: 10.1.1.0/24&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz5sh3f1oum7xo77z3ojc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz5sh3f1oum7xo77z3ojc.png" alt=" " width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Leave all other settings at their defaults. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select Review + create, then Create. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsosjhs2usw1q8zv6uqx1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsosjhs2usw1q8zv6uqx1.png" alt=" " width="800" height="588"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;&lt;strong&gt;3. Create the hub‑vnet Virtual Network&lt;/strong&gt;&lt;br&gt;
Repeat the creation process with these values:&lt;/p&gt;

&lt;p&gt;Property         Value&lt;br&gt;
Resource group:      RG1&lt;br&gt;
Name:                hub-vnet&lt;br&gt;
Region:              East US&lt;br&gt;
IPv4 address space:  10.0.0.0/16&lt;br&gt;
Subnet name:         AzureFirewallSubnet&lt;br&gt;
Subnet range:        10.0.0.0/26&lt;/p&gt;

&lt;p&gt;Once deployed, verify both VNets and their subnets appear in the Virtual Networks list.&lt;/p&gt;

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

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

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

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

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

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhv7upexu2q9qadkz3fkg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhv7upexu2q9qadkz3fkg.png" alt=" " width="800" height="604"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;4. Configure VNet Peering&lt;/strong&gt;&lt;br&gt;
Now connect the two VNets so they can communicate privately.&lt;/p&gt;

&lt;p&gt;Open app‑vnet.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp2i2yq3fygrbwc6dw3a7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp2i2yq3fygrbwc6dw3a7.png" alt=" " width="800" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the left menu, select Peerings.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fddxpx1vp8q993m6572l4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fddxpx1vp8q993m6572l4.png" alt=" " width="800" height="513"&gt;&lt;/a&gt;&lt;/p&gt;

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

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

&lt;p&gt;Configure the peering:&lt;/p&gt;

&lt;p&gt;Property                    Value&lt;br&gt;
Remote peering link name:   app-vnet-to-hub&lt;br&gt;
Virtual network:            hub-vnet&lt;br&gt;
Local peering link name:    hub-to-app-vnet&lt;/p&gt;

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

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

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Leave all other settings as default.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select Add.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;After deployment, confirm the &lt;strong&gt;Peering status&lt;/strong&gt; shows &lt;strong&gt;Connected&lt;/strong&gt;.&lt;/p&gt;

</description>
      <category>devops</category>
      <category>cloud</category>
      <category>aws</category>
      <category>github</category>
    </item>
    <item>
      <title>Create a new Azure Key Vault</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Mon, 26 Jan 2026 12:18:38 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/create-a-new-azure-key-vault-1bki</link>
      <guid>https://forem.com/daniel_shaibu/create-a-new-azure-key-vault-1bki</guid>
      <description>&lt;p&gt;To create a new Azure Key Vault, use the Azure portal to define your vault’s name, region, and access controls. This secure store helps manage secrets, keys, and certificates for cloud applications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step-by-Step: Creating an Azure Key Vault via Azure Portal&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sign in to the Azure portal using the same credentials you used to activate the Azure Sandbox.&lt;/li&gt;
&lt;li&gt;Select Create a resource. The Create a resource pane appears.&lt;/li&gt;
&lt;li&gt;In the Search services and marketplace, search for and select Key Vault to find the Azure Key Vault service. The Key Vault pane appears.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xjxynol4xakx5nfdiwu.png" alt=" " width="800" height="451"&gt;
Select Create. The Create key vault pane appears.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhnqgivn8pslr4fjj4s1u.png" alt=" " width="800" height="458"&gt;
&lt;/li&gt;
&lt;li&gt;On the Basics tab, enter the following values for each setting.
Setting     Value
Subscription:   From the dropdown, select your subscription.
Resource group: From the dropdown, select your resource group.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Instance details&lt;/p&gt;

&lt;p&gt;Key vault name: Enter a globally unique name for the new vault. Vault names must be 3-24 characters long and contain only alphanumeric characters and dashes. The exercise uses the example name of VaultamortDiary for the new vault.&lt;br&gt;
Region:     Accept default.&lt;br&gt;
Pricing tier:   Accept default.&lt;/p&gt;

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

&lt;ol&gt;
&lt;li&gt;Select Review + create.&lt;/li&gt;
&lt;li&gt;After validation passes, select Create to create the Azure Key Vault.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feago5dc2hmmehsqkkgka.png" alt=" " width="800" height="448"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;After the deployment is complete, select Go to resource. Your Key vault pane appears&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fego3sjduqaa4bh4d10nv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fego3sjduqaa4bh4d10nv.png" alt=" " width="800" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Add a secret&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;In the left menu pane, under Objects, select Secrets. The Secrets pane appears for your key vault.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhwqcsnjq1rhuvpurifrc.png" alt=" " width="800" height="450"&gt;
&lt;/li&gt;
&lt;li&gt;In the top menu bar, select Generate/Import. The Create a secret pane appears.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F39kdazwur2wbopunoszi.png" alt=" " width="800" height="452"&gt;
&lt;/li&gt;
&lt;li&gt;Enter a name, value, and (optional) content type and Select Create to add the secret. The Secrets pane reappears.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu5ngox15qyni960z0xjj.png" alt=" " width="800" height="453"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Show the secret&lt;/strong&gt;&lt;br&gt;
Finally, verify that the secret value has been set.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Select your secret from the list. The Versions pane appears for your secret.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F571sd4i3kjdqbsdzvh8l.png" alt=" " width="800" height="452"&gt;
&lt;/li&gt;
&lt;li&gt;Select the CURRENT VERSION of the secret. The Secret Version pane appears.&lt;/li&gt;
&lt;li&gt;Select Show Secret Value to see the value assigned to the secret.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkcss46pyfkbbvd5igafb.png" alt=" " width="800" height="452"&gt;
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjyj52rwis9kfvawdba46.png" alt=" " width="800" height="457"&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>beginners</category>
      <category>devops</category>
      <category>security</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Configuring Microsoft Defender for Cloud for Enhanced Protection</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Mon, 26 Jan 2026 11:46:15 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/configuring-microsoft-defender-for-cloud-for-enhanced-protection-2ip5</link>
      <guid>https://forem.com/daniel_shaibu/configuring-microsoft-defender-for-cloud-for-enhanced-protection-2ip5</guid>
      <description>&lt;p&gt;To configure Microsoft Defender for Cloud for enhanced protection, start by enabling Defender plans for your workloads, setting security policies, and activating threat detection features. This setup strengthens your cloud security posture across Azure, hybrid, and multi-cloud environments.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Step-by-Step Guide to Configuring Microsoft Defender for Cloud&lt;br&gt;
*&lt;/em&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Start a browser session and sign-in to the Azure portal menu.&lt;/li&gt;
&lt;li&gt;In the Azure portal, in the Search resources, services, and docs text box at the top of the Azure portal page, type Microsoft Defender for Cloud and press the Enter key
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmm258o8q23hlgoc82p5x.png" alt=" " width="800" height="586"&gt;
&lt;/li&gt;
&lt;li&gt;On the Microsoft Defender for Cloud, Management blade, go to the Environment settings. Expand the environment settings folders until the subscription section is displayed, then click the subscription to view details.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fltwr1c6jf1wt8o3cp7oz.png" alt=" " width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ol&gt;

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

&lt;ol&gt;
&lt;li&gt;In the Settings blade, under Defender plans, expand Cloud Workload Protection (CWP). 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F59q7t4yu141usluvs9lw.png" alt=" " width="800" height="396"&gt;
&lt;/li&gt;
&lt;li&gt;From the Cloud Workload Protection (CWP) Plan list, select Servers. On the right side of the page, change the Status from Off to On, then click Save.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F34jxy288zd04sjucmfpw.png" alt=" " width="800" height="394"&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>devops</category>
      <category>security</category>
      <category>aws</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Auto Scaling Role &amp; Azure Virtual Machine Scale Sets (VMSS)</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Fri, 09 Jan 2026 16:18:29 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/auto-scaling-role-azure-virtual-machine-scale-sets-vmss-cak</link>
      <guid>https://forem.com/daniel_shaibu/auto-scaling-role-azure-virtual-machine-scale-sets-vmss-cak</guid>
      <description>&lt;p&gt;Both AWS and Azure need a way for their scaling services to perform actions on your behalf—like creating, deleting, or managing virtual machines.&lt;br&gt;
They just implement it differently.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AWS: Auto Scaling Service‑Linked Role&lt;/strong&gt;&lt;br&gt;
In AWS, Auto Scaling uses a service‑linked IAM role.&lt;br&gt;
This role allows Auto Scaling to:&lt;/p&gt;

&lt;p&gt;Launch and terminate EC2 instances&lt;br&gt;
Attach/detach load balancers&lt;br&gt;
Read CloudWatch alarms&lt;br&gt;
Update scaling groups&lt;/p&gt;

&lt;p&gt;It’s an IAM role automatically created and only Auto Scaling can assume it.&lt;/p&gt;

&lt;p&gt;Think of it as:&lt;br&gt;
“Auto Scaling’s permission slip to manage EC2 resources.”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Azure: VM Scale Sets (VMSS) + Managed Identity&lt;/strong&gt;&lt;br&gt;
Azure doesn’t use IAM roles the same way.&lt;br&gt;
Instead, VM Scale Sets use a Managed Identity (system‑assigned or user‑assigned).&lt;/p&gt;

&lt;p&gt;This identity allows VMSS to:&lt;br&gt;
Access Azure APIs&lt;br&gt;
Pull secrets from Key Vault&lt;br&gt;
Interact with storage accounts&lt;br&gt;
Register with load balancers&lt;br&gt;
Perform scaling operations.&lt;br&gt;
It’s the Azure equivalent of giving VMSS a secure identity to act on your behalf.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5n7y1de0aec5nbn14f4s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5n7y1de0aec5nbn14f4s.png" alt=" " width="493" height="483"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to Create a VM Scale Sets (VMSS)&lt;/strong&gt;&lt;br&gt;
A VM Scale Set lets you deploy and manage a group of identical virtual machines that automatically scale based on demand.&lt;br&gt;
&lt;strong&gt;1. Create a Resource Group&lt;/strong&gt;&lt;br&gt;
A resource group is the logical container for your VMSS.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;In Azure search for resources group and select resource group&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;click on create and fill the name, location and select region the click on review &amp;amp; create and then create.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcbx2bs3eyh628dx1fdef.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcbx2bs3eyh628dx1fdef.png" alt=" " width="800" height="643"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Create the VM Scale Set&lt;/strong&gt;&lt;br&gt;
az vmss create \&lt;br&gt;
  --resource-group vmssResourceGroup \&lt;br&gt;
  --name myScaleSet \&lt;br&gt;
  --image windows\&lt;br&gt;
  --upgrade-policy-mode manual\&lt;br&gt;
  --admin-username azureuser \&lt;br&gt;
  --generate-ssh-keys&lt;/p&gt;

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

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

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

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

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F15e0s4yagua79pm8u8z0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F15e0s4yagua79pm8u8z0.png" alt=" " width="800" height="644"&gt;&lt;/a&gt;&lt;br&gt;
Note: This command creates:&lt;br&gt;
A VM Scale Set&lt;br&gt;
A load balancer&lt;br&gt;
A default number of VM instances&lt;br&gt;
SSH access&lt;/p&gt;

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

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Scale In or Out Manually&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Go to setting in the overview and select availability + scaling and select scale 
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn7vx9z8nzyygy4r9dh3e.png" alt=" " width="800" height="662"&gt;
&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;**Steps to Create an Auto Scaling Group   (AWS)&lt;/p&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a launch template
This defines how each EC2 instance should look (AMI, instance type, key pair, security group, etc.).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Go to: EC2 Console → Launch Templates → Create launch template &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foeh2b1b9iahq6psc7zb7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foeh2b1b9iahq6psc7zb7.png" alt=" " width="800" height="570"&gt;&lt;/a&gt;&lt;/p&gt;

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

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

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

&lt;p&gt;Name: e.g. web-server-template&lt;/p&gt;

&lt;p&gt;Source template: None (for first time)&lt;/p&gt;

&lt;p&gt;AMI: Choose your OS (e.g. Amazon Linux 2)&lt;/p&gt;

&lt;p&gt;Instance type: e.g. t3.micro&lt;/p&gt;

&lt;p&gt;Key pair: Select or create one&lt;/p&gt;

&lt;p&gt;Network settings: Security group allowing HTTP (80) + SSH (22) if needed&lt;/p&gt;

&lt;p&gt;User data (optional): Add bootstrap script (e.g. install nginx)&lt;/p&gt;

&lt;p&gt;Click Create launch template&lt;/p&gt;

&lt;p&gt;This template will be referenced by the Auto Scaling Group.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Open the AWS and search for Auto scaling group and select &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fczjds7iwhiohtxzexasa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fczjds7iwhiohtxzexasa.png" alt=" " width="800" height="565"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select Get started &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl6vtdbslaoqbfnvy8k8e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl6vtdbslaoqbfnvy8k8e.png" alt=" " width="800" height="623"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3yz1429dzbbudfmrnz49.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3yz1429dzbbudfmrnz49.png" alt=" " width="800" height="558"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devops</category>
      <category>aws</category>
      <category>cloud</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>How to Create an Elastic Beanstalk Application (Step‑by‑Step)</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Tue, 06 Jan 2026 12:31:11 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/how-to-create-an-elastic-beanstalk-application-step-by-step-165f</link>
      <guid>https://forem.com/daniel_shaibu/how-to-create-an-elastic-beanstalk-application-step-by-step-165f</guid>
      <description>&lt;p&gt;intro: Elastic Beanstalk is one of AWS’s easiest ways to deploy applications because it automatically handles provisioning, load balancing, scaling, and monitoring for you. You focus on your code — AWS handles the infrastructure.&lt;br&gt;
According to AWS documentation, Elastic Beanstalk lets you deploy, monitor, and scale web applications with minimal setup. &lt;br&gt;
&lt;strong&gt;Key Uses&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Deploying web applications easily&lt;/strong&gt;&lt;br&gt;
You upload your code, and Elastic Beanstalk automatically handles provisioning EC2 instances, load balancers, scaling groups, and monitoring.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Automating infrastructure setup&lt;/strong&gt;&lt;br&gt;
It configures compute, load balancing, auto‑scaling, and health checks for you, reducing operational complexity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Running apps in multiple languages&lt;/strong&gt;:&lt;br&gt;
Supports Go, Java, .NET, Node.js, PHP, Python, and Ruby out of the box.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Processing background tasks&lt;/strong&gt; &lt;br&gt;
It offers worker environments for processing SQS messages—useful for asynchronous or long‑running jobs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Handling scaling automatically&lt;/strong&gt;&lt;br&gt;
It dynamically scales your environment based on demand, so your app can grow without manual intervention.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; In Azure, the closest equivalent to AWS Elastic Beanstalk is Azure App Service.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;1. Open the AWS Elastic Beanstalk Console&lt;br&gt;
*&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Sign in to the AWS Management Console&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Search for Elastic Beanstalk&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftfcn7dweg5ygxit0sobr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftfcn7dweg5ygxit0sobr.png" alt=" " width="800" height="531"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click Create Application&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh3sqtuatycymdkpovz65.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh3sqtuatycymdkpovz65.png" alt=" " width="800" height="538"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;*&lt;em&gt;2. Create an Application&lt;br&gt;
*&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Application Name
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkapiutob3vqazlc6yl7g.png" alt=" " width="800" height="536"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Choose a Platform&lt;/strong&gt;&lt;br&gt;
Elastic Beanstalk supports multiple platforms, including:&lt;br&gt;
Node.js, Python, Java, .NET, PHP, Go, Docker&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7n3wmbg5rct4oaroz6d2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7n3wmbg5rct4oaroz6d2.png" alt=" " width="800" height="535"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Upload Your Application Code&lt;/strong&gt;&lt;br&gt;
You have two options:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Option A: Use a Sample Application&lt;/strong&gt;&lt;br&gt;
Great for testing.&lt;br&gt;
Elastic Beanstalk will deploy a pre‑built demo app.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Option B: Upload Your Code&lt;/strong&gt;&lt;br&gt;
Upload a .zip file containing your application source bundle.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqfw6telx6um8cqj9ir7d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqfw6telx6um8cqj9ir7d.png" alt=" " width="800" height="535"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Configure Your Environment&lt;/strong&gt;&lt;br&gt;
Elastic Beanstalk environments are collections of AWS resources (EC2, load balancers, scaling groups) that run your app&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Service role: click on create role &lt;br&gt;
A service role is an IAM role that Elastic Beanstalk itself assumes so it can manage your environment on your behalf. Think of it as the permissions Elastic Beanstalk needs to do its job. the service role is required so Elastic Beanstalk can: Create and manage AWS resources (like EC2 instances, load balancers, Auto Scaling groups), Monitor environment health, Write logs and metrics to CloudWatch, Access S3 buckets for application versions, Perform updates and deployments, Interact with other AWS services securely and automatically. Elastic Beanstalk cannot perform these actions unless it has a service role with the correct IAM managed policies attached. &lt;br&gt;
Without a service role: Your environment cannot be created, &lt;br&gt;
Elastic Beanstalk cannot provision or update resources, Health monitoring and logging will fail, Deployments may not work.&lt;br&gt;
It’s essentially the “administrator badge” Elastic Beanstalk uses to operate your environment safely and automatically.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhdw2z5eezr9jwk218u1k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhdw2z5eezr9jwk218u1k.png" alt=" " width="800" height="547"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnv3egy18ptqb5wkasn3f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnv3egy18ptqb5wkasn3f.png" alt=" " width="800" height="513"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxd0gmygpkans5s57cd08.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxd0gmygpkans5s57cd08.png" alt=" " width="800" height="509"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xiojicd5vnqb1mmkz0t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xiojicd5vnqb1mmkz0t.png" alt=" " width="800" height="516"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Go back to the Configure service access page and click on the refresh button and the role will automatically appear&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgbgkaasr61j2qvvznrvj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgbgkaasr61j2qvvznrvj.png" alt=" " width="800" height="515"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Creating an EC2 instance profile: click on create &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftui6pxam5swhlj1z8vp3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftui6pxam5swhlj1z8vp3.png" alt=" " width="800" height="507"&gt;&lt;/a&gt;&lt;br&gt;
An EC2 instance profile is simply the identity your EC2 instance uses to access AWS services securely without storing credentials on the server. An EC2 instance profile gives your EC2 instance the permissions it needs to interact with other AWS services. It is the bridge between the EC2 instance and an IAM role.&lt;br&gt;
Depending on the permissions in the attached IAM role, the instance can: Read/write objects in S3, Send logs to CloudWatch Logs, Pull secrets from Systems Manager Parameter Store, Access DynamoDB tables, Use X-Ray for tracing, Register with Elastic Load Balancing, Communicate with Elastic Beanstalk during deployments.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Note: Service Role → Permissions for Elastic Beanstalk itself.&lt;br&gt;
Instance Profile → Permissions for the EC2 instance running your app.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkzea2aof166a5kp7m478.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkzea2aof166a5kp7m478.png" alt=" " width="800" height="513"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;EC2 key pair - optional: open a AWS in a new tab and type key pair  in the search bar.
An EC2 key pair is used to securely connect to your EC2 instance. It acts as your login credential for the server.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Go back and select the key just created&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmd9excovjynd1uyeidjo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmd9excovjynd1uyeidjo.png" alt=" " width="800" height="551"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F51bd1inqxws9zxo6j0qm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F51bd1inqxws9zxo6j0qm.png" alt=" " width="800" height="511"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select default VPC&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhjbv49w4mutb1dhph7s1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhjbv49w4mutb1dhph7s1.png" alt=" " width="800" height="502"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Enable Public IP address and select on subnet and click on next &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwrztxs0qo1tjuvuc5c2y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwrztxs0qo1tjuvuc5c2y.png" alt=" " width="800" height="510"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;select everything as default &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1rcpxsgc91d4smgzm9zz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1rcpxsgc91d4smgzm9zz.png" alt=" " width="800" height="520"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Leave as default and select next &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffv2uba8rj78i42ylo3ij.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffv2uba8rj78i42ylo3ij.png" alt=" " width="800" height="521"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On Monitoring, Health reporting choose Enhanced and select and CloudWatch Custom Metrics and CloudWatch Custom Metrics - Environment then scroll down and click next &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F48xqv177lczsmhel1aec.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F48xqv177lczsmhel1aec.png" alt=" " width="800" height="522"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ol&gt;
&lt;li&gt;Wait for Environment Health = “OK”
Once the environment is ready, you’ll see:
Health: OK
A green checkmark
A link to your running application
Click the link to open your deployed app in the browser.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3htltem5i1mdn3ddx1u6.png" alt=" " width="800" height="497"&gt;
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzc6x6h3niayy8ozf8mkn.png" alt=" " width="800" height="519"&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>webdev</category>
      <category>python</category>
      <category>aws</category>
      <category>cloud</category>
    </item>
    <item>
      <title>How to Deploy and Configure Azure Monitor</title>
      <dc:creator>daniel shaibu</dc:creator>
      <pubDate>Thu, 01 Jan 2026 19:31:35 +0000</pubDate>
      <link>https://forem.com/daniel_shaibu/how-to-deploy-and-configure-azure-monitor-4ion</link>
      <guid>https://forem.com/daniel_shaibu/how-to-deploy-and-configure-azure-monitor-4ion</guid>
      <description>&lt;p&gt;Intro: Azure Monitor is Microsoft’s unified monitoring solution for collecting metrics, logs, and insights across your Azure resources. To configure it properly, you typically follow these stages:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Prepare Your Azure Environment&lt;/strong&gt;&lt;br&gt;
From the Azure Portal:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Search &lt;strong&gt;Resource Groups&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi6g56vt9vqdb1mvmaz8x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi6g56vt9vqdb1mvmaz8x.png" alt=" " width="800" height="567"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select &lt;strong&gt;Create&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmz100qribqh1wqjspg7i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmz100qribqh1wqjspg7i.png" alt=" " width="800" height="587"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Name it &lt;strong&gt;rg-alpha&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Region: &lt;strong&gt;East US&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click &lt;strong&gt;Review + Create → Create&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuuj9yanox4hh7nonarxr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuuj9yanox4hh7nonarxr.png" alt=" " width="800" height="586"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;note: This group will hold all the resources Azure Monitor will observe.&lt;/p&gt;

&lt;p&gt;**2. Create a Security Group (Optional but used in the **lab)&lt;br&gt;
This group is used for log access permissions.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Search *&lt;em&gt;Azure Active Directory / Entra ID
*&lt;/em&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff2kldwaqzux17e7o1atb.png" alt=" " width="800" height="585"&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Go to &lt;strong&gt;Groups → New Group&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3sh3p2qy19r9ylu20vok.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3sh3p2qy19r9ylu20vok.png" alt=" " width="800" height="586"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Group type: &lt;strong&gt;Security&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Name:** App Log Examiners**&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create the group&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhnzywnncye6g9t2px8rx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhnzywnncye6g9t2px8rx.png" alt=" " width="800" height="586"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Deploy Virtual Machines to Monitor&lt;/strong&gt;&lt;br&gt;
Azure Monitor needs resources to collect data from. The lab deploys two VMs:&lt;br&gt;
&lt;strong&gt;A. Deploy Windows VM (WS‑VM1)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Search &lt;strong&gt;Virtual Machines → Create&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Name: &lt;strong&gt;WS-VM1&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Region: &lt;strong&gt;East US&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Image: &lt;strong&gt;Windows Server 2022 Datacenter&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Size: &lt;strong&gt;Standard_D4s_v3&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;Admin user:** prime**&lt;/li&gt;
&lt;li&gt;Password: &lt;em&gt;(your secure password)&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Allow inbound port: &lt;strong&gt;RDP 3389&lt;/strong&gt;
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff6z68xn846zi7tcnobq6.png" alt=" " width="800" height="583"&gt;
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj8tg2on0rie4l1wk2cz2.png" alt=" " width="800" height="586"&gt;
&lt;/li&gt;
&lt;li&gt;Create the VM&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;Wait for the deployment to complete. Once deployment completes choose Go to resource.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu2j8c5dn38k0cfpnqwtg.png" alt=" " width="800" height="586"&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the WS-VM1 properties page, choose Networking.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq4qisp2e7cufmnu5sarx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq4qisp2e7cufmnu5sarx.png" alt=" " width="800" height="584"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the Networking page, select the RDP rule.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsuvb5t4jx5ow1z5w49fb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsuvb5t4jx5ow1z5w49fb.png" alt=" " width="800" height="581"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the RDP rule space, change the Source to My IP address and choose Save. This restricts incoming RDP connections to the IP address you’re currently using.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg61iikmuobu6oy548hia.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg61iikmuobu6oy548hia.png" alt=" " width="800" height="497"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the &lt;strong&gt;Networking&lt;/strong&gt; page, choose &lt;strong&gt;Add inbound port rule&lt;/strong&gt;.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdspbxgn2339in450k9ln.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdspbxgn2339in450k9ln.png" alt=" " width="800" height="496"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the &lt;strong&gt;Add inbound security rule page&lt;/strong&gt;, configure the following settings and choose Add:&lt;br&gt;
Source:**   Any**&lt;br&gt;
Source: ****    *&lt;br&gt;
Destination:    &lt;strong&gt;Any&lt;/strong&gt;&lt;br&gt;
Service:    &lt;strong&gt;HTTP&lt;/strong&gt;&lt;br&gt;
Action: &lt;strong&gt;Allow&lt;/strong&gt;&lt;br&gt;
Priority:   &lt;strong&gt;310&lt;/strong&gt;&lt;br&gt;
Name:   &lt;strong&gt;AllowAnyHTTPInbound&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fciabk0s6u1i9kp1wswww.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fciabk0s6u1i9kp1wswww.png" alt=" " width="800" height="494"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the &lt;strong&gt;WS-VM1&lt;/strong&gt; page, choose &lt;strong&gt;Connect&lt;/strong&gt;.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqwoe6j3bl2urcb873266.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqwoe6j3bl2urcb873266.png" alt=" " width="800" height="507"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Under Native RDP, choose &lt;strong&gt;Select&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the &lt;strong&gt;Native RDP&lt;/strong&gt; page, choose &lt;strong&gt;Download RDP file&lt;/strong&gt; &lt;br&gt;
and then open the file. Opening the RDP file opens the Remote Desktop Connection dialog box&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxariwn0dr1s2z53ylxvu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxariwn0dr1s2z53ylxvu.png" alt=" " width="800" height="497"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the &lt;strong&gt;Windows Security **dialog box, choose **More Choices&lt;/strong&gt; and then choose Use a different account.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Enter the username as &lt;strong&gt;.\prime&lt;/strong&gt; and the password as the secure password you chose in Step 3, and choose OK&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When signed into the Windows Server virtual machine, right-click on the &lt;strong&gt;Start&lt;/strong&gt; hint and then choose &lt;strong&gt;Windows PowerShell (Admin).&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;At the elevated command prompt, type the following command and press &lt;strong&gt;Enter.&lt;/strong&gt; Install-WindowsFeature Web-Server -IncludeAllSubFeature -IncludeManagementTools&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When the installation completes run the following command to change to the web server root directory. cd c:\inetpub\wwwroot\&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run the following command. Wget &lt;a href="https://raw.githubusercontent.com/Azure-Samples/html-docs-hello-world/master/index.html" rel="noopener noreferrer"&gt;https://raw.githubusercontent.com/Azure-Samples/html-docs-hello-world/master/index.html&lt;/a&gt; -OutFile index.html &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When signed into the Windows Server virtual machine, right-click on the Start hint and then choose Windows PowerShell (Admin).&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvvkm3ifvcjob7jiehk24.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvvkm3ifvcjob7jiehk24.png" alt=" " width="800" height="321"&gt;&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;At the elevated command prompt, type the following command and press &lt;strong&gt;Enter&lt;/strong&gt;. Install-WindowsFeature Web-Server -IncludeAllSubFeature -IncludeManagementTools&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6nse6dlz2bj2x0smtw38.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6nse6dlz2bj2x0smtw38.png" alt=" " width="800" height="318"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;At the elevated command prompt, type the following command and press Enter. Install-WindowsFeature Web-Server -IncludeAllSubFeature -IncludeManagementTools &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fovkrqwzogzo07zfj56pe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fovkrqwzogzo07zfj56pe.png" alt=" " width="800" height="391"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When the installation completes run the following command to change to the web server root directory. cd c:\inetpub\wwwroot\&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7c1d8mhsl53zzn2pkz56.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7c1d8mhsl53zzn2pkz56.png" alt=" " width="800" height="562"&gt;&lt;/a&gt; &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm3nouyka6btuznx6x0ja.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm3nouyka6btuznx6x0ja.png" alt=" " width="800" height="559"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. Deploy a Linux VM (Linux‑VM2)&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Create the VM&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Name: Linux-VM2&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Resource Group: rg-alpha&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Availability options: No infrastructure redundancy required&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Image: Ubuntu Server 20.04 LTS&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Size: Standard_D2s_v3&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;VM architecture:  x64&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Username: prime,  Password: (your secure password)&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff1h09lqhh2eyp3wscwth.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff1h09lqhh2eyp3wscwth.png" alt=" " width="800" height="584"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;Review the information and choose Create.
&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5e6m1nw03nnf8air9mpw.png" alt=" " width="800" height="583"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Add Monitoring Extension&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;After the VM deploys, open the VM properties page and choose Extensions + Applications under Settings&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frrzcsj2pwkdrn7e3ba0m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frrzcsj2pwkdrn7e3ba0m.png" alt=" " width="800" height="584"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Choose &lt;strong&gt;Add&lt;/strong&gt; and select the &lt;strong&gt;Network Watcher Agent&lt;/strong&gt; for Linux. Choose &lt;strong&gt;Next&lt;/strong&gt; and then choose &lt;strong&gt;Review and Create&lt;/strong&gt;. &lt;strong&gt;Choose Create&lt;/strong&gt;.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5t6pv93u7vqpjiiclgyi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5t6pv93u7vqpjiiclgyi.png" alt=" " width="800" height="585"&gt;&lt;/a&gt; &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0r8gfxb2kzgf5tns5ov2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0r8gfxb2kzgf5tns5ov2.png" alt=" " width="800" height="588"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Deploy a web app with an SQL Database&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;In your browser, open a new browser tab and navigate to &lt;a href="https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.web/web-app-sql-database" rel="noopener noreferrer"&gt;https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.web/web-app-sql-database&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the GitHub page, choose Deploy to Azure.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu1ttit491ygeohm9qk6u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu1ttit491ygeohm9qk6u.png" alt=" " width="800" height="542"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A new tab opens. If necessary, re-sign into Azure with the account that has Global Administrator privileges.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the Basics page, select Edit template.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frq1pexn6iw5xcu4bp1nl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frq1pexn6iw5xcu4bp1nl.png" alt=" " width="800" height="590"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the template editor, delete the contents of lines 158 to 174 inclusive and delete the “,” on line 157. Choose Save.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Freedbj28f4s85svpfk3d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Freedbj28f4s85svpfk3d.png" alt=" " width="800" height="583"&gt;&lt;/a&gt; &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9fvw6ifafs8hcohc0gns.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9fvw6ifafs8hcohc0gns.png" alt=" " width="800" height="570"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the Basics page, provide the following information and choose Next.&lt;br&gt;
Subscription:   Your subscription&lt;br&gt;
Resource Group: rg-alpha&lt;br&gt;
Region: East US&lt;br&gt;
Sku Name:   F1&lt;br&gt;
Sku Capacity:   1&lt;br&gt;
Sql Administrator Login:    prime&lt;br&gt;
Sql Administrator Login Password : [Select a unique secure password] P@ssw0rdP@ssw0rd&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Review the information presented and select Create.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhh7606or103v5vndi30k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhh7606or103v5vndi30k.png" alt=" " width="800" height="581"&gt;&lt;/a&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Review the information presented and select Create&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx7wptuwoizd6ysenx7gg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx7wptuwoizd6ysenx7gg.png" alt=" " width="800" height="586"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;After the deployment completes, choose Go to resource group.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>azure</category>
      <category>cloudcomputing</category>
      <category>devops</category>
      <category>aws</category>
    </item>
  </channel>
</rss>
