5 Turn-key RockRMS Hosting with AWS Shared by Ben Murphy, Harvest Bible Chapel Pittsburgh North 4 years ago General Beginner In under 30-50 minutes!Some technical knowledge helpful, but not required!This is the fastest way to get hosted on RockRMS which is based on the long technical version of this recipe: https://community.rockrms.com/recipes/96/free-tier-aws-hosting-for-rockrms.This hosting environment is best suited for smaller church production hosting, or demo/development purposes, but can easily scale once completed.Follow along with the video and steps below (we suggest playing the video in a second browser window). Note: AWS updates their Windows Server AMI images regularly. If anything goes wrong during your setup please contact me and I'll be sure to update them for you to complete the process. The latest Microsoft Windows Server 2022 English Full Base is now mapped; updated 2024-08. vRX-Presentation-Demo from Harvest Bible Chapel Pittsburgh North on Vimeo. Let's Get Started! Create an AWS account (https://aws.amazon.com)[ less than 3 minutes ]Click on the large orange "Create an AWS Account" button in the top-right corner of the page.Use an existing Amazon account or start with a fresh one for your church organization.We suggest starting with a clean new account and credit card. Need a video walkthrough on account creation? https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/ After your account is successfully created and you've logged in to AWS for the first time, select your region preference before proceeding.Complete Prerequisites:Create a key pair and download the PEM file[ 1 minute ]This encrypted key is for logging into the Windows Server Instance (virtual machine via Remote Desktop)Click on Services - search for "EC2"In the left-hand navigation click on the "Key Pair" link and "Create key pair" (used by AWS to decrypt and provide the initial administrator password in orderto log into the remote desktop). Save this .pem file for later, you will need it!Get your current PCs Public IP address[ 30 seconds ]Go to www.whatismyip.org or just google “what is my IP” and make note of your current IP, you’ll need to enter this into the details when running the first stack. Cloudformation ConsoleClick on Services - search for "cloudformation"Create the VPC (Virtual Windows Server Machine)[ Copy and paste this path to launch the VPC Stack ] https://rock-cft-bucket-share.s3.amazonaws.com/vpccft.yamlSets up a core VPC for any network/provisioning requirements - [ 1 min to run and complete ]Things you don't need to know nor likely do not care about...this stack creates: a VPC, security groups for the (DB, admin, smtp email, ALB, and web), subnet groups for the (DB, web). Create RDS database[ Copy and paste this path to launch the DB Stack ]https://rock-cft-bucket-share.s3.amazonaws.com/dbcft.yamlSets up a DB tier for RockRMS - [ 1 minute to run, 15 minutes of waiting for it to build ]Things you don’t need to know nor likely do not care about...this stack creates: an S3 Bucket for RockDB backups/snapshots, a DB Optional group for the RockDB that can be used for Rocket.Chat or Jitsi Meet later, name of the RockDB, master user and password for the RockDB, endpoint address and port for the RockDB. Create the Network Connections (Web Stack)[ Copy and paste this path to launch the Web Stack ]https://rock-cft-bucket-share.s3.amazonaws.com/webcft.yaml Important! For the initial Web Stack creation, keep "useSSLStackReference" value to false. Sets up a Web tier for RockRMS, Installs SSMS, IIS along with all of the necessary settings - [ 3 mins to run stack, additional windows server Powershell script to install SSMS and IIS takes another 15 mins, can run concurrently with DB stack to speed up entire setup ]Things you don’t need to know nor likely do not care about...this stack creates: a DNS of the Rock web host ALB (automatic Load Balancer), an Instance ID of the Rock web host, EIP of the Rock web host, downloads the current RockRMS installer zip file to VPC.Note: This stack also integrates the necessary setting changes for IIS to enable fast startup as outlined in Jim Michael's fantastic recipe here:https://community.rockrms.com/recipes/176/preload-rock-for-a-faster-start Create the SSL Certificate (SSL Stack optional, but highly recommended. Skip to Step 9 if not choosing to run the SSL stack.)[ Copy and paste this path to launch the SSL Stack ]https://rock-cft-bucket-share.s3.amazonaws.com/sslcft.yamlThis can be run at any point, even after Rock is installed. [ 1 min to run stack, additional 5-10 mins to validate SSL certificate and adjust domain DNS settings, can run concurrently with DB stack to speed up entire setup ] Note: If you choose to run this stack (after it is completed, you must then re-run the Web Stack to apply the rerouting of HTTP port 80 traffic to the now adjusted HTTPS secure port 443 traffic for your RockRMS install. Re-running the Web Stack at this point only takes 1 minute to change the routing settings. Search for "ACM" or "certificate" to begin the authentication process.Once you've validated your new certificate you may move on.Update the Web Stack with SSL(optional, but highly recommended; Requires an SSL Stack)[ 1 min to update previously run Web Stack ]Navigate back to your Cloudformation dashboard or click on Services and search for "cloudformation"Select your existing "Web Stack" and click the "Update" button in the top right. Select "Use the current template" and flip the "useSSLStackReference" value from false to true. Click next a few times until you get to the final page and finish with the "Update stack" button.Create the database Admin userThis manual step is only needed once and may be scripted in a future version of the Web Stack - SQL Script for db admin account setup… launch RockRMS install Start script [ 3 mins to login into the remote desktop and create the database user ] PAUSE! - The DB Stack must be completed before continuing further! Check the status in the Cloudformation dashboard first.Here's how to create the database Admin user: Open up SQL Server Management Studio by searching for "ssms" in the Start Menu Log into using your previous user/password Click "New Query" button Copy and Paste the following SQL script (enter a new secret password between the two single-quotes indicated by "enteryourpasswordhere" section before running)USE master;GOCREATE LOGIN [rockuser]WITH PASSWORD = N'enteryourpasswordhere',CHECK_POLICY = OFF,CHECK_EXPIRATION = OFF;GOGRANT ALTER ANY CONNECTION TO [rockuser] WITH GRANT OPTION;GRANT CREATE ANY DATABASE TO [rockuser] WITH GRANT OPTION;GRANT VIEW ANY DATABASE TO [rockuser] WITH GRANT OPTION;GRANT VIEW ANY DEFINITION TO [rockuser] WITH GRANT OPTION;GRANT VIEW SERVER STATE TO [rockuser] WITH GRANT OPTION; Click the "Execute" button once your new password has been entered Document your db admin account user/password as you’ll need this for the actual RockRMS installation process and for future use if connecting directly to the database with an external service such as Microsoft PowerBI. Close SSMS Run the RockRMS InstallationThe Web Stack scripts should have automatically opened Internet Explorer and directed the launch page to "localhost/Start.aspx" for you. This is a good indicator that the Web Stack has completed successfully and you may proceed with the installation of RockRMS. IMPORTANT! - You must have completed the db admin account creation step using the SQL script above ( in step 9 ) before starting the installation. Change your domain DNS settingsIf you did not already adjust your DNS settings in your Domain Registrar then you may do so at this point. Otherwise you will be able to get to your finalized RockRMS installation using the Public IP of the EC2/Virtual PC shown in the AWS console. Complete!! Post Install Processes (optional, but highly recommended)Take a clean install RDS (db) Snapshot and Backup/zip the inetpub folder - These 2 are critical for a successful backup and restore of RockRMS environment. With them you can restore or migrate your environment at any point.We outline this backup process here: (https://community.rockrms.com/recipes/96/free-tier-aws-hosting-for-rockrms#P4-1A)Upgrade to the most current version of RockRMS to get all of the most recent fixes and features for your church - Ensure that you've already created a manual RDS database snapshot and inetpub folder backup before upgrading as discussed above.Go-to General Settings - Rock Update to proceed. Install the next highest version, this will restart the RockRMS site. Be patient while all of the migrations occur upon its restart.PRO TIP! You don't need to be logged into your Remote Desktop VM for any updates (but you do in order to backup the inetpub folder) so you may as well stay logged in and launch the Task Manager to watch the CPU/Memory usage during the Rock Updates and site restarts to get a good understanding of when the migrations have completed.Once all of the updates have been applied and the site is backup and running make one final clean RDS database snapshot and inetpub folder backup before modifying your RockRMS site for your church’s needs!