{"id":698,"date":"2019-03-11T12:18:12","date_gmt":"2019-03-11T17:18:12","guid":{"rendered":"http:\/\/www.sqlfreelancer.com\/blog\/?p=698"},"modified":"2019-03-11T12:18:12","modified_gmt":"2019-03-11T17:18:12","slug":"create-aws-windows-vm","status":"publish","type":"post","link":"https:\/\/www.sqlfreelancer.com\/blog\/create-aws-windows-vm\/","title":{"rendered":"Create AWS Windows VM"},"content":{"rendered":"\n<p>I wrote a post a few weeks about <a href=\"https:\/\/www.sqlfreelancer.com\/blog\/?p=624\">creating an Azure Windows VM<\/a> so wanted to follow up with a post about creating an AWS Windows VM to compare both platforms. I like Azure and AWS so I\u2019m not going to throw either one under the bus. Both are great and easy to use.<\/p>\n\n\n\n<p>Let\u2019s create an AWS (EC2) Windows VM.<\/p>\n\n\n\n<p>Log into the AWS portal and click on EC2 under All Services, Compute:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"591\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-1-1024x591.png\" alt=\"\" class=\"wp-image-699\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-1-1024x591.png 1024w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-1-300x173.png 300w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-1-768x443.png 768w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-1.png 1197w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption>AWS Management Console<\/figcaption><\/figure>\n\n\n\n<p>Next, click Launch Instance:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"724\" height=\"175\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-2.png\" alt=\"\" class=\"wp-image-700\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-2.png 724w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-2-300x73.png 300w\" sizes=\"auto, (max-width: 724px) 100vw, 724px\" \/><\/a><figcaption>AWS Create Instance<\/figcaption><\/figure>\n\n\n\n<p> Step 1 allows you to choose an Amazon Machine Image or AMI. There are tons of options here, but for this post, I\u2019m going to use Microsoft Windows Server 2019 Base <\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"57\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-3-1024x57.png\" alt=\"\" class=\"wp-image-701\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-3-1024x57.png 1024w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-3-300x17.png 300w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-3-768x43.png 768w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-3.png 1621w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption>Windows 2019 Base<\/figcaption><\/figure>\n\n\n\n<p>Once I click Select, I\u2019m brought to Step 2: Choose an Instance Type. Instance Types comprise varying combinations of CPU, memory, storage, and networking capacity and give you the flexibility to choose the appropriate mix of resources for your applications. Each instance type includes one or more instance sizes, allowing you to scale your resources to the requirements of your target workload. More info here: <a href=\"https:\/\/aws.amazon.com\/ec2\/instance-types\/\">https:\/\/aws.amazon.com\/ec2\/instance-types\/<\/a> <\/p>\n\n\n\n<p>For this post, and for cost sake, I\u2019m going to use the free tier t2.micro type which is 1 CPU, 1GB RAM <\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"928\" height=\"74\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-4.png\" alt=\"\" class=\"wp-image-702\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-4.png 928w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-4-300x24.png 300w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-4-768x61.png 768w\" sizes=\"auto, (max-width: 928px) 100vw, 928px\" \/><\/a><\/figure>\n\n\n\n<p>Once I\u2019ve selected my instance type I\u2019ll click\nNext:Configure Instance Details.<\/p>\n\n\n\n<p>Step 3: Configure Instance Details is where we\u2019ll\nconfigure our new server. Let\u2019s go down the list.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Number of Instances \u2013 This is the number of servers you want to create. If you need 5 of the same servers, this makes it easy.<\/li><li>Spot Instances &#8211; A Spot Instance is an unused EC2 instance that is available for less than the On-Demand price. Because Spot Instances enable you to request unused EC2 instances at steep discounts, you can lower your Amazon EC2 costs significantly. The hourly price for a Spot Instance is called a Spot price. The Spot price of each instance type in each Availability Zone is set by Amazon EC2, and adjusted gradually based on the long-term supply of and demand for Spot Instances. Your Spot Instance runs whenever capacity is available and the maximum price per hour for your request exceeds the Spot price.<\/li><li><\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-5.png\"><img loading=\"lazy\" decoding=\"async\" width=\"755\" height=\"331\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-5.png\" alt=\"\" class=\"wp-image-703\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-5.png 755w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-5-300x132.png 300w\" sizes=\"auto, (max-width: 755px) 100vw, 755px\" \/><\/a><figcaption>AWS Spot Instances<\/figcaption><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Network \u2013 The network you want the new server to join. You can create an Amazon Virtual Private Cloud (VPC) and select your own IP address range, subnets, gateways, etc. Learn more here: <a href=\"https:\/\/us-east-2.console.aws.amazon.com\/vpc\/home?region=us-east-2\">https:\/\/us-east-2.console.aws.amazon.com\/vpc\/home?region=us-east-2<\/a><\/li><li>Subnet: the range of IP addresses in your VPC that can be used to isolate different EC2 resources from each other or the internet.<\/li><li>Auto-assign Public IP \u2013 requests a public IP address from Amazon\u2019s public IP address pool, to make the server reachable from the internet.<\/li><li>Placement Group: You can launch or start instances in a <em>placement group<\/em>, which determines how instances are placed on underlying hardware. When you create a placement group, you specify one of the following strategies for the group: <ul><li><em>Cluster<\/em> \u2013 clusters instances into a low-latency group in a single Availability Zone <\/li><li><em>Partition<\/em> \u2013 spreads instances across logical partitions, ensuring that instances in one partition do not share underlying hardware with instances in other partitions <\/li><li><em>Spread<\/em> \u2013 spreads instances across underlying hardware <\/li><li>There is no charge for creating a placement group. Learn more: https:\/\/docs.aws.amazon.com\/AWSEC2\/latest\/UserGuide\/placement-groups.html<\/li><\/ul><\/li><li>Capacity Reservations &#8211; enables you to\nreserve capacity for your Amazon EC2 instances in a specific Availability Zone\nfor any duration. This gives you the ability to create and manage capacity\nreservations independently from the billing discounts offered by Reserved\nInstances (RI). By creating Capacity Reservations, you ensure that you always\nhave access to EC2 capacity when you need it, for as long as you need it. <\/li><li>Domain join directory \u2013 enables you to join\na domain that you\u2019ve already created.<\/li><li>IAM role \u2013 automatically deploys AWS credentials\nto resources that assume it.<\/li><li>Shutdown behavior \u2013 specifies what happens\nwhen an OS level shutdown is performed.<\/li><li>Enabled termination protection \u2013 You can\nprotect instances from being accidentally terminated. Once enabled, you won\u2019t\nbe able to terminate the instance until this option has been disabled.<\/li><li>Monitoring \u2013 Monitor the instance with\nAmazon CloudWatch.<\/li><li>Tenancy \u2013 You can select to run your server\non a shared server or a dedicated server.<\/li><li>Elastic Graphics \u2013 Enables graphic\nacceleration.<\/li><\/ul>\n\n\n\n<p>For this post I\u2019ll use defaults and click Next.<\/p>\n\n\n\n<p>Step 4 is Add Storage.<\/p>\n\n\n\n<p>I\u2019m not going to go over each Storage option, but you can get more info here: https:\/\/docs.aws.amazon.com\/AWSEC2\/latest\/UserGuide\/Storage.html?icmpid=docs_ec2_console<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"155\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-6-1024x155.png\" alt=\"\" class=\"wp-image-704\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-6-1024x155.png 1024w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-6-300x45.png 300w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-6-768x116.png 768w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-6.png 1531w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption>AWS Storage<\/figcaption><\/figure>\n\n\n\n<p>Selecting default and clicking next.<\/p>\n\n\n\n<p>Step 5: Add Tags.<\/p>\n\n\n\n<p>Like Azure, A tag consists of a case-sensitive key-value\npair. For example, you could define a tag with key = Name and value =\nWebserver. A copy of a tag can be applied to volumes, instances or both. Tags\nwill be applied to all instances and volumes<\/p>\n\n\n\n<p>Click Next.<\/p>\n\n\n\n<p>Step 6 is Configure Security Group<\/p>\n\n\n\n<p>A security group is a set of firewall rules that control the traffic for your instance. On this page, you can add rules to allow specific traffic to reach your instance. For example, if you want to set up a web server and allow Internet traffic to reach your instance, add rules that allow unrestricted access to the HTTP and HTTPS ports. By default, the RDP port is added, but it allows all IP addresses to connect. Changing the Source column will allow you to filter what IP\u2019s are able to RDP into the server. For this post, I\u2019m going to change the Source column to allow \u201cMy IP\u201d <\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-7.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"169\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-7-1024x169.png\" alt=\"\" class=\"wp-image-705\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-7-1024x169.png 1024w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-7-300x49.png 300w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-7-768x127.png 768w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-7.png 1851w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption>AWS Security Groups<\/figcaption><\/figure>\n\n\n\n<p>Next\u2026and last page is a summary of the options selected. To finish configuring the instance, click Launch.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-8.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-8-1024x578.png\" alt=\"\" class=\"wp-image-706\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-8-1024x578.png 1024w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-8-300x169.png 300w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-8-768x434.png 768w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-8.png 1394w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption>AWS EC2 Summary<\/figcaption><\/figure>\n\n\n\n<p>After clicking launch, you will see a popup where you can create or use an existing key pair. A key pair consists of a public key that AWS stores, and a private key file that you store. Together, they allow you to connect to your instance securely. For Windows AMIs, the private key file is required to obtain the password used to log into your instance. For Linux AMIs, the private key file allows you to securely SSH into your instance.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-9.png\"><img loading=\"lazy\" decoding=\"async\" width=\"702\" height=\"513\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-9.png\" alt=\"\" class=\"wp-image-707\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-9.png 702w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-9-300x219.png 300w\" sizes=\"auto, (max-width: 702px) 100vw, 702px\" \/><\/a><\/figure>\n\n\n\n<p>Once the new VM is created, you can go back to the EC2 dashboard and click on Instances to see the new VM:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><a href=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-10.png\"><img loading=\"lazy\" decoding=\"async\" width=\"208\" height=\"575\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-10.png\" alt=\"\" class=\"wp-image-708\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-10.png 208w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-10-109x300.png 109w\" sizes=\"auto, (max-width: 208px) 100vw, 208px\" \/><\/a><figcaption>AWS EC2 Dashboard<\/figcaption><\/figure><\/div>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"118\" src=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-11-1024x118.png\" alt=\"\" class=\"wp-image-709\" srcset=\"https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-11-1024x118.png 1024w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-11-300x35.png 300w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-11-768x89.png 768w, https:\/\/www.sqlfreelancer.com\/blog\/wp-content\/uploads\/2019\/03\/AWS-11.png 1627w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I wrote a post a few weeks about creating an Azure Windows VM so wanted to follow up with a post about creating an AWS Windows VM to compare both platforms. I like Azure and AWS so I\u2019m not going to throw either one under the bus. Both are great and easy to use. Let\u2019s [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[129],"tags":[130],"class_list":["post-698","post","type-post","status-publish","format-standard","hentry","category-aws","tag-aws"],"_links":{"self":[{"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/posts\/698","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/comments?post=698"}],"version-history":[{"count":1,"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/posts\/698\/revisions"}],"predecessor-version":[{"id":710,"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/posts\/698\/revisions\/710"}],"wp:attachment":[{"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/media?parent=698"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/categories?post=698"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sqlfreelancer.com\/blog\/wp-json\/wp\/v2\/tags?post=698"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}