From e39239ac1debf7a84c90006a1ae49c23da8d9691 Mon Sep 17 00:00:00 2001 From: Alex Garcia Date: Mon, 13 Apr 2026 20:37:31 -0600 Subject: [PATCH 1/2] fix: use t3.large for visualizer EC2 and update wait time estimate --- 10-databases/visualizer/LAB-VISUALIZER.md | 3 ++- 10-databases/visualizer/cloudformation.yaml | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/10-databases/visualizer/LAB-VISUALIZER.md b/10-databases/visualizer/LAB-VISUALIZER.md index 7c36822..302723a 100644 --- a/10-databases/visualizer/LAB-VISUALIZER.md +++ b/10-databases/visualizer/LAB-VISUALIZER.md @@ -90,7 +90,8 @@ In the AWS Console: #### Step 4: Wait for the stack to complete -The stack takes about 3-5 minutes to create. Watch the progress in +The stack takes about 5-10 minutes to create (Docker pulls MySQL and +builds the visualizer image on first launch). Watch the progress in the **Events** tab. When complete, click the **Outputs** tab to find: diff --git a/10-databases/visualizer/cloudformation.yaml b/10-databases/visualizer/cloudformation.yaml index 173b925..5259150 100644 --- a/10-databases/visualizer/cloudformation.yaml +++ b/10-databases/visualizer/cloudformation.yaml @@ -1,7 +1,7 @@ AWSTemplateFormatVersion: "2010-09-09" Description: > Lab 10 - Database Scalability Visualizer. - Launches a t3.medium EC2 instance with Docker and Docker Compose + Launches a t3.large EC2 instance with Docker and Docker Compose pre-installed. Clones the course repository, runs the MySQL primary-replica cluster and visualizer automatically. SSH and visualizer web access enabled. @@ -32,7 +32,7 @@ Resources: LabInstance: Type: AWS::EC2::Instance Properties: - InstanceType: t3.medium + InstanceType: t3.large ImageId: !Ref LatestAmiId KeyName: vockey SecurityGroupIds: From 9062d7838effd7ef03f3b4926873ddcf627800c5 Mon Sep 17 00:00:00 2001 From: Alex Garcia Date: Mon, 13 Apr 2026 20:56:01 -0600 Subject: [PATCH 2/2] fix: add Buildx install to visualizer CloudFormation UserData --- 10-databases/visualizer/cloudformation.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/10-databases/visualizer/cloudformation.yaml b/10-databases/visualizer/cloudformation.yaml index 5259150..544d4f8 100644 --- a/10-databases/visualizer/cloudformation.yaml +++ b/10-databases/visualizer/cloudformation.yaml @@ -61,6 +61,15 @@ Resources: -o /usr/local/lib/docker/cli-plugins/docker-compose chmod +x /usr/local/lib/docker/cli-plugins/docker-compose + # Install Docker Buildx plugin (required by Compose for build) + if [ "${ARCH}" = "x86_64" ]; then BUILDX_ARCH="amd64"; else BUILDX_ARCH="arm64"; fi + BUILDX_VERSION=$(curl -fsSL https://api.github.com/repos/docker/buildx/releases/latest \ + | grep '"tag_name"' | head -1 | cut -d'"' -f4) + curl -fsSL \ + "https://github.com/docker/buildx/releases/download/${BUILDX_VERSION}/buildx-${BUILDX_VERSION}.linux-${BUILDX_ARCH}" \ + -o /usr/local/lib/docker/cli-plugins/docker-buildx + chmod +x /usr/local/lib/docker/cli-plugins/docker-buildx + # Clone the repo and run the visualizer as ec2-user su - ec2-user -c ' git clone https://github.com/gamaware/system-design-course.git