Contribuisci a migliorare questa pagina
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Guida introduttiva al server MCP Amazon EKS
Questa guida illustra i passaggi per configurare e utilizzare il server MCP EKS con i tuoi assistenti di codice AI. Imparerai come configurare il tuo ambiente, connetterti al server e iniziare a gestire i cluster EKS attraverso interazioni in linguaggio naturale.
Nota
Amazon EKS MCP Server è in versione di anteprima per Amazon EKS ed è soggetto a modifiche.
Prerequisiti
Prima di iniziare, esegui le seguenti attività:
Configurazione
1. Verifica dei prerequisiti di
# Check that your Python version is 3.10 or higher python3 --version # Check uv installation uv --version # Verify CLI configuration aws configure list
2. Configura le autorizzazioni IAM
Per connettersi al server EKS MCP, il ruolo IAM deve avere le seguenti policy allegate: eks-mcp:InvokeMcp(autorizzazioni necessarie per l'inizializzazione e il recupero delle informazioni sugli strumenti disponibili), eks-mcp:CallReadOnlyTool(autorizzazioni richieste per l'utilizzo di strumenti di sola lettura) e (autorizzazioni richieste per l'utilizzo di strumenti di accesso completo eks-mcp:CallPrivilegedTool(scrittura)). Queste eks-mcp autorizzazioni sono incluse nelle politiche gestite di sola lettura e accesso completo fornite di seguito. AWS
-
Apri la console IAM
. -
Nel riquadro di navigazione a sinistra, scegli Utenti, Gruppi di utenti o Ruoli a seconda dell'identità a cui desideri allegare la politica, quindi del nome dell'utente, del gruppo o del ruolo specifico.
-
Scegli la scheda Autorizzazioni.
-
Scegli Allega politiche (o Aggiungi autorizzazioni se è la prima volta).
-
Nell'elenco delle politiche, cerca e seleziona la politica gestita che desideri allegare:
-
Operazioni di sola lettura: Amazon EKSMCPRead OnlyAccess
-
Scegli Allega politiche (o Avanti e poi Aggiungi autorizzazioni per confermare).
In questo modo viene allegata la politica e le autorizzazioni hanno effetto immediato. È possibile allegare più policy alla stessa identità e ognuna può contenere diverse autorizzazioni. Per ulteriori informazioni su queste politiche, consulta le politiche AWS gestite per Amazon Elastic Kubernetes Service.
3. Scegli un assistente AI
Scegli uno dei seguenti assistenti AI compatibili con MCP o uno strumento compatibile con MCP:
Passaggio 1: configura il tuo assistente AI
Scegli una delle seguenti opzioni per configurare il tuo assistente di codice AI. Il completamento di questo passaggio configura il tuo assistente di codice AI per utilizzare il proxy MCP AWS, necessario per l'accesso sicuro e autenticato al server MCP Amazon EKS. Ciò comporta l'aggiunta o la modifica del file di configurazione MCP (ad esempio, ~/.aws/amazonq/mcp.json per Amazon Q Developer CLI). Il proxy funge da bridge lato client, gestendo l'autenticazione AWS SigV4 utilizzando AWS le credenziali locali e abilitando l'individuazione dinamica degli strumenti per l'interazione con server MCP di backend AWS come EKS MCP Server. Per ulteriori informazioni, consulta MCP Proxy for repository. AWS
Opzione A: Amazon Q Developer CLI
La CLI Q Developer offre l'esperienza più integrata con il server MCP EKS.
1. Individua il file di configurazione MCP
-
macOS/Linux:
~/.aws/q/mcp.json -
Windows:
%USERPROFILE%\.aws\q\mcp.json
2. Aggiungi configurazione del server MCP
Create il file di configurazione se non esiste. Assicurati di sostituire il segnaposto region ({region}) con la regione desiderata.
Per Mac/Linux:
{ "mcpServers": { "eks-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "default", "--region", "{region}" ] } } }
Per Windows:
{ "mcpServers": { "eks-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "default", "--region", "{region}" ] } } }
Nota sulla sicurezza: --read-only può essere utilizzato per consentire solo operazioni di sola lettura sullo strumento.
3. Verifica la configurazione
Riavvia Q Developer CLI, quindi controlla gli strumenti disponibili:
q /tools
Opzione B: Kiro IDE
1. Apri le impostazioni di Kiro
-
Apri Kiro
-
Vai su Kiro → Impostazioni e cerca «MCP Config»
-
Oppure premi
Cmd+Shift+P,(Mac) oCtrl+Shift+P,(Windows/Linux) e cerca «MCP Config»
2. Aggiungi la configurazione del server MCP
-
Fai clic su «Open Workspace MCP Config» o «Open User MCP Config» per modificare direttamente il file di configurazione MCP.
Assicurati di sostituire il segnaposto region ({region}) con la regione desiderata.
Per Mac/Linux:
{ "mcpServers": { "eks-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "default", "--region", "{region}" ] } } }
Per Windows:
{ "mcpServers": { "eks-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "default", "--region", "{region}" ] } } }
Nota sulla sicurezza: --read-only può essere utilizzato per consentire solo operazioni di sola lettura sullo strumento.
Opzione C: Cursor IDE
Cursor fornisce il supporto MCP integrato con un'interfaccia di configurazione grafica.
1. Apri le impostazioni del cursore
-
Apri il cursore
-
Vai a Impostazioni → Impostazioni del cursore → Strumenti e MCP
-
Oppure premi
Cmd+Shift+P(Mac)/Ctrl+Shift+P(Windows) e cerca «MCP»
2. Aggiungi la configurazione del server MCP
-
Fai clic su «Nuovo server MCP»
Crea il file di configurazione se non esiste. Assicurati di sostituire il segnaposto region ({region}) con la regione desiderata.
Per Mac/Linux:
{ "mcpServers": { "eks-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "default", "--region", "{region}" ] } } }
Per Windows:
{ "mcpServers": { "eks-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "default", "--region", "{region}" ] } } }
Nota sulla sicurezza: --read-only può essere utilizzato per consentire solo operazioni di sola lettura sullo strumento.
3. Riavvia il cursore
Chiudi e riapri il cursore per rendere effettive le modifiche.
4. Verifica nella chat di Cursor
Apri il pannello della chat e prova a:
What EKS MCP tools are available?
Dovresti vedere un elenco di strumenti di gestione EKS disponibili.
Opzione D: Cline (VS Code Extension)
Cline è una popolare estensione VS Code che porta l'assistenza AI direttamente nel tuo editor.
1. Apri le impostazioni di Cline
-
Apri Cline
-
Premi
Cmd+Shift+P(Mac)/Ctrl+Shift+P(Windows) e cerca «MCP»
2. Aggiungi la configurazione del server MCP
-
Fai clic su «Aggiungi server»
-
Fai clic su «Apri configurazione utente»
Crea il file di configurazione se non esiste. Assicurati di sostituire il segnaposto region ({region}) con la regione desiderata.
Per Mac/Linux:
{ "mcpServers": { "eks-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "default", "--region", "{region}" ] } } }
Per Windows:
{ "mcpServers": { "eks-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "default", "--region", "{region}" ] } } }
Nota sulla sicurezza: --read-only può essere utilizzato per consentire solo operazioni di sola lettura sullo strumento.
2. Ricarica VS Code
PremiCmd+Shift+P/Ctrl+Shift+Pe seleziona «Developer: Reload Window»
3. Verifica la configurazione
Apri Cline e chiedi:
List the available MCP tools for EKS
Fase 2: (Facoltativo) Creare una politica di «scrittura»
Facoltativamente, puoi creare una policy IAM gestita dal cliente che fornisca l'accesso completo al server MCP Amazon EKS. Questa policy concede le autorizzazioni per utilizzare tutti gli strumenti nel server EKS MCP, inclusi gli strumenti privilegiati che possono comportare operazioni di scrittura e gli strumenti di sola lettura. Tieni presente che le autorizzazioni ad alto rischio (qualsiasi cosa con Delete* o una risorsa IAM senza restrizioni) sono incluse in questa policy, in quanto sono richieste per le risorse del cluster nello strumento manage_eks_stacks. setup/teardown
aws iam create-policy \ --policy-name EKSMcpWriteManagementPolicy \ --policy-document "{\"Version\": \"2012-10-17\", \"Statement\": [{\"Effect\": \"Allow\", \"Action\": [\"eks:DescribeCluster\", \"eks:ListClusters\", \"eks:DescribeNodegroup\", \"eks:ListNodegroups\", \"eks:DescribeAddon\", \"eks:ListAddons\", \"eks:DescribeAccessEntry\", \"eks:ListAccessEntries\", \"eks:DescribeInsight\", \"eks:ListInsights\", \"eks:AccessKubernetesApi\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"eks:CreateCluster\", \"eks:DeleteCluster\", \"eks:CreateAccessEntry\", \"eks:TagResource\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"iam:GetRole\", \"iam:ListRolePolicies\", \"iam:ListAttachedRolePolicies\", \"iam:GetRolePolicy\", \"iam:GetPolicy\", \"iam:GetPolicyVersion\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"iam:TagRole\", \"iam:CreateRole\", \"iam:AttachRolePolicy\", \"iam:PutRolePolicy\", \"iam:DetachRolePolicy\", \"iam:DeleteRole\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"iam:PassRole\"], \"Resource\": \"*\", \"Condition\": {\"StringEquals\": {\"iam:PassedToService\": [\"eks.amazonaws.com\", \"ec2.amazonaws.com\"]}}}, {\"Effect\": \"Allow\", \"Action\": [\"ec2:CreateVpc\", \"ec2:CreateSubnet\", \"ec2:CreateRouteTable\", \"ec2:CreateRoute\", \"ec2:CreateInternetGateway\", \"ec2:CreateNatGateway\", \"ec2:CreateSecurityGroup\", \"ec2:AttachInternetGateway\", \"ec2:AssociateRouteTable\", \"ec2:ModifyVpcAttribute\", \"ec2:ModifySubnetAttribute\", \"ec2:AllocateAddress\", \"ec2:CreateTags\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"ec2:DeleteVpc\", \"ec2:DeleteSubnet\", \"ec2:DisassociateRouteTable\", \"ec2:DeleteRouteTable\", \"ec2:DeleteRoute\", \"ec2:DetachInternetGateway\", \"ec2:DeleteInternetGateway\", \"ec2:DeleteNatGateway\", \"ec2:ReleaseAddress\", \"ec2:DeleteSecurityGroup\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"ec2:DescribeVpcs\", \"ec2:DescribeSubnets\", \"ec2:DescribeRouteTables\", \"ec2:DescribeInternetGateways\", \"ec2:DescribeNatGateways\", \"ec2:DescribeAddresses\", \"ec2:DescribeSecurityGroups\", \"ec2:DescribeAvailabilityZones\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"cloudformation:CreateStack\", \"cloudformation:UpdateStack\", \"cloudformation:DeleteStack\", \"cloudformation:DescribeStacks\", \"cloudformation:TagResource\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"sts:GetCallerIdentity\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"logs:StartQuery\", \"logs:GetQueryResults\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"cloudwatch:GetMetricData\"], \"Resource\": \"*\"}, {\"Effect\": \"Allow\", \"Action\": [\"eks-mcp:*\"], \"Resource\": \"*\"}]}"
Fase 3: Verifica la configurazione
Prova la connessione
Fai una semplice domanda al tuo assistente AI per verificare la connessione:
List all EKS clusters in my {aws} account
Dovresti vedere un elenco dei tuoi cluster EKS.
Fase 4: Esegui le tue prime attività
Esempio 1: esplora i tuoi cluster
Show me all EKS clusters and their status What insights does EKS have about my production-cluster? Show me the VPC configuration for my staging cluster
Esempio 2: verifica le risorse di Kubernetes
Get the details of all the kubernetes resources deployed in my EKS cluster Show me pods that are not in Running state or pods with any restarts Get the logs from the aws-node daemonset in the last 30 minutes
Esempio 3: Risoluzione dei problemi
Why is my nginx-ingress-controller pod failing to start? Search the EKS troubleshooting guide for pod networking issues Show me events related to the failed deployment in the staging namespace
Esempio 4: creazione di risorse (se la modalità «scrittura» è abilitata)
Create a new EKS cluster named demo-cluster with VPC and Auto Mode Deploy my containerized app from ECR to the production namespace with 3 replicas Generate a Kubernetes deployment YAML for my Node.js app running on port 3000
Configurazioni comuni
Scenario 1: profili multipli AWS
Se lavori con più AWS account, crea configurazioni server MCP separate.
Per Mac/Linux:
{ "mcpServers": { "eks-mcp-prod": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "production", "--region", "us-west-2" ] }, "eks-mcp-dev": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "development", "--region", "us-east-1" ] } } }
Per Windows:
{ "mcpServers": { "eks-mcp-prod": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "production", "--region", "us-west-2" ] }, "eks-mcp-dev": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "development", "--region", "us-east-1" ] } } }
Scenario 2: Sola lettura per la produzione
Creare una configurazione di sola lettura per gli ambienti di produzione.
Per Mac/Linux:
{ "mcpServers": { "eks-mcp-prod-readonly": { "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "production", "--region", "us-west-2", "--read-only" ], "autoApprove": [ "list_k8s_resources", "get_pod_logs", "get_k8s_events" ] } } }
Per Windows:
{ "mcpServers": { "eks-mcp-prod-readonly": { "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "production", "--region", "us-west-2", "--read-only" ], "autoApprove": [ "list_k8s_resources", "get_pod_logs", "get_k8s_events" ] } } }
Scenario 3: sviluppo con accesso completo
Per ambienti di sviluppo con accesso completo in scrittura.
Per Mac/Linux:
{ "mcpServers": { "eks-mcp-dev-full": { "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "development", "--region", "us-east-1" ] } } }
Per Windows:
{ "mcpServers": { "eks-mcp-dev-full": { "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://eks-mcp.{region}.api.aws/mcp", "--service", "eks-mcp", "--profile", "development", "--region", "us-east-1" ] } } }
Considerazioni
Sicurezza
Non passate informazioni segrete o sensibili tramite meccanismi di input consentiti:
-
Non includere segreti o credenziali nei file YAML applicati con apply_yaml.
-
Non passate informazioni sensibili direttamente nel prompt al modello.
-
Non includete segreti nei CloudFormation modelli o nei manifesti delle applicazioni.
-
Evita di utilizzare strumenti MCP per creare Kubernetes Secrets, poiché ciò richiederebbe la fornitura dei dati segreti al modello.
-
Evita di registrare informazioni sensibili nei log delle applicazioni all'interno dei pod Kubernetes.
Sicurezza dei contenuti YAML:
-
Usa solo file YAML provenienti da fonti affidabili.
-
Il server si basa sulla convalida dell'API Kubernetes per i contenuti YAML e non esegue la propria convalida.
-
Controlla i file YAML prima di applicarli al cluster.
Invece di passare segreti tramite MCP:
-
Usa AWS Secrets Manager o Parameter Store per archiviare informazioni riservate.
-
Configura l'RBAC Kubernetes appropriato per gli account di servizio.
-
Usa IAM roles for service accounts (IRSA) per l'accesso ai servizi dai pod. AWS
Redazione di dati sensibili:
-
Il server MCP EKS oscura automaticamente gli schemi comuni relativi a token di sicurezza, certificati e altre informazioni sensibili nelle risposte degli strumenti.
-
I valori redatti vengono sostituiti con
HIDDEN_FOR_SECURITY_REASONSper evitare l'esposizione accidentale dei dati al modello. -
Questa redazione si applica a tutte le risposte degli strumenti, inclusi i registri, le descrizioni delle risorse e i dati di configurazione.
Prossimo
Per le opzioni di configurazione, vedereRiferimento alla configurazione del server MCP di Amazon EKS. Per un elenco completo degli strumenti, vedereRiferimento agli strumenti per server MCP di Amazon EKS.