Supported Providers
EKS Provider
EKS provider integrates with AWS EKS and let you interatct with kubernetes clusters hosted on EKS.
Inputs
- command_type (required): The command type to operate on the k8s cluster:
get_pods
: List all pods across namespaces or in a specific namespaceget_pvc
: List all persistent volume claimsget_node_pressure
: Get node pressure metricsget_deployment
: Get deployment informationscale_deployment
: Scale a deployment’s replicasexec_command
: Execute a command in a podrestart_pod
: Restart a specific podget_pod_logs
: Get logs from a pod
Command-specific Parameters
For get_pods, get_pvc
- namespace (optional): Target specific namespace. If not provided, queries all namespaces
For get_deployment, scale_deployment
- namespace (optional): Target namespace (defaults to “default”)
- deployment_name (required): Name of the deployment
- replicas (required for scale_deployment): Number of desired replicas
For exec_command
- namespace (required): Pod’s namespace
- pod_name (required): Name of the pod
- command (required): Command to execute (string or array)
- container (optional): Container name (defaults to first container)
- use_shell (optional): Whether to wrap command in shell (defaults to true)
For restart_pod
- namespace (required): Pod’s namespace
- pod_name (required): Name of the pod
For get_pod_logs
- namespace (required): Pod’s namespace
- pod_name (required): Name of the pod
- container (optional): Container name (defaults to first container)
- tail_lines (optional): Number of lines to get from the end (defaults to 100)
Outputs
The Amazon EKS Provider supports the query
function with different outputs based on command type:
get_pods
: Returns list of pod detailsget_pvc
: Returns list of PVC detailsget_node_pressure
: Returns node pressure metricsget_deployment
: Returns deployment detailsscale_deployment
: Returns scaling operation resultexec_command
: Returns command output as stringrestart_pod
: Returns restart operation statusget_pod_logs
: Returns pod logs as string
Authentication Parameters
The Amazon EKS Provider uses AWS credentials to allow you to query your cluster resources. You need to provide the following authentication parameters:
- access_key (required): AWS access key ID with EKS permissions
- secret_access_key (required): AWS secret access key
- region (required): AWS region where the EKS cluster is located (e.g., us-east-1)
- cluster_name (required): The name of your EKS cluster
Connecting with the Provider
To connect to Amazon EKS, follow these steps:
-
Log in to your AWS Console
-
Create an IAM user with EKS permissions:
- Create access keys
You should get:
The AccessKeyId
is your access_key
and SecretAccessKey
is your secret_access_key
.
- Note your cluster name and region from the EKS console or using:
Required Permissions
The AWS IAM user needs these permissions:
- eks:DescribeCluster
- eks:ListClusters
Additional permissions for specific operations:
- eks:AccessKubernetesApi for pod/deployment operations
- eks:UpdateCluster for scaling operations
Command | AWS IAM Permissions |
---|---|
get_pods | eks:DescribeCluster eks:AccessKubernetesApi |
get_pvc | eks:DescribeCluster eks:AccessKubernetesApi |
get_node_pressure | eks:DescribeCluster eks:AccessKubernetesApi |
get_deployment | eks:DescribeCluster eks:AccessKubernetesApi |
scale_deployment | eks:DescribeCluster eks:AccessKubernetesApi |
exec_command | eks:DescribeCluster eks:AccessKubernetesApi |
restart_pod | eks:DescribeCluster eks:AccessKubernetesApi |
get_pod_logs | eks:DescribeCluster eks:AccessKubernetesApi |