Skip to content

Commit f9b5dd8

Browse files
aburhanCopybara
authored andcommitted
fix: Remove internal name
Change-Id: I0426d093d7dd4c69d4beaba476a01d2613c62137 GitOrigin-RevId: fd04d82ed31cef86831970fe5af3a804998304e1
1 parent ecf9dfc commit f9b5dd8

File tree

3 files changed

+41
-32
lines changed

3 files changed

+41
-32
lines changed

projects/gemini-powered-migrations-to-google-cloud/.gemini/commands/aws-container-migration-analysis.toml

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,54 @@
1-
description = "Analyzes KubeScan inventory data to assess EKS workloads for migration to Google Kubernetes Engine (GKE)."
1+
description = "Analyzes Kubernetes clusters and objects inventory data to assess Amazon EKS workloads for migration to Google Kubernetes Engine (GKE)."
22

33
prompt = '''
4-
You are a Senior Cloud Migration Architect specializing in AWS to Google Cloud migrations. Your task is to analyze KubeScan assessment data (JSON and CSV files) and generate a strategic migration assessment for moving EKS workloads to GKE Autopilot.
5-
Review the EKS cluster inventory files provided in the folder defined by "{{args}}" and help identify stateless workloads suitable for a direct "lift-and-shift" versus stateful workloads requiring database migration.
4+
You are a Senior Cloud Migration Architect specializing in AWS to Google Cloud migrations. Your task is to analyze Kubernetes clusters and objects data (JSON and CSV files) and generate a strategic migration assessment for moving Amazon EKS workloads to GKE.
5+
Review the Amazon EKS cluster inventory files in the {{args}} directory, and help identify stateless workloads suitable for a direct "lift-and-shift" versus stateful workloads requiring data migration (e.g., from databases, persistent volumes, or object storage).
66
7-
## EKS Workload Assessment Rules
7+
## Amazon EKS Workload Assessment Rules
88
99
**1. Workload Type (The "State" of the Pod):**
1010
* **Stateless**: Workloads that do NOT use PersistentVolumeClaims (PVCs). These are "Lift and Shift" candidates.
1111
* **Stateful**: Workloads that mount PVCs (e.g., EBS volumes). These require complex migration (e.g., using StatefulSets or migrating data to Cloud Storage).
1212
1313
**2. Dependencies (External Data):**
14-
* **External Database**: Workloads connecting to RDS/ElastiCache. The *workload* remains Stateless, but the *database* requires a separate migration path (DMS).
14+
* **External Database**: Workloads connecting to Amazon RDS/ElastiCache. The *workload* remains Stateless, but the *database* requires a separate migration path (DMS).
1515
* **Self-Hosted Data**: Workloads hosting their own DB (StatefulSet + PVC).
1616
1717
**3. Network Strategy:**
1818
* Identify AWS annotations (e.g., `service.beta.kubernetes.io/aws-load-balancer`) that need refactoring to GKE Ingress.
1919
2020
## Your Process
2121
22-
- Thoroughly examine files in the provided folder (`{{args}}`) that contains information about EKS workloads (specifically `workloads.csv`, `pods.csv`, `configmaps.csv`, `services.csv`, and `eks_data.json`).
23-
- If you think that some assessment data is missing, examine all the files in the provided folder to check if it contains that missing data.
24-
- List all analyzed workloads in the EKS Cluster Analysis Summary and use emojis as complexity indicators (🟢 Simple/Stateless, 🟡 Moderate/Config Changes, 🔴 Complex/Stateful).
22+
- Thoroughly examine files in the provided folder (`{{args}}`) that contains information about Amazon EKS workloads (specifically `workloads.csv`, `pods.csv`, `configmaps.csv`, `services.csv`, and `eks_data.json`).
23+
- If you think that some assessment data is missing, warn the customer that the data is incomplete and describe what is missing and the impact that will have on the output.
24+
- List all analyzed workloads in the Amazon EKS Cluster Analysis Summary and use emojis as complexity indicators (🟢 Simple/Stateless, 🟡 Moderate/Config Changes, 🔴 Complex/Stateful).
2525
2626
### 2. Analysis & Reasoning
2727
2828
Document your findings by explaining:
2929
3030
- What you discovered from files inspection
3131
- Which workloads are strictly stateless vs. stateful.
32-
- Specific AWS dependencies found (e.g., "Found RDS endpoint in ConfigMap 'backend-config'").
32+
- Specific AWS dependencies found (e.g., "Found Amazon RDS endpoint in ConfigMap 'backend-config'").
3333
- Networking changes required (e.g., "Service 'frontend' uses Classic ELB annotations").
3434
3535
### 3. Plan Creation
3636
3737
## Output Format for `eks-migration-assessments/[plan_name].md`
3838
39-
**Note: Please strictly follow Markdown format for the entire output.**
40-
4139
You **MUST** format the contents of `eks-migration-assessments/[plan_name].md` exactly as follows:
4240
4341
- Use markdown.
4442
- The plan name should be short and descriptive, also make sure it can be used as a filename.
4543
44+
Output Example:
45+
4646
```markdown
47-
# EKS Migration Assessment: [plan_name]
47+
# Amazon EKS Migration Assessment: [plan_name]
4848
49-
## Current date and time
49+
[Current date and time]
5050
51-
## EKS Cluster Analysis Summary:
51+
## Amazon EKS Cluster Analysis Summary:
5252
5353
Table with columns:
5454
@@ -58,11 +58,11 @@ Workload Name │ Namespace │ Type (Stateless/Stateful) │ External Dependenc
5858
5959
**Infrastructure Provisioning:**
6060
* Recommended GKE Cluster Mode (Autopilot/Standard) based on node analysis.
61-
* Recommended Cloud SQL sizing based on detected RDS connections.
61+
* Recommended Cloud SQL sizing based on detected Amazon RDS connections.
6262
6363
**Workload Strategy:**
6464
* **Stateless Workloads (Lift & Shift)**: List workloads ready for immediate redeployment.
65-
* **Data Migration (External Dependencies)**: Identify workloads dependent on RDS and define the DMS strategy.
65+
* **Data Migration (External Dependencies)**: Identify workloads dependent on Amazon RDS and define the DMS strategy.
6666
* **Stateful Workloads (Refactoring Required)**: Identify workloads using PVCs that require storage migration.
6767
6868
**Missing Data / Assumptions:**

projects/gemini-powered-migrations-to-google-cloud/README.md

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,23 @@ The following custom commands are configured in this project under
2727
The custom commands in this section are aimed at helping you accelerate the
2828
evaluation.
2929

30-
- **aws-container-migration-analysis:** This command analyzes KubeScan inventory
31-
files to categorize Amazon EKS workloads and generate a Google Kubernetes
32-
Engine (GKE) migration plan. To run this command, you must first generate
33-
kubescan output files
34-
[Kubescan](https://github.com/GoogleCloudPlatform/professional-services/blob/main/tools/k8s-discovery/README.md).
30+
- **aws-container-migration-analysis:** This command analyzes cluster and object
31+
inventory files from Amazon EKS workloads to generate a Google Kubernetes
32+
Engine (GKE) migration plan. The command expects a path to the directory
33+
containing the inventory output files. You must first generate these files
34+
using the
35+
[Kubernetes Cluster Discovery Tool](https://github.com/GoogleCloudPlatform/professional-services/blob/main/tools/k8s-discovery/README.md).
36+
37+
**Usage:**
38+
39+
```sh
40+
/aws-container-migration-analysis [PATH/TO/KUBERNETES_INVENTORY/DIRECTORY]
41+
```
42+
43+
**Usage (Try with Sample Data):**
3544

3645
```sh
37-
/aws-container-migration-analysis review files in test-data/aws-container-migration-analysis
46+
/aws-container-migration-analysis test-data/aws-container-migration-analysis
3847
```
3948

4049
- **/aws-lambda-to-cloud-run-poc-selection:** This command assists in reviewing
@@ -128,8 +137,8 @@ outputs and are used by the custom Gemini CLI commands to demonstrate the
128137
migration selection process without requiring actual cloud environments. This
129138
data includes:
130139

131-
- **`aws-container-migration-analysis/`**: Contains mock KubeScan inventory
132-
files for Amazon EKS workloads.
140+
- **`aws-container-migration-analysis/`**: Contains mock Kubernetes clusters and
141+
objects inventory files for Amazon EKS workloads.
133142
- **`aws-lambda-assessment-results/`**: Contains mock data for AWS Lambda
134143
functions.
135144
- **`aws-s3-assessment-results/`**: Contains mock data for S3 bucket locations,

projects/gemini-powered-migrations-to-google-cloud/test-data/sample-selection/aws-container-migration-analysis.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
1-
# AWS EKS Migration Assessment
1+
# Amazon EKS Migration Assessment
22

3-
## EKS Cluster Analysis Summary
3+
## Amazon EKS Cluster Analysis Summary
44

55
| Workload Name | Namespace | Type (Stateless/Stateful) | External Dependencies (DB/Cache) | Complexity | Migration Action |
66
| ------------------ | --------- | ------------------------- | -------------------------------- | ----------- | --------------------------------- |
7-
| balancereader | default | Stateless | PostgreSQL (Assumed RDS) | 🟡 Moderate | Lift & Shift, Reconfigure DB |
7+
| balancereader | default | Stateless | PostgreSQL (Assumed Amazon RDS) | 🟡 Moderate | Lift & Shift, Reconfigure DB |
88
| contacts | default | Stateless | Not specified | 🟢 Simple | Lift & Shift |
99
| frontend | default | Stateless | Not specified | 🟡 Moderate | Lift & Shift, Reconfigure Ingress |
10-
| ledgerwriter | default | Stateless | PostgreSQL (Assumed RDS) | 🟡 Moderate | Lift & Shift, Reconfigure DB |
10+
| ledgerwriter | default | Stateless | PostgreSQL (Assumed Amazon RDS) | 🟡 Moderate | Lift & Shift, Reconfigure DB |
1111
| loadgenerator | default | Stateless | Not specified | 🟢 Simple | Lift & Shift |
12-
| transactionhistory | default | Stateless | PostgreSQL (Assumed RDS) | 🟡 Moderate | Lift & Shift, Reconfigure DB |
12+
| transactionhistory | default | Stateless | PostgreSQL (Assumed Amazon RDS) | 🟡 Moderate | Lift & Shift, Reconfigure DB |
1313
| userservice | default | Stateless | Not specified | 🟢 Simple | Lift & Shift |
1414

1515
## Recommendations for GKE Migration
1616

1717
**Infrastructure Provisioning:**
1818

1919
- **Recommended GKE Cluster Mode:** GKE Autopilot is highly recommended. The
20-
current EKS cluster has a single worker node, which indicates that the
20+
current Amazon EKS cluster has a single worker node, which indicates that the
2121
workloads are not resource-intensive. GKE Autopilot will provide a hands-off
2222
operational experience by managing the underlying nodes automatically.
2323
- **Recommended Cloud SQL sizing:** Based on the presence of PostgreSQL
2424
connection strings in the ConfigMaps, it is recommended to provision a Cloud
2525
SQL for PostgreSQL instance. The size should be determined after a performance
26-
baseline analysis of the source RDS instance. A good starting point would be a
27-
`db-n1-standard-2` instance.
26+
baseline analysis of the source Amazon RDS instance. A good starting point
27+
would be a `db-n1-standard-2` instance.
2828

2929
**Workload Strategy:**
3030

0 commit comments

Comments
 (0)