PuppyIP Resource Center
Cloud Operations 7 min Published 2026-10-27

AWS Batch EKS access entries: what to check before enabling

On October 5, 2026, AWS announced access-entry authentication for AWS Batch compute environments on Amazon EKS. Before enabling it, check the cluster's authenticationMode and every Batch environment that targets that cluster, then configure the namespace policy and node instance role separately. Setting one environment to ENABLED does not guarantee that an access entry exists or that jobs can run.

AWS Batch Amazon EKS access entry Kubernetes permissions Cloud operations

Service eligibility and regional restrictions

PuppyIP serves only compliant overseas businesses and their authorized personnel. Proxy services are not available in mainland China. The service may only be used for lawful business activities outside mainland China. Use of this service within mainland China is prohibited.

Hosting a proxy IP or server overseas does not change these restrictions. The service must not be provided to end users in mainland China through relaying, forwarding, sharing or resale. Before use, read the Terms of Service.

Key Takeaways

  • AWS Batch can manage one access entry per EKS cluster for its service-linked role in every AWS Region where AWS Batch is available.
  • In API_AND_CONFIG_MAP mode, Batch reconciles desiredState across all environments targeting the cluster in the same account and Region; changing only one may not switch access.
  • The associated AWSBatchClusterPolicy does not grant pod-management permissions inside a namespace; AWSBatchNamespacePolicy must be associated separately.
  • The instance role used by Batch-launched nodes needs its own cluster access, separate from the access entry for the Batch service-linked role.
  • AWS Batch itself has no additional service charge, but the EKS cluster and resources that run workloads remain billable under current AWS pricing.

What does this change?

On October 5, 2026, AWS announced that AWS Batch can authenticate to Amazon EKS compute environments through access entries. An access entry is an API-managed record of cluster access and can complement the older aws-auth ConfigMap method.

Set eksConfiguration.accessEntry.desiredState in a CreateComputeEnvironment or UpdateComputeEnvironment request. When the conditions are met, AWS Batch creates one Batch-managed access entry per cluster for its service-linked role and associates AWSBatchClusterPolicy.

The feature is available in every AWS Region where AWS Batch is available. It does not create or manage an EKS cluster, and it does not configure namespace permissions or node-role access for you.

Check the EKS authenticationMode first

With CONFIG_MAP authentication, the cluster does not support access entries. AWS Batch can record the desiredState you specify, but it will not create or delete an access entry; Batch continues to authenticate through aws-auth.

With API authentication, access entries are the cluster's authentication path. ENABLED lets AWS Batch manage the entry, and INHERIT_FROM_CLUSTER also creates and manages it on an API-only cluster. DISABLED is rejected because an API-only cluster has no aws-auth ConfigMap to fall back to.

With API_AND_CONFIG_MAP, AWS Batch compares the recorded values for every Batch compute environment in the same AWS account and Region that targets the cluster. It creates the entry only when all are ENABLED and deletes it only when all are DISABLED.

If the values differ, or an environment has no recorded desiredState, Batch keeps the current access mode instead of switching the cluster based on one ENABLED or DISABLED value. INHERIT_FROM_CLUSTER does not by itself add or remove an entry in this mode.

An access entry does not finish every permission step

The IAM identity calling CreateComputeEnvironment or UpdateComputeEnvironment needs the relevant EKS permissions: eks:DescribeCluster, eks:DescribeAccessEntry, eks:CreateAccessEntry, eks:AssociateAccessPolicy, and eks:DeleteAccessEntry.

AWSBatchClusterPolicy is a cluster-level policy. After enabling a Batch-managed access entry, you must also associate the namespace-scoped AWSBatchNamespacePolicy with the service-linked role so Batch can create and manage pods in the specified namespace. Without that association, jobs can remain in RUNNABLE.

The nodes join the cluster using the instance role in computeResources.instanceRole. That role needs separate cluster access. In API mode, create an access entry for the node role; in API_AND_CONFIG_MAP mode, an existing valid aws-auth mapping can also authenticate that role.

DescribeComputeEnvironments returns accessEntry.status=ACTIVE when the Batch-managed entry exists. AWS notes that the policy association might still be in progress, so ACTIVE alone does not prove that job permissions are ready.

Inventory the cluster, then verify each step

List every AWS Batch EKS compute environment in the same account and Region that targets the cluster, and record its authenticationMode, desiredState, and namespace. Do not check only the environment you plan to change.

Confirm that the cluster's authentication mode supports the intended transition and that the IAM identity making the change has the AWS Batch permissions and EKS actions listed above. For API_AND_CONFIG_MAP, plan to set a consistent state across all target environments.

For each existing compute environment you intend to enable, update the access-entry state with this command. Replace the placeholder with your compute environment name and make the change consistently across the cluster: aws batch update-compute-environment --compute-environment <compute-environment-name> --eks-configuration 'accessEntry={desiredState=ENABLED}'

Then use DescribeComputeEnvironments to inspect desiredState and status. Separately verify AWSBatchNamespacePolicy and the node instance role's access. You can validate job behavior in a nonproduction or controlled queue; this article does not report testing in a reader's environment.

AWS says the Batch service itself has no additional charge. The EKS cluster and resources such as EC2 instances can still incur costs. EKS cluster pricing varies with the Kubernetes version support tier, so check current pricing for the target Region.

Disable or delete environments in the right order

To return an API_AND_CONFIG_MAP cluster to aws-auth, set DISABLED on every AWS Batch compute environment that targets the cluster, then confirm the access entry has been removed before relying on the ConfigMap path. An API-only cluster rejects DISABLED, so do not treat it as a valid rollback step.

Deleting an AWS Batch compute environment does not automatically remove the Batch-managed access entry, even when it is the last environment. If you need to remove the entry, set DISABLED on every targeting environment before deleting them, and confirm that the cluster's other access and node-role settings remain valid.

Sources

Frequently Asked Questions

Is setting one AWS Batch compute environment to ENABLED enough?

Not necessarily. In API_AND_CONFIG_MAP mode, Batch reconciles all compute environments targeting the cluster in the same account and Region. The entry is created only when all of them are recorded as ENABLED.

Why can a job stay in RUNNABLE after AWSBatchClusterPolicy is associated?

That is a cluster-level access policy. You must also associate AWSBatchNamespacePolicy with the target namespace and configure separate cluster access for the node instance role.

Will deleting the last compute environment remove the access entry?

No. Set DISABLED on every compute environment targeting the cluster before deleting the environments and cleaning up the entry.

Is there a separate AWS Batch EKS access-entry fee?

AWS says the Batch service itself has no additional charge. The Amazon EKS cluster and the compute, storage, and networking resources you use may still incur charges based on their configuration and Region.