<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Precious Oladele</title>
    <description>The latest articles on DEV Community by Precious Oladele (@under2wenty).</description>
    <link>https://dev.to/under2wenty</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%2F2367976%2F23a4abb1-9a26-4e8b-b357-4035f8fa5e2b.png</url>
      <title>DEV Community: Precious Oladele</title>
      <link>https://dev.to/under2wenty</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/under2wenty"/>
    <language>en</language>
    <item>
      <title>Efficient Scaling: An Introduction to Virtual Machine Scale Sets (VMSS</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Tue, 24 Dec 2024 16:25:32 +0000</pubDate>
      <link>https://dev.to/under2wenty/efficient-scaling-an-introduction-to-virtual-machine-scale-sets-vmss-i69</link>
      <guid>https://dev.to/under2wenty/efficient-scaling-an-introduction-to-virtual-machine-scale-sets-vmss-i69</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;Imagine running a fast-food outlet. On regular days, a small team of staff handles the usual flow of customers efficiently. But during busy periods, like weekends or events, you bring in extra staff to manage the increased demand, and once the rush is over, you scale back to your core team.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Virtual Machine Scale Sets (VMSS)&lt;/strong&gt; work the same way for IT resources. They automatically scale up virtual machines to handle high traffic during peak times and scale down when demand drops, ensuring optimal performance and cost-efficiency.&lt;/p&gt;

&lt;p&gt;Virtual Machine Scale Sets (VMSS) are a Microsoft Azure service that allows you to manage and deploy a group of identical virtual machines (VMs) with ease. They are designed to provide scalability, high availability, and load balancing for applications.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Features of VMSS:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Automatic Scaling&lt;/strong&gt;: 

&lt;ul&gt;
&lt;li&gt;VMSS can automatically increase or decrease the number of VMs based on demand or a defined schedule.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Load Balancing&lt;/strong&gt;: 

&lt;ul&gt;
&lt;li&gt;It distributes traffic evenly across all VMs in the scale set to ensure high availability.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Integration with Azure Services&lt;/strong&gt;: 

&lt;ul&gt;
&lt;li&gt;Works seamlessly with Azure Load Balancer, Application Gateway, and Autoscaling features.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Uniform or Flexible VM Sizes&lt;/strong&gt;: 

&lt;ul&gt;
&lt;li&gt;Supports both uniform VM configurations and flexible orchestration for diverse instance types.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cost Efficiency&lt;/strong&gt;: 

&lt;ul&gt;
&lt;li&gt;You only pay for the resources you use, and scaling down reduces costs.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Common Use Cases:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Hosting stateless applications like web servers or APIs.&lt;/li&gt;
&lt;li&gt;Batch processing tasks where the workload changes dynamically.&lt;/li&gt;
&lt;li&gt;Big data or parallel compute workloads requiring multiple VMs to process data simultaneously.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Steps to create a VMSS
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Sign in to the Azure portal&lt;/li&gt;
&lt;li&gt;Click “Create a resource” in the top left corner of the portal.
&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%2Fhj6t77rayyj0o007ob0b.png" alt="lobos" width="800" height="468"&gt;
&lt;/li&gt;
&lt;li&gt;Search for “Virtual Machine Scale Set” in the search bar&lt;/li&gt;
&lt;li&gt;Click on the “Virtual Machine Scale Set” result. 
&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%2F3fvy8wbihdtioampx0m5.png" alt="vmss" width="800" height="468"&gt;
&lt;/li&gt;
&lt;li&gt;Click the “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%2Fod916dhbdetyhw82dqfc.png" alt="tej" width="800" height="468"&gt;
&lt;/li&gt;
&lt;li&gt;In the Basic Tab, The first section is that of Project details  select the “subscription”, “resource group”.

&lt;ul&gt;
&lt;li&gt;If there are multiple subscriptions, select the one that you would like to use. Also, If resource group already is not already created. Click on the “create” button and create one. 
&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%2Fpnpkv4ey5ncj5i5o6yxe.png" alt="isha" width="800" height="468"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The next section is the Orchestration that allows us to select the “orchectration  mode“ and also “security”

&lt;ul&gt;
&lt;li&gt;You have the option of uniform and flexible select uniform as an example and for security select standard from the list of options 
&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%2F3khsyes3j16y59nheoh8.png" alt="wiene" width="800" height="366"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The next section is instance details.

&lt;ul&gt;
&lt;li&gt;You have the option of selecting an “image( operating system)”,“size”, and “number of instances” for your scale set.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;In the Administrator account section, select your “authentication type.” 
&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%2Fpfbc7slf84dhnjex8jil.png" alt="jamie" width="800" height="468"&gt;
&lt;/li&gt;
&lt;li&gt;Check the “Licensing” option.&lt;/li&gt;
&lt;li&gt;Click on the Blue “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%2Fiot4nthgnug41a4ld948.png" alt="lobo" width="800" height="468"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for the deployment to be completed.

&lt;ul&gt;
&lt;li&gt;Deployment will take some time to be completed typically between 3-5 minutes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Go to Resource.

&lt;ul&gt;
&lt;li&gt;Click on the “go to resource” button to access the newly created Azure VMSS. 
&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%2Fi0ei8rwymk7cpyozfbw9.png" alt="valdezon" width="800" height="468"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Check the status of the VMSS.

&lt;ul&gt;
&lt;li&gt;This is supposed to show succeeded. 
&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%2Fl2ma1wn3iq9lhnvterzp.png" alt="boo" width="800" height="468"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>virtualmachine</category>
      <category>azure</category>
      <category>cloud</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Scaling the Heights: An Introduction to Azure Kubernetes Service (AKS)</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Fri, 13 Dec 2024 05:08:37 +0000</pubDate>
      <link>https://dev.to/under2wenty/scaling-the-heights-an-introduction-to-azure-kubernetes-service-aks-1gba</link>
      <guid>https://dev.to/under2wenty/scaling-the-heights-an-introduction-to-azure-kubernetes-service-aks-1gba</guid>
      <description>&lt;p&gt;Ever wondered how big tech companies seamlessly manage thousands of applications in the cloud while maintaining reliability and scalability?&lt;/p&gt;

&lt;p&gt;Imagine a thriving food delivery company named &lt;em&gt;item7&lt;/em&gt;. As their user base grows, they face the challenge of managing increased traffic, maintaining uptime, and frequently rolling out updates without compromising performance. They opt for Kubernetes to manage their containerized applications but find it complex and time-consuming.&lt;/p&gt;

&lt;p&gt;In our fast-paced digital era, businesses need to deliver powerful applications swiftly and efficiently. This is where Kubernetes, a container orchestration platform that drives scalability and flexibility for modern apps. Azure Kubernetes Service (AKS) enhances this technology by providing a managed Kubernetes solution, streamlining the entire process. It allows businesses like &lt;em&gt;item7&lt;/em&gt; to easily deploy, scale, and manage their containerized apps, enabling them to focus on app improvement rather than infrastructure&lt;br&gt;
But what exactly is AKS, and why is it important?&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Understanding Kubernetes
&lt;/h2&gt;

&lt;p&gt;Think of Kubernetes as a really smart manager for all your apps and their containers. Here's a simple way to look at it:&lt;/p&gt;

&lt;p&gt;Imagine you have a restaurant (item 7) with many chefs (containers) in the kitchen. Each chef is responsible for a specific dish. Now, to keep everything running smoothly, you need a manager who makes sure there are enough chefs during busy hours, replaces any chef who gets sick, and ensures each dish is cooked perfectly.&lt;/p&gt;

&lt;p&gt;Kubernetes is like that manager. It:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Deploys: Helps you put your chefs (containers) in the right places (servers).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scales: Adds more chefs if more customers (users) come in, and sends some chefs home if it's quiet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Self-Heals: If a chef messes up or gets sick (a container crashes), Kubernetes replaces them with a healthy chef.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Updates: When you have a new recipe (app update), Kubernetes smoothly changes the menu without shutting down the restaurant.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In short, Kubernetes helps you manage lots of containers efficiently, ensuring your app runs smoothly no matter how many users you have.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. What is Azure Kubernetes Service (AKS)?
&lt;/h2&gt;

&lt;p&gt;Kubernetes is an open-source platform that automates the deployment, scaling, and operation of application containers. It was originally developed by Google and is now maintained by the Cloud Native Computing Foundation (CNCF). &lt;/p&gt;

&lt;p&gt;Azure Kubernetes Service (AKS) is a managed container orchestration service provided by Microsoft Azure. It simplifies the process of deploying, managing, and scaling containerized applications using Kubernetes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Core Components:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Pods: The smallest unit in Kubernetes, representing a single instance of a running process.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Nodes: Worker machines in a Kubernetes cluster that run pods.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clusters: A set of nodes that manage containerized applications.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. Advantages and Disadvantages of AKS
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Benefits of Azure Kubernetes Service:&lt;/strong&gt;&lt;br&gt;
AKS has become crucial for companies embracing cloud-native strategies. Here’s why:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Streamlined Kubernetes Management: By automating routine tasks like health monitoring, scaling, and upgrades, AKS lets developers concentrate on application development.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scalability: AKS ensures applications can scale up or down according to demand, promoting cost-efficiency and high performance.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Seamless Integration with Azure: It integrates effortlessly with Azure tools like Azure Monitor, Azure DevOps, and Azure Security Center, providing a complete operational framework.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cost Efficiency: With its pay-as-you-go model, AKS allows businesses to scale only as needed, ensuring they only pay for what they use.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Disadvantages of AKS&lt;/strong&gt;&lt;br&gt;
While AKS has many benefits, it’s not without challenges:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Steep Learning Curve: Kubernetes itself can be complex, and adopting AKS requires understanding its core concepts.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cost Management: Without proper configuration, costs can spiral out of control, especially with auto-scaling features.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Vendor Lock-in: Leveraging Azure-specific features can make it harder to migrate to other platforms if needed.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  4. How It Works:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Cluster Creation: You start by creating a Kubernetes cluster on Azure using the Azure portal, Azure CLI, or infrastructure as code tools like Terraform.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Deployment: Deploy your containerized applications to the AKS cluster using Kubernetes tools like kubectl or Helm.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Management: Azure takes care of the underlying infrastructure and Kubernetes control plane, so you can focus on your applications. You can use Azure Monitor to keep an eye on the health and performance of your cluster.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AKS has generated significant interest in the tech world, especially as businesses increasingly adopt cloud-native technologies. Its ability to support modern workloads like AI/ML, IoT, and serverless architectures has made it a critical part of Azure’s portfolio. Additionally, as multi-cloud strategies gain momentum, AKS is being used alongside other cloud providers to create resilient and flexible systems. The buzz around AKS reflects the shift towards scalable and efficient app management in the cloud era.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Deploying Your First AKS Cluster
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Log in to the Azure Portal using your credentials.&lt;/li&gt;
&lt;li&gt; Navigate to the 'Create a resource' option and search for 'Kubernetes Service'. 
&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%2Fzpocf7hwikzmqgwji87b.png" alt="aks" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Click on 'Kubernetes Service' and then select '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%2Fx9niiylfg7vgc3igand3.png" alt="sada" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Fill in the required information such as subscription, resource group, AKS cluster name, region, and Kubernetes version. 
&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%2Fbd8rmdryf2f6q8n381cs.png" alt="ks" width="800" height="454"&gt; &lt;/li&gt;
&lt;li&gt;Configure additional settings like node size, node count, and authentication method
&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%2Fggs6zb1u7xp6jmaztdzb.png" alt="ska" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Review the settings and click on 'Review + 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%2Fr0sws4gtdgms6bm7u1wh.png" alt="rpg" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;wait for it to deploy, which will take a while, then you '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%2Fa8hxsjl4k3higpkj3k00.png" alt="deploi" width="800" height="413"&gt;
&lt;/li&gt;
&lt;li&gt;Once validation is successful, click on 'Create' to provision the AKS cluster
&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%2Fvlgs53txja6gw2j133u6.png" alt="cfw" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Monitor the deployment progress in the Azure Portal.
Once your AKS cluster is up and running, you can manage it using kubectl commands or the Azure Portal. This lesson gives you the basic knowledge needed to create an AKS cluster via the Azure Portal, which is crucial for deploying and managing containerized applications in Kubernetes.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Azure Kubernetes Service (AKS) is essential for businesses adopting microservices and cloud-native applications. It simplifies the complexities of Kubernetes management, ensures seamless application scaling, and integrates smoothly with Azure's extensive ecosystem. Despite some challenges, the advantages of AKS significantly outweigh the drawbacks, making it a preferred choice for developers and enterprises.&lt;/p&gt;

&lt;p&gt;Whether you're a startup or a well-established company, AKS empowers you to efficiently manage your applications, helping you stay competitive in a fast-paced environment.&lt;/p&gt;

</description>
      <category>kubernetes</category>
      <category>azure</category>
      <category>tutorial</category>
      <category>devops</category>
    </item>
    <item>
      <title>Click, Code, Host: A Beginner's Guide to Azure App Services</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Tue, 10 Dec 2024 07:54:24 +0000</pubDate>
      <link>https://dev.to/under2wenty/click-code-host-a-beginners-guide-to-azure-app-services-55nd</link>
      <guid>https://dev.to/under2wenty/click-code-host-a-beginners-guide-to-azure-app-services-55nd</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;Building, deploying, and scaling web apps is made easier with Microsoft Azure's Azure App Service, a flexible platform-as-a-service (PaaS) solution. Everything from simple websites to intricate business apps can be hosted on it. It's a popular alternative for developers because of its advantages, which include easy scalability, numerous deployment choices, worldwide hosting, and smooth connection with other Azure services.&lt;br&gt;
This article will walk you through setting up an App Service and deploying content.&lt;/p&gt;

&lt;h2&gt;
  
  
  1.Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A Microsoft Azure account.&lt;/li&gt;
&lt;li&gt;Azure CLI&lt;/li&gt;
&lt;li&gt;Basic understanding of Azure portal navigation.&lt;/li&gt;
&lt;li&gt;Necessary files or content to upload (e.g., a sample HTML website).&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. &lt;a href="https://learn.microsoft.com/en-us/cli/azure/" rel="noopener noreferrer"&gt;Download&lt;/a&gt; and Install Azure CLI
&lt;/h2&gt;

&lt;p&gt;search for the azure CLI on google and install the compactible version to your PC(Windows or MacOS) &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%2F0c9jqa5109ndezmyvojx.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%2F0c9jqa5109ndezmyvojx.png" alt="az" width="800" height="375"&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%2Fhvspqp1god6dlqtjaoab.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%2Fhvspqp1god6dlqtjaoab.png" alt="imdn" width="800" height="375"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Create the web App with Azure CLI and PowerShell
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;open terminal or powershare and run as administrator &lt;/li&gt;
&lt;li&gt;login to azure using the command
&lt;/li&gt;
&lt;/ul&gt;

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;The Azure login page will open in your browser. Sign in to your Azure account
&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%2Fd84w8irnul6cy1d6awms.png" alt="login" width="800" height="443"&gt;
&lt;/li&gt;
&lt;li&gt;Next step is to create a resource group. To create enter the command
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;az group create --name YesAppRGOladele --location canadacentral
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A simple explanation of this command&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; &lt;em&gt;az- azure portal, we are working on azure&lt;/em&gt;

&lt;ul&gt;
&lt;li&gt; &lt;em&gt;group- what we want to do on azure is to create a 'resource group'&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt; &lt;em&gt;create- the action we want to do, which is to create&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt; &lt;em&gt;--name YesAppRGoladele- this is the name to be assigned to the resource group created. You can change it to any name that suits you.&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt; &lt;em&gt;--location canadacentral- the location where we want our server to be will be canada central&lt;/em&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Notice there is a space after each command word.&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%2F96g1zsdholb3t799yfml.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%2F96g1zsdholb3t799yfml.png" alt="iois" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create an App service plan. Enter the command
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;az appservice plan create --name YesAppoladelePlan --resource-group YesAppRGoladele
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&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%2Fepe7tkzcv54az8wmfmp9.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%2Fepe7tkzcv54az8wmfmp9.png" alt="myaoo" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This will set up YesAppoladelePlan within the already created YesoladeleRGAfeez resource group.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set up a Web App. Enter the command
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;az webapp create --name YesAppServiceApp --resource-group YesAppRGoladele --plan YesAppoladelePlan
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&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%2F8cttw9bj0wt3g1v4tcnu.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%2F8cttw9bj0wt3g1v4tcnu.png" alt="tz" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Upload content on the webapp
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Go to azure portal in the App Service section to ensure the web App was successfully created. 
Search for the &lt;strong&gt;app service&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%2F2c7matxmog6ppu123erz.png" alt="add" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;click on the created webapp 
&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%2Fhbj9bvhqaymi140wum1l.png" alt="wenappn" width="800" height="249"&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;on the overview page click on the &lt;strong&gt;default domain&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%2Fx4ap1h7m2g4iea4h9jgp.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%2Fx4ap1h7m2g4iea4h9jgp.png" alt="degv" width="800" height="454"&gt;&lt;/a&gt;&lt;br&gt;
The link will be re-directed to the created webapp, which should be running and waiting for contents to be uploaded &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%2Fh9qrxu7vganwu2uennyn.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%2Fh9qrxu7vganwu2uennyn.png" alt="tedf" width="800" height="435"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the azure portal search &lt;strong&gt;Advanced Tools&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select it and click &lt;strong&gt;Go&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%2F0zkejh6ywyr2r7z1ky8l.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%2F0zkejh6ywyr2r7z1ky8l.png" alt="webapp" width="800" height="191"&gt;&lt;/a&gt;&lt;br&gt;
A browser(KuduPlus) is opened up in a new browser this contains tools for uploading our code&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;click on &lt;strong&gt;debug console&lt;/strong&gt; &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;select &lt;strong&gt;CMD&lt;/strong&gt; from the dropdown&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%2Fdntztbeabuk3ygpbrck9.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%2Fdntztbeabuk3ygpbrck9.png" alt="cmd" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;select on &lt;strong&gt;site&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%2Fjplaafagcntj8zsb5wr8.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%2Fjplaafagcntj8zsb5wr8.png" alt="site" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select the &lt;strong&gt;wwwroot&lt;/strong&gt; folder &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%2Fjbnf6xyk7it7sgozm5vx.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%2Fjbnf6xyk7it7sgozm5vx.png" alt="imabu" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click on the pencil icon on &lt;strong&gt;hostingstart.html&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%2Fg2crw8fxoeml5gggib1u.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%2Fg2crw8fxoeml5gggib1u.png" alt="penci" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Paste in your code and click &lt;strong&gt;Save&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%2Fc7pv3jkpvt0w37ek3au4.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%2Fc7pv3jkpvt0w37ek3au4.png" alt="davbiks" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Reopen the Default domain and notice your content have been uploaded and its live&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%2Fy1n5th5elfbrqcfldtjo.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%2Fy1n5th5elfbrqcfldtjo.png" alt="jki" width="800" height="321"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In this tutorial, you discovered how to create and deploy a web app with Azure App Services. We walked through setting up the service, configuring it, and adding content. Thanks to its scalability, user-friendly interface, and global reach, Azure App Services is an excellent choice for hosting web applications. Your app is now live and ready for further development and exploration.&lt;br&gt;
Thank you for taking the time to read this guide.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>azure</category>
      <category>webdev</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>Creating an EC2 Instance and Installing IIS: A Beginner's Guide</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Sun, 08 Dec 2024 16:29:19 +0000</pubDate>
      <link>https://dev.to/under2wenty/creating-an-ec2-instance-and-installing-iis-a-beginners-guide-110g</link>
      <guid>https://dev.to/under2wenty/creating-an-ec2-instance-and-installing-iis-a-beginners-guide-110g</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;The setup of the IIS web server and the creation of an EC2 instance on AWS were covered in this tutorial. You may set up a Windows-based web server in the cloud and make it ready to host websites or apps by following these instructions. This guide offers a strong foundation for working with AWS and IIS, regardless of your level of experience or want to improve your cloud skills.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AWS (Amazon Web Services):&lt;/strong&gt;&lt;br&gt;
A comprehensive cloud platform offering a wide range of services like computing, storage, and databases to build and scale applications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EC2 Instances:&lt;/strong&gt; Virtual servers in AWS that provide resizable compute capacity for hosting applications and running workloads in the cloud.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;IIS (Internet Information Services):&lt;/strong&gt; A web server from Microsoft used to host websites, applications, and services on Windows servers.&lt;/p&gt;

&lt;p&gt;Following are steps to be taken: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Login to AWS Management Console&lt;/li&gt;
&lt;li&gt;Navigate to EC2 Dashboard 
&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%2Frxdd3tqqqopzvjbp55qb.png" alt="lomd" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Launch a New Instance 
&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%2F3ioxz7js5prju3ezzuvj.png" alt="laucm" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Give the instance a 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%2Fwcpirw7w98qvaq17dq52.png" alt="give" width="800" height="256"&gt;
&lt;/li&gt;
&lt;li&gt;Select a Windows Server AMI. in this case I'm selecting the free Microsoft Windows server 2025 Base 
&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%2Fp0g838kgbtgpb7wstiyc.png" alt="five" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Choose Instance Type and create new key pair
&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%2Fbrrzkgeuw1h2s7chsus9.png" alt="still sixn" width="800" height="454"&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%2Fl0jd4ivvbin8ofv15h9p.png" alt="six" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Allow http to have access to web server
&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%2F0ljl3c7evuc7dy4tg2pe.png" alt="seven" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;cross-check your settings and launch instance &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%2Fhhm72s1i15lfqtw4urql.png" alt="kdjhwevdab" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Connect to Your Instance
&lt;/h2&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%2Fledt3s1ype3366ssvq7x.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%2Fledt3s1ype3366ssvq7x.png" alt="kjih" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use RDP to connect to the instance with the administrator credentials. 
&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%2Fc9085s0gvr5no7qv14mn.png" alt="rdp" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Upload private key file, navigate and select the downloaded key file and decrypt 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%2F3xfwx8tj9nuft0j25fxs.png" alt="wfe" width="800" height="454"&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%2Fxsl1otn9w3w45q6pdmug.png" alt="wfen" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;copy the password 
&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%2Ftwsinhwozdmvmhd9h2sp.png" alt="wfqe" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt; open the downloaded RDP file and connect 
&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%2Fa2r3gbd2mdwfiiwaeyt4.png" alt="wfeget" width="800" height="394"&gt; &lt;/li&gt;
&lt;li&gt;paste the copied password 
&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%2F33bgypkeqava6gmqerda.png" alt="Idedfo" width="800" height="775"&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%2F5olfconrn6appc0wfl1t.png" alt="magma" width="800" height="427"&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Install IIS Web Server
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Search for PowerShell on the desktop, run as Admin &lt;/li&gt;
&lt;li&gt;Enter the command 
&lt;strong&gt;Install-WindowsFeature -Name Web-Server-IncludeManagementTools&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%2Fe3qs3o0qez0lqoslfn80.png" alt="sgwrag" width="800" height="371"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Test the IIS Web Server
&lt;/h2&gt;

&lt;p&gt;You can verify that IIS has been installed just by pasting the ip address of the VM in a browser &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%2Fcawuouutlrw3oo1wotog.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%2Fcawuouutlrw3oo1wotog.png" alt="eben" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Notice the IIS web server was successfully accessed from the public internet. 
&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%2F9tsgpnuchh446ys2nthz.png" alt="bnme" width="800" height="505"&gt;
&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;This blog post explains how to create an AWS EC2 instance and configure it using IIS as a web server. You will first choose a Windows Server AMI, set up instance information, then start your EC2 instance using the AWS Management Console. After establishing an RDP connection, you will install IIS to host web content and check the configuration by going to the default IIS website.&lt;/p&gt;

&lt;p&gt;With the help of this tutorial, you can start developing scalable and accessible web apps by learning how to set up a Windows-based web server in the cloud.&lt;br&gt;
I hope this post added value to your cloud computing experience&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>cloudcomputing</category>
      <category>aws</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Provide private storage for internal company documents</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Tue, 03 Dec 2024 08:33:03 +0000</pubDate>
      <link>https://dev.to/under2wenty/provide-private-storage-for-internal-company-documents-13h7</link>
      <guid>https://dev.to/under2wenty/provide-private-storage-for-internal-company-documents-13h7</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;In an era where data security and accessibility are paramount, companies must ensure their internal documents are stored safely and efficiently. Providing private storage for sensitive information not only safeguards data from unauthorized access but also streamlines workflows by offering centralized and secure access to files. In this blog, we’ll explore the best practices and tools for setting up private storage solutions tailored to your organization’s needs, ensuring data remains protected and easily accessible for internal use.&lt;/p&gt;

&lt;h3&gt;
  
  
  STEP 1. Create a storage account and configure high availability.
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Create a storage account for the internal private company documents

&lt;ul&gt;
&lt;li&gt;In the portal, search for and select Storage accounts. 
&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%2Fb73i4k4u59518sdvirji.png" alt="SA" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select + 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%2Faez44zgk8oq2at3x8t9k.png" alt="ca" width="800" height="177"&gt;
&lt;/li&gt;
&lt;li&gt;Select the Resource group created in my previous post &lt;a href="https://dev.to/under2wenty/provide-storage-for-the-public-website-m78"&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Set the Storage account name to private. Add an identifier to the name to ensure the name is unique. &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%2F3gn6fydikeo250qqyegn.png" alt="is" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Select Review, and then Create the storage account. &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%2Fdgzjgdkpk266kbsphlh3.png" alt="big boy" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for the storage account to deploy, and then select 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%2Fouvtuso6ljzsfof3z1um.png" alt="diss" width="800" height="377"&gt;
2 . This storage requires high availability if there’s a regional outage. Read access in the secondary region is not required. Configure the appropriate level of redundancy.&lt;/li&gt;
&lt;li&gt;In the storage account, in the Data management section, select the Redundancy blade.&lt;/li&gt;
&lt;li&gt;Ensure Geo-redundant storage (GRS) is selected.&lt;/li&gt;
&lt;li&gt;Refresh the page.&lt;/li&gt;
&lt;li&gt;Review the primary and secondary location information.&lt;/li&gt;
&lt;li&gt;Save your changes. 
&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%2F0evruklcphhm9e00r4ke.png" alt="grs" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  STEP 2. Create a storage container, upload a file, and restrict access to the file
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Create a private storage container for the corporate data.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the storage account, in the Data storage section, select the Containers blade.&lt;/li&gt;
&lt;li&gt;Select + Container.&lt;/li&gt;
&lt;li&gt;Ensure the Name of the container is private.&lt;/li&gt;
&lt;li&gt;Ensure the Public access level is Private (no anonymous access).&lt;/li&gt;
&lt;li&gt;As you have time, review the Advanced settings, but take the defaults.&lt;/li&gt;
&lt;li&gt;Select 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%2Feiiapk7o6taw8y3iosf1.png" alt="vbosb" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;For testing, upload a file to the private container. The type of file doesn’t matter. A small image or text file is a good choice. Test to ensure the file isn’t publically accessible.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the container. 
&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%2F5vh4i9ca6z21lzv00gln.png" alt="cont" width="800" height="269"&gt;
&lt;/li&gt;
&lt;li&gt;Select Upload.&lt;/li&gt;
&lt;li&gt;Browse to files and select a file.&lt;/li&gt;
&lt;li&gt;Upload the file. 
&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%2Fzul6osiud5ti84ua4le0.png" alt="uploas" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select the uploaded file.&lt;/li&gt;
&lt;li&gt;On the Overview tab, copy the URL. 
&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%2F57qonk9hivrlp0nzetam.png" alt="ur lii" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Paste the URL into a new browser tab.&lt;/li&gt;
&lt;li&gt;Verify the file doesn’t display and you receive an error. 
&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%2Fwor7joyyd5al552nsqn5.png" alt="syntax boy" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;An external partner requires read and write access to the file for at least the next 24 hours. Configure and test a shared access signature (SAS).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your uploaded blob file and move to the Generate SAS tab. &lt;/li&gt;
&lt;li&gt;In the Permissions drop-down, ensure the partner has only Read permissions. &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%2Ftudt92yqk5gou2yccubu.png" alt="drop" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Verify the Start and expiry date/time is for the next 24 hours.&lt;/li&gt;
&lt;li&gt;Select Generate SAS token and URL.&lt;/li&gt;
&lt;li&gt;Copy the Blob SAS URL to a new browser tab. 
&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%2Fnj5t0x93y7vaq696kdvc.png" alt="blon" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Verify you can access the file. If you have uploaded an image file it will display in the browser. Other file types will be downloaded. 
&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%2Fvohv5u5mi73piimjwzwy.png" alt="amzon" width="800" height="505"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  STEP 3. Configure storage access tiers and content replication.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;To save on costs, after 30 days, move blobs from the hot tier to the cool tier&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Return to the storage account.&lt;/li&gt;
&lt;li&gt;In the Overview section, notice the Default access tier is set to Hot. 
&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%2Fplgeadp60lanhbccyinq.png" alt="etinosa" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;In the Data management section, select the Lifecycle management blade. 
&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%2Fjr920bof4esu8jctmm9p.png" alt="shanks" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select Add rule.&lt;/li&gt;
&lt;li&gt;Set the Rule name to movetocool.&lt;/li&gt;
&lt;li&gt;Set the Rule scope to Apply rule to all blobs in the storage account. &lt;/li&gt;
&lt;li&gt;Select Next. &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%2Fwo1lzhud8x91xu98q64q.png" alt="tyc" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Ensure Last modified is selected.&lt;/li&gt;
&lt;li&gt;Set More than (days ago) to 30.&lt;/li&gt;
&lt;li&gt;In the Then drop-down select Move to cool storage. 
&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%2Frck1nm81vpgt6ahzwdg0.png" alt="rule" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Add the rule. &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The public website files need to be backed up to another storage account.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In your storage account, create a new container called backup. Use the default values. Refer back &lt;a href="https://dev.to/under2wenty/provide-storage-for-the-public-website-m78"&gt;here&lt;/a&gt; if you need detailed instructions. 
&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%2F3n7hdqr020vtd5ph5saz.png" alt="druski" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Navigate to your publicwebsite020 storage account. This storage account was created in the previous &lt;a href="https://dev.to/under2wenty/provide-storage-for-the-public-website-m78"&gt;post&lt;/a&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%2Fpfv8r3q2zuyjp6fistpl.png" alt="yooba" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;In the Data management section, select the Object replication blade. 
&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%2Fyctnzn09eqbphy2xrl8j.png" alt="b0b" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select Create replication rules. 
&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%2Fkf96rnial0xnwra3ortk.png" alt="replica" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Set the Destination storage account to the private storage account. 
&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%2Fyve2dpx9795fii9fch12.png" alt="akon" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Set the Source container to public and the Destination container to backup.&lt;/li&gt;
&lt;li&gt;Create the replication 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%2F4f56qnxbsh5pt4enc4b1.png" alt="NYC" width="800" height="454"&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%2Fer8jnc3mtpds9bcoc7kv.png" alt="jair" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  CONCLUSION
&lt;/h2&gt;

&lt;p&gt;Providing private storage for internal company documents is a critical step toward ensuring data security, accessibility, and efficiency. By implementing a tailored solution, businesses can safeguard sensitive information while enabling seamless collaboration across teams. Whether through cloud-based options or on-premises systems, the right storage solution enhances productivity and protects your organization’s most valuable assets. Take the steps outlined in this guide to create a secure, reliable storage environment that supports your company’s growth and operations.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>azure</category>
      <category>cloud</category>
      <category>devops</category>
    </item>
    <item>
      <title>Provide shared file storage for the company offices</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Tue, 03 Dec 2024 08:31:46 +0000</pubDate>
      <link>https://dev.to/under2wenty/provide-shared-file-storage-for-the-company-offices-4ap5</link>
      <guid>https://dev.to/under2wenty/provide-shared-file-storage-for-the-company-offices-4ap5</guid>
      <description>&lt;h2&gt;
  
  
  Step1. Create and configure a storage account for Azure Files.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Create a storage account for the finance department’s shared files.

&lt;ul&gt;
&lt;li&gt;In the portal, search for and select Storage accounts. 
&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%2F790pc2yaxug59yr1zs7z.png" alt="search" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select + 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%2Fdh4e5pyaijez980in9t6.png" alt="select" width="800" height="177"&gt;
&lt;/li&gt;
&lt;li&gt;For Resource group select Create new. Give your resource group a name and select OK to save your changes.&lt;/li&gt;
&lt;li&gt;Provide a Storage account name. Ensure the name meets the naming requirements. 
&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%2F260aw50m9a3ac8hlhkcm.png" alt="provide" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Set the Performance to Premium.&lt;/li&gt;
&lt;li&gt;Set the Premium account type to File shares.&lt;/li&gt;
&lt;li&gt;Set the Redundancy to Zone-redundant storage.&lt;/li&gt;
&lt;li&gt;Select Review and then Create the storage account. 
&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%2Fj2q8ri52x83n8ajd78j2.png" alt="review" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for the resource to deploy.&lt;/li&gt;
&lt;li&gt;Select 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%2F2jq94ihczvmbc6egzyq0.png" alt="resource" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step 2. Create and configure a file share with directory.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Create a file share for the corporate office

&lt;ul&gt;
&lt;li&gt;In the storage account, in the Data storage section, select the File shares blade. 
&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%2Fybzpy5ducbxufofyb5pq.png" alt="Image description" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select + File share and provide a 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%2Fzgsyngh14bzb7azfyv5w.png" alt="select" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Review the other options, but take the defaults.&lt;/li&gt;
&lt;li&gt;Select 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%2F25g8stkki5l9g9hpv4c6.png" alt="create" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add a directory to the file share for the finance department. For future testing, upload a file.

&lt;ul&gt;
&lt;li&gt;Select your file share and select + Add directory.
&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%2Fgao84rdnihvriavlm0y2.png" alt="add" width="800" height="454"&gt; &lt;/li&gt;
&lt;li&gt;Name the new directory finance. 
&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%2Fyas5vl2kjiw57gcqwrwr.png" alt="name" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select Browse and then select the finance directory. &lt;/li&gt;
&lt;li&gt;Notice you can Add directory to further organize your file share. &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%2Fsqsms166jelyrei3cx0x.png" alt="notice" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Upload a file of your choosing.
&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%2F7wbkms809lf3doh88jx7.png" alt="upload" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step 3. Configure and test snapshots.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Similar to blob storage, you need to protect against accidental deletion of files. You decide to use snapshots&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select your file share.&lt;/li&gt;
&lt;li&gt;In the Operations section, select the Snapshots blade. 
&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%2Fe9qxm2649m8f9jfoqjgl.png" alt="in the" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select + Add snapshot. The comment is optional. 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%2Fex5uyol65si51x2ipgf5.png" alt="add snap" width="800" height="148"&gt;
&lt;/li&gt;
&lt;li&gt;Select your snapshot and verify your file directory and uploaded file are included. 
&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%2Fy5iqmh89kw4mx4uf4aeh.png" alt="your" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Practice using snapshots to restore a file. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Return to your file share.&lt;/li&gt;
&lt;li&gt;Browse to your file directory.&lt;/li&gt;
&lt;li&gt;Locate your uploaded file and in the Properties pane select Delete. 
&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%2Frdkq46gce44dke3k2irz.png" alt="locate" width="800" height="454"&gt; &lt;/li&gt;
&lt;li&gt;Select Yes to confirm the deletion.&lt;/li&gt;
&lt;li&gt;Select the Snapshots blade and then select your snapshot.&lt;/li&gt;
&lt;li&gt;Navigate to the file you want to restore,&lt;/li&gt;
&lt;li&gt;Select the file and then select Restore.&lt;/li&gt;
&lt;li&gt;Provide a Restored file name.&lt;/li&gt;
&lt;li&gt;Verify your file directory has the restored file. 
&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%2F8l96oz5ejfep70icz1zb.png" alt="verify" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step 4. Configure restricting storage access to selected virtual networks.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;This tasks in this section require a virtual network with subnet. In a production environment these resources would already be created.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Search for and select Virtual networks. 
&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%2Fshmlncx4uvwx7s827zwg.png" alt="for" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select Create. Select your resource group. and give the virtual network a name.&lt;/li&gt;
&lt;li&gt;Take the defaults for other parameters, select Review + create, and then 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%2Fpbb0grpto09szkgxt2p1.png" alt="then" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for the resource to deploy.&lt;/li&gt;
&lt;li&gt;Select 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%2F2og3w0dm70a8mwt8bhcj.png" alt="goto" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;In the Settings section, select the Subnets blade.&lt;/li&gt;
&lt;li&gt;Select the default subnet. 
&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%2Fdk82o2m70pprdmbmry4g.png" alt="defaylt" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;In the Service endpoints section choose Microsoft.Storage in the Services drop-down.&lt;/li&gt;
&lt;li&gt;Do not make any other changes.&lt;/li&gt;
&lt;li&gt;Be sure to Save your changes. 
&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%2Fwonwn9pb2wapis70l3o2.png" alt="be sure" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The storage account should only be accessed from the virtual network you just created.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Return to your files storage account. 
&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%2Fscdlrvgmrbf2rm7ocmaw.png" alt="return" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;In the Security + networking section, select the Networking blade.&lt;/li&gt;
&lt;li&gt;Change the Public network access to Enabled from selected virtual networks and IP addresses. 
&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%2Fq2qv20bmvtu5iw57fwyf.png" alt="and" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;In the Virtual networks section, select Add existing virtual network.&lt;/li&gt;
&lt;li&gt;Select your virtual network and subnet, select Add.&lt;/li&gt;
&lt;li&gt;Be sure to Save your changes. 
&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%2F9ll72y14gmqnamhid6jc.png" alt="sure" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select the Storage browser and navigate to your file share. 
&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%2Fa046tkif9yxb6mxbtt1z.png" alt="minnus" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Verify the message not authorized to perform this operation. You are not connecting from the virtual network. 
&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%2Figkos9fhv8cg7qgkhsvt.png" alt="siuis" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>devops</category>
      <category>beginners</category>
      <category>cloud</category>
      <category>webdev</category>
    </item>
    <item>
      <title>From Setup to Uptime: Creating a Highly Available Windows 11 VM</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Mon, 25 Nov 2024 14:39:27 +0000</pubDate>
      <link>https://dev.to/under2wenty/from-setup-to-uptime-creating-a-highly-available-windows-11-vm-2ncn</link>
      <guid>https://dev.to/under2wenty/from-setup-to-uptime-creating-a-highly-available-windows-11-vm-2ncn</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;Downtime is not an option in the always connected digital world of today. Making virtual machines highly available is essential, whether for development, testing, or production. We'll go over how to set up a Windows 11 Virtual Machine (VM) step by step, with a focus on high availability.  This guide will help you create a stable and reliable VM environment. Let’s get started.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. CREATE A WINDOWS 11 VM ON AZURE&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;on azure portal Search for and select Virtual Machine 
&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%2Fmjaht3epbdopgphxarg8.png" alt="one" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select Create + and click on Azure Virtual Machines 
&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%2Fyvnmyqfzuig20c0rs406.png" alt="two" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;create a resource group or select an existing one 
&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%2Folsgqew0e9fu8li1kzcb.png" alt="threeen" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;provide a virtual machine name &lt;/li&gt;
&lt;li&gt;set the region, mine is at the default settting&lt;/li&gt;
&lt;li&gt; highlight at least 2 availability zones &lt;/li&gt;
&lt;li&gt;search for and select windows 11 under image 
&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%2F71xuye6st24utra66j3q.png" alt="four" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;set a username and password for the administrator account&lt;/li&gt;
&lt;li&gt;select RDP and HTTP for select inbound portal 
&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%2Fou7znmher0m5jgcw3fez.png" alt="five" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;check the licensing box 
&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%2Fconwon852wmy2z80l8jo.png" alt="six" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;under monitoring tab, disable diagnostics 
&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%2Fkbuoxqb61djl8hw06228.png" alt="seven" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;tag the account to categorize billing on the account 
&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%2Fsern8f54jbd55ihyp4zy.png" alt="eight" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;review+ 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%2F79q9hoitb0k93a7l137s.png" alt="nine" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;go to resources 
&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%2F2mpl9quf9zh7pn3by8wq.png" alt="ten" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;select public IP address 
&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%2Fe1dfuz05souvfisxnoh9.png" alt="fifity" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;increase the idle timeout and 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%2Fb0iy1st6ch9o27z2zi2w.png" alt="eleven" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt; Once the virtual machine is deployed, click on the “Connect” button in the virtual machine blade in the Azure portal 
&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%2Fl6i7lq0yjmbzc6m2gvu5.png" alt="twelven" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;select the native RDP on the local machine 
&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%2Fmslke807rf0at35gvhkw.png" alt="twelve" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;and download the RDP file after configuration 
&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%2F91rpyyqfc7cmrz1z2qqp.png" alt="twemty" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. CONNECT TO THE VIRTUAL MACHINE&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;open the downloaded file
&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%2Fi8zrwhgbi7j3ncsop7rr.png" alt="rdp" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;click connect and follow the prompts 
&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%2Figl1tigq8t3xk07oua6d.png" alt="connect" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;type in the password set for the administrator account 
&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%2Fxkerd4wmxhnep2gxdhx3.png" alt="admin" width="800" height="714"&gt;
And with this steps we've created a highly available windows 11 VM.&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%2Fxch6btm5gobjqoowi6el.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%2Fxch6btm5gobjqoowi6el.png" alt="windows" width="800" height="485"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  CONCLUSION
&lt;/h2&gt;

&lt;p&gt;Setting up a highly available Windows 11 VM ensures minimal downtime and maximum reliability. By using strategies like redundancy, failover, and geographic distribution, you can safeguard your VM from disruptions and ensure continuous service. This guide walks you through the steps to create a robust and dependable Windows 11 VM that can handle potential failures and maintain business continuity.&lt;br&gt;
like this post if you find it useful.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Provide storage for the public website</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Mon, 25 Nov 2024 10:45:06 +0000</pubDate>
      <link>https://dev.to/under2wenty/provide-storage-for-the-public-website-m78</link>
      <guid>https://dev.to/under2wenty/provide-storage-for-the-public-website-m78</guid>
      <description>&lt;p&gt;&lt;strong&gt;Public storage&lt;/strong&gt; is a cloud-based system in which third-party suppliers provide shared infrastructure for data storage. It is perfect for data management, file hosting, and backups because it is scalable, affordable, and globally accessible. Example includes, Azure Blob Storage, Google Cloud Storage, and Amazon S3.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Create a storage account with high availability.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Create a storage account to support the public website.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the portal, search for and select Storage accounts 
&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%2Fo8clcqrperet03id0du9.png" alt="storage account" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select + 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%2F041svaecbrfl5cvx8zx3.png" alt="select create" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;For resource group select new. Give your resource group a name and 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%2F7ew5cvynpgcszx6nkz3r.png" alt="rg" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Set the Storage account name to publicwebsite 
&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%2Fbpbwzreh6640mwbik46c.png" alt="account name" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt; Take the defaults for other settings&lt;/li&gt;
&lt;li&gt;Select Review and then 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%2Fe4p65hsmjkvc9vaeied2.png" alt="selethj" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt; Wait for the storage account to deploy, and then select 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%2F6yu5haed4bqa89qvmn7b.png" alt="resources" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;This storage requires high availability if there’s a regional outage. Additionally, enable read access to the secondary region&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the storage account, in the Data management section, select the Redundancy blade. 
&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%2F4ls4haqmaxxgtpggdacx.png" alt="redundancy" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Ensure Read-access Geo-redundant storage is selected. 
&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%2F6i72ywra0c5nfyngie66.png" alt="read acces" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Review the primary and secondary location information. 
&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%2Fo5p41g2313xnhxzdhwjj.png" alt="primary" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Information on the public website should be accessible without requiring customers to login.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the storage account, in the Settings section, select the Configuration blade.&lt;/li&gt;
&lt;li&gt;Ensure the Allow blob anonymous access setting is Enabled.&lt;/li&gt;
&lt;li&gt;Be sure to Save your changes. 
&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%2Fm0w81gqwrnvx0236v8q8.png" alt="step three" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step 2. Create a blob storage container with anonymous read access
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;The public website has various images and documents. Create a blob storage container for the content.

&lt;ul&gt;
&lt;li&gt;In your storage account, in the Data storage section, select the Containers blade.&lt;/li&gt;
&lt;li&gt;Select + Container.&lt;/li&gt;
&lt;li&gt;Ensure the Name of the container is public.&lt;/li&gt;
&lt;li&gt;Select 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%2Fi9dswgfwgas7vsu0pb5o.png" alt="blade" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&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%2F9i4s46pz1z1uzea4dsmb.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%2F9i4s46pz1z1uzea4dsmb.png" alt="select creates" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Customers should be able to view the images without being authenticated. Configure anonymous read access for the public container blobs.

&lt;ul&gt;
&lt;li&gt;Select your public container.&lt;/li&gt;
&lt;li&gt;On the Overview blade, select Change access level.&lt;/li&gt;
&lt;li&gt;Ensure the Public access level is Blob (anonymous read access for blobs only).&lt;/li&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%2Fuayzkbct0k4es8swovya.png" alt="overview blade" width="800" height="454"&gt; &lt;/li&gt;
&lt;/ul&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%2Ftm62hvkkjyturiab1965.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%2Ftm62hvkkjyturiab1965.png" alt="publci assd" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3. Practice uploading files and testing access.
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;For testing, upload a file to the public container. The type of file doesn’t matter. A small image or text file is a good choice

&lt;ul&gt;
&lt;li&gt;Ensure you are viewing your container.&lt;/li&gt;
&lt;li&gt;Select Upload.&lt;/li&gt;
&lt;li&gt;Browse to files and select a file. Browse to a file of your choice.&lt;/li&gt;
&lt;li&gt;Select Upload.&lt;/li&gt;
&lt;li&gt;Close the upload window, Refresh the page and ensure your file was uploaded. 
&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%2Fdegji7mearam4zlandxy.png" alt="upload" width="800" height="454"&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%2Fpcrf2co7bgudd35n9z9l.png" alt="browse photo" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Determine the URL for your uploaded file. Open a browser and test the URL

&lt;ul&gt;
&lt;li&gt;Select your uploaded file.&lt;/li&gt;
&lt;li&gt;On the Overview tab, copy the URL.&lt;/li&gt;
&lt;li&gt;Paste the URL into a new browser tab.&lt;/li&gt;
&lt;li&gt;If you have uploaded an image file it will display in the browser. Other file types should be downloaded. 
&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%2F5rrpw9dqjh8bgk1veexe.png" alt="cool trick" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&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%2Fxkxa36jm0je21oakaigc.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%2Fxkxa36jm0je21oakaigc.png" alt="Image my image" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4. Configure soft delete
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;It’s important that the website documents can be restored if they’re deleted. Configure blob soft delete for 21 days.

&lt;ul&gt;
&lt;li&gt;Go to the Overview blade of the storage account.&lt;/li&gt;
&lt;li&gt;On the Properties page, locate the Blob service section.&lt;/li&gt;
&lt;li&gt;Select the Blob soft delete setting.&lt;/li&gt;
&lt;li&gt;Ensure the Enable soft delete for blobs is checked.&lt;/li&gt;
&lt;li&gt;Change the Keep deleted blobs for (in days setting is 21).&lt;/li&gt;
&lt;li&gt;Notice you can also Enable soft delete for containers.&lt;/li&gt;
&lt;li&gt;Don’t forget to Save your changes.
&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%2Fw5k2qrsyjtco8jkg0on7.png" alt="soft delption" width="800" height="454"&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%2Fp7y7cdodqsbx4mq2gs6g.png" alt="21 days " width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If something gets deleted, you need to practice using soft delete to restore the files

&lt;ul&gt;
&lt;li&gt;Navigate to your container where you uploaded a file.&lt;/li&gt;
&lt;li&gt;Select the file you uploaded and then select Delete.&lt;/li&gt;
&lt;li&gt;Select OK to confirm deleting the file.&lt;/li&gt;
&lt;li&gt;On the container Overview page, toggle the slider Show deleted blobs. This toggle is to the right of the search box.&lt;/li&gt;
&lt;li&gt;Select your deleted file, and use the ellipses on the far right, to Undelete the file.&lt;/li&gt;
&lt;li&gt;Refresh the container and confirm the file has been restored.
&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%2Folt8nmwlamnwz1z14rhv.png" alt="delete" width="800" height="454"&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%2Fvghmbmd6wis672h9h0d8.png" alt="undelete" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step 5. Configure blob versioning
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;It’s important to keep track of the different website product document versions.

&lt;ul&gt;
&lt;li&gt;Go to the Overview blade of the storage account.&lt;/li&gt;
&lt;li&gt;In the Properties section, locate the Blob service section.&lt;/li&gt;
&lt;li&gt;Select the Versioning setting.&lt;/li&gt;
&lt;li&gt;Ensure the Enable versioning for blobs checkbox is checked.&lt;/li&gt;
&lt;li&gt;Notice your options to keep all versions or delete versions after.&lt;/li&gt;
&lt;li&gt;Don’t forget to Save your changes.
&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%2Fwnmj5d753yz205fg6hri.png" alt="blob check" width="800" height="454"&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%2Fh9hmkit0xu2tmd4l90te.png" alt="save change" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;As you have time experiment with restoring previous blob versions

&lt;ul&gt;
&lt;li&gt;Upload another version of your container file. This overwrites your existing file.&lt;/li&gt;
&lt;li&gt;Your previous file version is listed on Show deleted blobs page.&lt;/li&gt;
&lt;/ul&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%2Fnh8ftwkond9xe8fqozkr.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%2Fnh8ftwkond9xe8fqozkr.png" alt="updated" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;These are just simple steps on how we achieve the task of creating storage for the public website. Note that what makes any public storage public is enabling blob anonymous access.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Provide storage for the IT department testing and training</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Mon, 25 Nov 2024 10:43:08 +0000</pubDate>
      <link>https://dev.to/under2wenty/provide-storage-for-the-it-department-testing-and-training-fbj</link>
      <guid>https://dev.to/under2wenty/provide-storage-for-the-it-department-testing-and-training-fbj</guid>
      <description>&lt;h2&gt;
  
  
  What is Azure Storage
&lt;/h2&gt;

&lt;p&gt;Azure Storage is a cloud-based storage solution provided by Microsoft Azure that allows you to store and manage a range of data types in a highly scalable, secure, and durable way. From basic file storage to extensive, distributed data storage, it provides a variety of services and storage choices for various use cases. Azure Storage is built for high availability and performance, and it can handle both organized and unstructured data.&lt;/p&gt;

&lt;p&gt;Key services offered by Azure Storage include the following:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. &lt;strong&gt;Azure Blob Storage&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Purpose&lt;/strong&gt;: Used to store enormous volumes of unstructured data, including backups, text, photos, and videos.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Types&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Block blobs&lt;/strong&gt;: are the best option for storing huge items, such as backups, films, or pictures.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Append blobs&lt;/strong&gt;: Perfect for logging, optimized for append operations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page blobs&lt;/strong&gt;: are utilized for sporadic read/write access, including Virtual hard drive (VHD) files for virtual machines, which are used for random read/write access.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;Use Cases&lt;/strong&gt;: Backup, disaster recovery, media storage, data lakes, and serving static website content.&lt;/li&gt;

&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. &lt;strong&gt;Azure File Storage&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Purpose&lt;/strong&gt;: offers cloud file shares that are completely managed and reachable through the SMB (Server Message Block) protocol.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Use Cases&lt;/strong&gt;: apps that use file sharing, general-purpose file storage, and shared storage for Linux and Windows virtual machines.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. &lt;strong&gt;Azure Queue Storage&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Purpose&lt;/strong&gt;:  Used to store and manage queues of messages, allowing asynchronous communication between components of distributed applications.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Use Cases&lt;/strong&gt;: Task scheduling, background processing, scalable and robust system construction, and decoupling application components.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. &lt;strong&gt;Storage for Azure Tables&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Purpose&lt;/strong&gt;: You can store a lot of structured, non-relational data in this NoSQL key-value store.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Use Cases&lt;/strong&gt;: storing logs, application data, or metadata in situations where scalability and flexibility are required but conventional relational databases are superfluous.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. &lt;strong&gt;Azure Disk Storage&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Purpose&lt;/strong&gt;: Offers Azure Virtual Machines (VMs) block-level storage that is durable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Types&lt;/strong&gt;: Managed disks (Standard HDD, Standard SSD, Premium SSD).&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Use Cases&lt;/strong&gt;: Used to store operating system disks, data disks, or application data in Azure VMs.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  6. &lt;strong&gt;Azure Archive Storage&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Purpose&lt;/strong&gt;: Long-term, inexpensive storage for data that must be kept for compliance or regulatory purposes but is rarely accessed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use Case&lt;/strong&gt;: Archival data, backups, compliance data, and other cold storage scenarios&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Key Features of Azure Storage:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scalability&lt;/strong&gt;: Capable of handling data quantities ranging from small data size to petabytes or larger.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Durability&lt;/strong&gt;: High durability and availability are ensured by providing redundancy alternatives such as geo-replication (e.g., GRS).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security&lt;/strong&gt;: Data encryption at rest and in transit, integration with Azure Active Directory (AAD) for access control, and role-based access control (RBAC).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Performance&lt;/strong&gt;: Offers different performance tiers (e.g., standard vs. premium) based on workload requirements.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Access&lt;/strong&gt;: Various methods of accessing data, such as Azure Portal, Azure CLI, Azure PowerShell, REST APIs, and SDKs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Applications that need long-lasting and highly available data storage, like web apps, backup systems, and big data analytics, are best suited for Azure Storage.&lt;/p&gt;

&lt;h2&gt;
  
  
  Here are the steps to accomplish the task of providing a storage account for IT department testing and training:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Step 1.&lt;/strong&gt; Create a resource group and a storage account.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;i.&lt;/strong&gt; Create and deploy a resource group to hold all your project resources.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the Azure portal, search for and select Resource groups
&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%2Fykxl2jtjjwsz0xn5ps2b.png" alt="Search for resource group" width="800" height="207"&gt;
&lt;/li&gt;
&lt;li&gt;Select + 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%2Fyrjs0tbrv93m661jjd3n.png" alt="plus create" width="800" height="166"&gt;

&lt;ul&gt;
&lt;li&gt;Give your resource group a name. For example, storagerg
&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%2Fpwqafcpcksnc4wmuo452.png" alt="resource group name" width="800" height="408"&gt;
&lt;/li&gt;
&lt;li&gt;Select a region. Use this region throughout the project.
&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%2F438ap120ypaf1uz8ou73.png" alt="region" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select Review and create to validate the resource group.
&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%2F9wa33q50fn0y239zykc5.png" alt="validation" width="800" height="454"&gt;  - &lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Select Create to deploy the resource group.
&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%2Ft0biy1ku74wen54fwjyk.png" alt="deploy resource group" width="800" height="454"&gt;
&lt;strong&gt;ii.&lt;/strong&gt; Create and deploy a storage account to support testing and training.&lt;/li&gt;

&lt;li&gt;In the Azure portal, search for and select Storage accounts
&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%2Fgzc40zhl6eiijvxf3b26.png" alt="search for storage account" width="800" height="309"&gt;
&lt;/li&gt;

&lt;li&gt;Select + 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%2Fupm57tt00vgfh83jg6gv.png" alt="plus create" width="800" height="454"&gt;
&lt;/li&gt;

&lt;li&gt;On the Basics tab, select your Resource group.
&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%2Fusbwhm6zvrkzedl5zjc1.png" alt="resource group" width="800" height="454"&gt;
&lt;/li&gt;

&lt;li&gt;Provide a Storage account name. The storage account name must be unique in Azure.
&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%2F1ueqr7gu1dec29aawsw3.png" alt="Storage name" width="800" height="355"&gt;
&lt;/li&gt;

&lt;li&gt;Set the Performance to Standard.
&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%2Fjexxy0lnwwwsnlv82rs6.png" alt="Image description" width="800" height="371"&gt;
&lt;/li&gt;

&lt;li&gt;Select Review, and then 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%2Fm2hou86q5yius0uplaje.png" alt="create" width="800" height="307"&gt;
&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Wait for the storage account to deploy and then Go to resource.&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%2Fz55590dpp4lxn0oygdeu.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%2Fz55590dpp4lxn0oygdeu.png" alt="resources" width="800" height="431"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;&lt;strong&gt;Step 2&lt;/strong&gt; Configure simple settings in the storage account.&lt;/p&gt;&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;i.&lt;/strong&gt; The data in this storage account doesn’t require high availability or durability. A lowest cost storage solution is desired.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In your storage account, in the Data management section, select the Redundancy blade.
&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%2F0p665qivje68ifahhlm0.png" alt="select redundacy" width="800" height="405"&gt;
&lt;/li&gt;
&lt;li&gt;Select Locally-redundant storage (LRS) in the Redundancy drop-down.
&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%2Fl4bx3w86y1eoi3mp2bfd.png" alt="LRS" width="800" height="328"&gt;
&lt;/li&gt;
&lt;li&gt;Be sure to Save your changes.
&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%2Fabz3si2nabppr8umo0uz.png" alt="save changes" width="800" height="328"&gt;
&lt;/li&gt;
&lt;li&gt;Refresh the page and notice the content only exists in the primary location.
&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%2F8ehx9yrpuciodylb4lwm.png" alt="primary location" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;ii.&lt;/strong&gt; The storage account should only accept requests from secure connections.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the Settings section, select the Configuration blade.
&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%2Fmt6qa1tomj5d6b03onwn.png" alt="settings configuration" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Ensure Secure transfer required is Enabled.
&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%2F0t9mjybeh1gfhw8y0o9p.png" alt="enable secure transfer" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;iii.&lt;/strong&gt; Developers would like the storage account to use at least TLS version 1.2.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the Settings section, select the Configuration blade.
&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%2Fmt6qa1tomj5d6b03onwn.png" alt="settings configuration" width="800" height="454"&gt;

&lt;ul&gt;
&lt;li&gt;Ensure the Minimal TLS version is set to Version 1.2.
&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%2Fnbi81ak4a8uyzhh2ti33.png" alt="Minimal TLS version" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;iv.&lt;/strong&gt; Until the storage is needed again, disable requests to the storage account&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the Settings section, select the Configuration blade.
&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%2Fmt6qa1tomj5d6b03onwn.png" alt="settings configuration" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Ensure Allow storage account key access is Disabled.
&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%2Fxexxjfvu1qnb27eggukw.png" alt="storage key disabled" width="800" height="454"&gt; &lt;/li&gt;
&lt;li&gt;Be sure to Save your changes.
&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%2Flhjkp1172t1q9moves1n.png" alt="save changes" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;v.&lt;/strong&gt; Ensure the storage account allows public access from all networks&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the Security + networking section, select the Networking blade.
&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%2Fo254n6iwnx5h49qa75jj.png" alt="Networking blade" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Ensure Public network access is set to Enabled from all networks.
&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%2F2ccr1lb4cg452yghcx2p.png" alt="enable public network acess" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Be sure to Save your changes.
&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%2Foetimb200yse8yizsicm.png" alt="save changes" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>beginners</category>
      <category>tutorial</category>
      <category>azure</category>
      <category>learning</category>
    </item>
    <item>
      <title>Connecting to an EC2 Instance with Ubuntu and Installing NGINX on AWS</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Sat, 23 Nov 2024 07:22:28 +0000</pubDate>
      <link>https://dev.to/under2wenty/connecting-to-an-ec2-instance-with-ubuntu-and-installing-nginx-on-aws-2jni</link>
      <guid>https://dev.to/under2wenty/connecting-to-an-ec2-instance-with-ubuntu-and-installing-nginx-on-aws-2jni</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;EC2 (Elastic Compute Cloud):&lt;/strong&gt; A scalable virtual server in AWS used to run applications and workloads.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ubuntu:&lt;/strong&gt; A popular, open-source Linux operating system&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AWS (Amazon Web Services):&lt;/strong&gt; A cloud platform providing computing, storage, and networking services.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;NGINX:&lt;/strong&gt; is a reverse proxy and web server that is dependable and quick. It serves as a mediator between users and backend systems, distributes traffic among servers, and delivers web pages.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Creating EC2
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;to Create an EC2 instance from AWS console search for EC2 on the search bar. 
&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%2F2zwwam91kiock1flk6yw.png" alt="ec2" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Launch instance 
&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%2F3xew3h7vrm8g3unrk1hb.png" alt="Instance" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;name your server and click on ubuntu 
&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%2F36iuxdofogr8ud6oyxoh.png" alt="ubuntu" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;configure the Amazon Machine Image, size and type, in my case, im leaving at default 
&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%2F6dunsmsoppomz7v21obl.png" alt="default " width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select/create a new pair key&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%2Ffmm43312tdahjzrxmxv3.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%2Ffmm43312tdahjzrxmxv3.png" alt="blessing" width="800" height="454"&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%2Fwaftrzv8k68a9s17a5mq.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%2Fwaftrzv8k68a9s17a5mq.png" alt="pin" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;allow http to have access to web 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%2Fhx6ugrqtfv5lk35030fo.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%2Fhx6ugrqtfv5lk35030fo.png" alt="httpn" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;cross-check your settings and launch instance &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%2Frfofwe78fut3xnn41gjy.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%2Frfofwe78fut3xnn41gjy.png" alt="cross check" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;upon completion click on view all instances
&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%2F0sta01msdmwczwg7i072.png" alt="instances" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Connect to EC2 Instance
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;right click on the server created and connect&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%2Fanql0bjd6z057ov14bql.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%2Fanql0bjd6z057ov14bql.png" alt="connect 123" width="800" height="454"&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%2Fxixuv0pd8hyp7zzqb8db.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%2Fxixuv0pd8hyp7zzqb8db.png" alt="asake" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Install NGINX
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A terminal will pop out. we update to the latest package by typing &lt;strong&gt;&lt;em&gt;sudo apt-get update&lt;/em&gt;&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%2Fjqr2h2ktzaz38pfgukj7.png" alt="get update" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Install Nginx from Ubuntu repository by typing &lt;strong&gt;&lt;em&gt;sudo apt-get install nginx&lt;/em&gt;&lt;/strong&gt; and press y when prompted 
&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%2Fvro8cvw6f47qj3kj2uav.png" alt="press y" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;to check the version of nginx installed, type in &lt;strong&gt;&lt;em&gt;nginx -v&lt;/em&gt;&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%2Fk7areamqub2hcuaoizpa.png" alt="boluwatife" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;we can check the status of the nginx by typing &lt;strong&gt;&lt;em&gt;sudo systemctl status nginx&lt;/em&gt;&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%2Ftms4nyfsngjbbow6pxqx.png" alt="sudo systemctl" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Select the created server and copy the public ip
&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%2Fq3ewbm5qg8pkxqqipqwa.png" alt="craete server" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;paste the copied public ip address in a 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%2Fgzvarymhdmfypsdicdy5.png" alt="downloaded" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Setting up an EC2 instance with Ubuntu and installing NGINX on AWS enables you to create a scalable, high-performance web server. This process equips you to host and serve web content efficiently while making full use of AWS cloud resources.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>nginx</category>
      <category>ec2</category>
      <category>aws</category>
    </item>
    <item>
      <title>Building the Foundation: How to Connect to a Windows Virtual Machine and install Windows Server</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Fri, 22 Nov 2024 23:06:31 +0000</pubDate>
      <link>https://dev.to/under2wenty/building-the-foundation-how-to-connect-to-a-windows-virtual-machine-and-install-windows-server-3f8b</link>
      <guid>https://dev.to/under2wenty/building-the-foundation-how-to-connect-to-a-windows-virtual-machine-and-install-windows-server-3f8b</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Windows Server&lt;/strong&gt; is a Microsoft operating system specifically made for servers, it provides centralized administration, security, scalability, and support for functions like file sharing, web hosting, and virtualization. It’s essential for powering IT infrastructures in businesses and data centers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create a Windows Virtual Machine&lt;/strong&gt;&lt;br&gt;
The first step is to create a windows virtual machine on azure.&lt;br&gt;
&lt;a href="https://dev.to/under2wenty/step-into-the-cloud-how-to-create-a-windows-11-virtual-machine-on-azure-3lal"&gt;https://dev.to/under2wenty/step-into-the-cloud-how-to-create-a-windows-11-virtual-machine-on-azure-3lal&lt;/a&gt;. ( choose windows server instead of Windows 11)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;wait for the virtual machine to complete deployment 
&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%2Fwh8ewr8gput3h9jmm55p.png" alt="deploy" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Go to resources 
&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%2F7qw0e6bta3pahtyq15ct.png" alt="resources" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Connect to Windows Virtual Machine&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;click on the connect icon 
&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%2F752ld54kujsaxyt6fh4b.png" alt="connect" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;from the local machine select native RDP 
&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%2Ffatlvewvyixfirx1yt8y.png" alt="RDP" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Wait for the configuration to be complete, then download the RDP file
&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%2Fyhi41k9fnfmuqpz3zc46.png" alt="download" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Install the downloaded file 
&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%2Fn9bzza9mbtz2btza1mry.png" alt="file" width="800" height="505"&gt;
&lt;/li&gt;
&lt;li&gt;click on connect and follow the prompts 
&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%2Fldq1a126yj2uukrlmrq4.png" alt="connect" width="800" height="524"&gt;
&lt;/li&gt;
&lt;li&gt;input the password used in creating the virtual machine 
&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%2F9fv1cxjly9c4dswe93fx.png" alt="password" width="800" height="524"&gt; &lt;/li&gt;
&lt;li&gt;wait for the windows machine 
&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%2F3xoikw5qsz84k4k0l3jm.png" alt="machine" width="800" height="485"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Install Windows Server
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;In the search bar, Search and run window 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%2Fm9ul27ywgmrpn3ieve83.png" alt="powershell" width="800" height="524"&gt;
&lt;/li&gt;
&lt;li&gt;On the PowerShell Interface enter the Following Command to install Windows Server: 
&lt;strong&gt;&lt;em&gt;Install-WindowsFeature -name Web-Server -IncludeManagementTools&lt;/em&gt;&lt;/strong&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%2Fg6y9k1hpyropsm3yhs2w.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%2Fg6y9k1hpyropsm3yhs2w.png" alt="name web" width="800" height="524"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Finally you have successfully connect a Virtual Machine and Install Windows Server.&lt;/p&gt;

&lt;h2&gt;
  
  
  Verify Installation
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;You can verify that IIS has been installed just by pasting the ip address of the VM in a 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%2Fgcr526r1q3zq4qhioz4m.png" alt="installation" width="800" height="505"&gt;
&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;To create a scalable, safe, and effective IT environment, you must install a Windows virtual machine with Windows Server. Through this procedure, you may build an adaptable infrastructure for hosting services and apps, which will help you maximize resources and improve system performance. Now that you have the framework in place, you can investigate the many options Windows Server provides for handling your workloads and apps.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>azure</category>
      <category>devops</category>
      <category>learning</category>
    </item>
    <item>
      <title>From Scratch to Server: Deploying a Linux Virtual Machine with Nginx on Azure</title>
      <dc:creator>Precious Oladele</dc:creator>
      <pubDate>Fri, 22 Nov 2024 18:06:02 +0000</pubDate>
      <link>https://dev.to/under2wenty/from-scratch-to-server-deploying-a-linux-virtual-machine-with-nginx-on-azure-4b58</link>
      <guid>https://dev.to/under2wenty/from-scratch-to-server-deploying-a-linux-virtual-machine-with-nginx-on-azure-4b58</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;A &lt;strong&gt;virtual machine&lt;/strong&gt; is like a computer inside a computer. It is a computer that is based on software and has its own operating system and applications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NGINX&lt;/strong&gt; is a reverse proxy and web server that is dependable and quick. It serves as a mediator between users and backend systems, distributes traffic among servers, and delivers web pages. It is frequently used to power websites and applications since it is efficient and versatile.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Getting Started:&lt;/strong&gt; log in to your Azure account. and In the "Search resources, services and docs" field, type “virtual machines”. From the list of search results, click on the “Virtual machine” option. &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%2Fh3udoxbk4gdtlqbf30y4.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%2Fh3udoxbk4gdtlqbf30y4.png" alt="virtual machin" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click the “Create” button to start the virtual machine creation process 
&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%2Fyjt3xj9ra2tkesr976in.png" alt="create" width="800" height="243"&gt;
&lt;/li&gt;
&lt;li&gt;Select the appropriate subscription and create a resource group by clicking the create resource group button and giving it a 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%2Fty42j3ywryo5reb1ssuk.png" alt="ant" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Enter the VM details, including its name, operating system, size, and configuration 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%2Fb4eoovd24fj4r3jgkfaq.png" alt="details" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Create an Administrator Account. We need a username and a password in case we need to connect to the Virtual Machine. 
&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%2F1y1mtj86yulchff4dseu.png" alt="paaword" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Locate the "Inbound ports" section. Ensure the checkbox for "HTTP (80)" is selected. This allows external communication with your web server. 
&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%2Fkqxqohc8gd3zfv9b20il.png" alt="inbound" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Click “Next” till we get to boot diagnostics in the Monitoring tab, and click on “disable”. 
&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%2F3ye7s4ir17ix5vfh3j09.png" alt="disable" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;click on the tag tab, this is to identify the billing accounts 
&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%2Fajvb06ssp4zkml3hm8cs.png" alt="tag" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Carefully review all your configuration choices. Once satisfied, click "Review + create" followed by "Create" to initiate the VM deployment process. The portal will display the deployment progress. 
&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%2F2as8jqogrjbeueudfxwx.png" alt="create" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;wait for deployment to complete. it might take a while 
&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%2Fcyhtkc6pprxktc9dk52q.png" alt="deploymwnr" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Once deployment is complete, navigate to your VM resource and click "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%2Fhclzsdn3aypuele4ls03.png" alt="resource" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;first thing to do here is to click on the public Ip address
&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%2Fl1i7hnk64u54zo4c6ref.png" alt="Ip add" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Move the slider to the maximum, this is to increase the timeout and click on save when done. 
&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%2Fzx6dklg3dzuvse9nouwh.png" alt="timer" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;Open a command-line interface (CLI) tool like Windows PowerShell or ubuntu terminal. Use the following SSH command, replacing the bracketed placeholders with your actual credentials:
ssh [username]@[public_ip_address] &lt;/li&gt;
&lt;li&gt;When prompted, confirm that you want to connect by typing "yes" and press Enter. &lt;/li&gt;
&lt;li&gt;Enter in the password you created for the user and press enter &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%2Fgg3oeptprlu0nea44ixw.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%2Fgg3oeptprlu0nea44ixw.png" alt="instruction" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update and Install Nginx&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Switch to the root user with sudo su.&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%2F7xrv4y4w785lrvanry4a.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%2F7xrv4y4w785lrvanry4a.png" alt="sudo su" width="800" height="416"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Update your package lists with &lt;strong&gt;&lt;em&gt;apt update&lt;/em&gt;&lt;/strong&gt; and install Nginx using 
&lt;strong&gt;&lt;em&gt;apt install nginx&lt;/em&gt;&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%2Fppg074vufqhy5ok93ww3.png" alt="update" width="800" height="416"&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%2Fnb7ditt1xqfaf7k4e85y.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%2Fnb7ditt1xqfaf7k4e85y.png" alt="doen" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open a web browser and enter the public IP address you obtained earlier. If Nginx is running correctly, you should see a default welcome page. 
&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%2Fgplsmp2s3wcaz83yxb2u.png" alt="lastly" width="800" height="505"&gt;
Congratulations! You have successfully created a Linux virtual machine on Microsoft Azure and installed the Nginx web server. This is a foundational step for hosting web applications or deploying other web services.&lt;/li&gt;
&lt;/ul&gt;

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