Difference between revisions of "Deploy .NET to AWS"
From MgmtWiki
								
												
				 (→Solutions)  | 
				 (→Debugging)  | 
				||
| Line 16: | Line 16: | ||
** [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html#upload-server-certificate pushing the private key to an S3 bucket.]  | ** [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html#upload-server-certificate pushing the private key to an S3 bucket.]  | ||
===Debugging===  | ===Debugging===  | ||
| − | * It is possible to install and run AWS PowerShell tools to see what EC2 instances look like. (An instance is one server running the site.)  | + | * It is possible to install and run [https://aws.amazon.com/powershell/ AWS PowerShell tools] to see what EC2 instances look like. (An instance is one server running the site.)  | 
* It is also possible to look at EB, but that requires the local computer to enable Python and PIP.  | * It is also possible to look at EB, but that requires the local computer to enable Python and PIP.  | ||
* Windows Remote Desktop can be enabled to see what the EC2 instance really looks like. Clink [https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/connecting_to_windows_instance.html?icmpid=docs_ec2_console here for information on Connecting to Your Windows Instance].  | * Windows Remote Desktop can be enabled to see what the EC2 instance really looks like. Clink [https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/connecting_to_windows_instance.html?icmpid=docs_ec2_console here for information on Connecting to Your Windows Instance].  | ||
Revision as of 14:21, 12 May 2019
Full Title
Deploying a ASP.NET core website to Amazon Web Services
Context
- Bring up a secure web site deployment with a minimum of fuss.
 - At first the challenge is getting the Web Site working well.
 - The assumption here is that the design is not fully fleshed out as the User Experience needs to be functional before it can be fully evaluated.
 - Later the problem is to get the performance to be good while the deployment expands to multiple instances.
 
Problems
- The largest part of the problem is not getting the web site to run, but rather to ensure that it is secure using SSL certificates and HTTPS.
 
Solutions
- Elastic Compute Cloud (EC2) was selected as the resource for its ease of deployment and expansion to handle volume.
 - Elastic Beanstalk (EB) automates some of the deployment and expansion services for EC2. Creating and Deploying Elastic Beanstalk Applications in .NET Using AWS Toolkit for Visual Studio.
 - Terminating HTTPS on Amazon EC2 Instances Running .NET on single instances (not behind a load balancer.)
 
Debugging
- It is possible to install and run AWS PowerShell tools to see what EC2 instances look like. (An instance is one server running the site.)
 - It is also possible to look at EB, but that requires the local computer to enable Python and PIP.
 -  Windows Remote Desktop can be enabled to see what the EC2 instance really looks like. Clink here for information on Connecting to Your Windows Instance.
- You will need to have the RDP client installed on Windows, which is common, or on other operating systems, which is uncommon.
 - You need a key pair - using AWS PowerShell these are the instructions for the EC2Key pair cmdlet if you have not already created a pem file for this purpose. You can only retrieve the private key when you create the key pair, so be sure to save the key to a file.
 - You will need to open the port on EC2 for RDP inbound traffic Adding a Rule for Inbound RDP Traffic to a Windows Instance
 - One easy way to start the RDP client is to navigate to the EC2 console, select the instance to be view and click on the "Connect" button at the top. A RDP connection string will be downloaded that you can put in a convenient place, like your desktop.