/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace EKS { namespace Model { /** *

An object representing an issue with an Amazon EKS resource.

See * Also:

AWS API * Reference

*/ class Issue { public: AWS_EKS_API Issue(); AWS_EKS_API Issue(Aws::Utils::Json::JsonView jsonValue); AWS_EKS_API Issue& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_EKS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

A brief description of the error.

  • AccessDenied: * Amazon EKS or one or more of your managed nodes is failing to authenticate or * authorize with your Kubernetes cluster API server.

  • * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing * failures while attempting to launch instances.

  • * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group * associated with the managed node group. You may be able to recreate an Auto * Scaling group with the same settings to recover.

  • * ClusterUnreachable: Amazon EKS or one or more of your managed nodes is * unable to to communicate with your Kubernetes cluster API server. This can * happen if there are network disruptions or if API servers are timing out * processing requests.

  • Ec2LaunchTemplateNotFound: We * couldn't find the Amazon EC2 launch template for your managed node group. You * may be able to recreate a launch template with the same settings to recover.

    *
  • Ec2LaunchTemplateVersionMismatch: The Amazon EC2 launch * template version for your managed node group does not match the version that * Amazon EKS created. You may be able to revert to the version that Amazon EKS * created to recover.

  • Ec2SecurityGroupDeletionFailure: * We could not delete the remote access security group for your managed node * group. Remove any dependencies from the security group.

  • * Ec2SecurityGroupNotFound: We couldn't find the cluster security group for * the cluster. You must recreate your cluster.

  • * Ec2SubnetInvalidConfiguration: One or more Amazon EC2 subnets specified * for a node group do not automatically assign public IP addresses to instances * launched into it. If you want your instances to be assigned a public IP address, * then you need to enable the auto-assign public IP address setting * for the subnet. See Modifying * the public IPv4 addressing attribute for your subnet in the Amazon VPC * User Guide.

  • IamInstanceProfileNotFound: We * couldn't find the IAM instance profile for your managed node group. You may be * able to recreate an instance profile with the same settings to recover.

    *
  • IamNodeRoleNotFound: We couldn't find the IAM role for * your managed node group. You may be able to recreate an IAM role with the same * settings to recover.

  • InstanceLimitExceeded: Your * Amazon Web Services account is unable to launch any more instances of the * specified instance type. You may be able to request an Amazon EC2 instance limit * increase to recover.

  • InsufficientFreeAddresses: One or * more of the subnets associated with your managed node group does not have enough * available IP addresses for new nodes.

  • InternalFailure: * These errors are usually caused by an Amazon EKS server-side issue.

  • *
  • NodeCreationFailure: Your launched instances are unable to * register with your Amazon EKS cluster. Common causes of this failure are * insufficient node * IAM role permissions or lack of outbound internet access for the nodes.

    *
*/ inline const NodegroupIssueCode& GetCode() const{ return m_code; } /** *

A brief description of the error.

  • AccessDenied: * Amazon EKS or one or more of your managed nodes is failing to authenticate or * authorize with your Kubernetes cluster API server.

  • * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing * failures while attempting to launch instances.

  • * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group * associated with the managed node group. You may be able to recreate an Auto * Scaling group with the same settings to recover.

  • * ClusterUnreachable: Amazon EKS or one or more of your managed nodes is * unable to to communicate with your Kubernetes cluster API server. This can * happen if there are network disruptions or if API servers are timing out * processing requests.

  • Ec2LaunchTemplateNotFound: We * couldn't find the Amazon EC2 launch template for your managed node group. You * may be able to recreate a launch template with the same settings to recover.

    *
  • Ec2LaunchTemplateVersionMismatch: The Amazon EC2 launch * template version for your managed node group does not match the version that * Amazon EKS created. You may be able to revert to the version that Amazon EKS * created to recover.

  • Ec2SecurityGroupDeletionFailure: * We could not delete the remote access security group for your managed node * group. Remove any dependencies from the security group.

  • * Ec2SecurityGroupNotFound: We couldn't find the cluster security group for * the cluster. You must recreate your cluster.

  • * Ec2SubnetInvalidConfiguration: One or more Amazon EC2 subnets specified * for a node group do not automatically assign public IP addresses to instances * launched into it. If you want your instances to be assigned a public IP address, * then you need to enable the auto-assign public IP address setting * for the subnet. See Modifying * the public IPv4 addressing attribute for your subnet in the Amazon VPC * User Guide.

  • IamInstanceProfileNotFound: We * couldn't find the IAM instance profile for your managed node group. You may be * able to recreate an instance profile with the same settings to recover.

    *
  • IamNodeRoleNotFound: We couldn't find the IAM role for * your managed node group. You may be able to recreate an IAM role with the same * settings to recover.

  • InstanceLimitExceeded: Your * Amazon Web Services account is unable to launch any more instances of the * specified instance type. You may be able to request an Amazon EC2 instance limit * increase to recover.

  • InsufficientFreeAddresses: One or * more of the subnets associated with your managed node group does not have enough * available IP addresses for new nodes.

  • InternalFailure: * These errors are usually caused by an Amazon EKS server-side issue.

  • *
  • NodeCreationFailure: Your launched instances are unable to * register with your Amazon EKS cluster. Common causes of this failure are * insufficient node * IAM role permissions or lack of outbound internet access for the nodes.

    *
*/ inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; } /** *

A brief description of the error.

  • AccessDenied: * Amazon EKS or one or more of your managed nodes is failing to authenticate or * authorize with your Kubernetes cluster API server.

  • * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing * failures while attempting to launch instances.

  • * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group * associated with the managed node group. You may be able to recreate an Auto * Scaling group with the same settings to recover.

  • * ClusterUnreachable: Amazon EKS or one or more of your managed nodes is * unable to to communicate with your Kubernetes cluster API server. This can * happen if there are network disruptions or if API servers are timing out * processing requests.

  • Ec2LaunchTemplateNotFound: We * couldn't find the Amazon EC2 launch template for your managed node group. You * may be able to recreate a launch template with the same settings to recover.

    *
  • Ec2LaunchTemplateVersionMismatch: The Amazon EC2 launch * template version for your managed node group does not match the version that * Amazon EKS created. You may be able to revert to the version that Amazon EKS * created to recover.

  • Ec2SecurityGroupDeletionFailure: * We could not delete the remote access security group for your managed node * group. Remove any dependencies from the security group.

  • * Ec2SecurityGroupNotFound: We couldn't find the cluster security group for * the cluster. You must recreate your cluster.

  • * Ec2SubnetInvalidConfiguration: One or more Amazon EC2 subnets specified * for a node group do not automatically assign public IP addresses to instances * launched into it. If you want your instances to be assigned a public IP address, * then you need to enable the auto-assign public IP address setting * for the subnet. See Modifying * the public IPv4 addressing attribute for your subnet in the Amazon VPC * User Guide.

  • IamInstanceProfileNotFound: We * couldn't find the IAM instance profile for your managed node group. You may be * able to recreate an instance profile with the same settings to recover.

    *
  • IamNodeRoleNotFound: We couldn't find the IAM role for * your managed node group. You may be able to recreate an IAM role with the same * settings to recover.

  • InstanceLimitExceeded: Your * Amazon Web Services account is unable to launch any more instances of the * specified instance type. You may be able to request an Amazon EC2 instance limit * increase to recover.

  • InsufficientFreeAddresses: One or * more of the subnets associated with your managed node group does not have enough * available IP addresses for new nodes.

  • InternalFailure: * These errors are usually caused by an Amazon EKS server-side issue.

  • *
  • NodeCreationFailure: Your launched instances are unable to * register with your Amazon EKS cluster. Common causes of this failure are * insufficient node * IAM role permissions or lack of outbound internet access for the nodes.

    *
*/ inline void SetCode(const NodegroupIssueCode& value) { m_codeHasBeenSet = true; m_code = value; } /** *

A brief description of the error.

  • AccessDenied: * Amazon EKS or one or more of your managed nodes is failing to authenticate or * authorize with your Kubernetes cluster API server.

  • * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing * failures while attempting to launch instances.

  • * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group * associated with the managed node group. You may be able to recreate an Auto * Scaling group with the same settings to recover.

  • * ClusterUnreachable: Amazon EKS or one or more of your managed nodes is * unable to to communicate with your Kubernetes cluster API server. This can * happen if there are network disruptions or if API servers are timing out * processing requests.

  • Ec2LaunchTemplateNotFound: We * couldn't find the Amazon EC2 launch template for your managed node group. You * may be able to recreate a launch template with the same settings to recover.

    *
  • Ec2LaunchTemplateVersionMismatch: The Amazon EC2 launch * template version for your managed node group does not match the version that * Amazon EKS created. You may be able to revert to the version that Amazon EKS * created to recover.

  • Ec2SecurityGroupDeletionFailure: * We could not delete the remote access security group for your managed node * group. Remove any dependencies from the security group.

  • * Ec2SecurityGroupNotFound: We couldn't find the cluster security group for * the cluster. You must recreate your cluster.

  • * Ec2SubnetInvalidConfiguration: One or more Amazon EC2 subnets specified * for a node group do not automatically assign public IP addresses to instances * launched into it. If you want your instances to be assigned a public IP address, * then you need to enable the auto-assign public IP address setting * for the subnet. See Modifying * the public IPv4 addressing attribute for your subnet in the Amazon VPC * User Guide.

  • IamInstanceProfileNotFound: We * couldn't find the IAM instance profile for your managed node group. You may be * able to recreate an instance profile with the same settings to recover.

    *
  • IamNodeRoleNotFound: We couldn't find the IAM role for * your managed node group. You may be able to recreate an IAM role with the same * settings to recover.

  • InstanceLimitExceeded: Your * Amazon Web Services account is unable to launch any more instances of the * specified instance type. You may be able to request an Amazon EC2 instance limit * increase to recover.

  • InsufficientFreeAddresses: One or * more of the subnets associated with your managed node group does not have enough * available IP addresses for new nodes.

  • InternalFailure: * These errors are usually caused by an Amazon EKS server-side issue.

  • *
  • NodeCreationFailure: Your launched instances are unable to * register with your Amazon EKS cluster. Common causes of this failure are * insufficient node * IAM role permissions or lack of outbound internet access for the nodes.

    *
*/ inline void SetCode(NodegroupIssueCode&& value) { m_codeHasBeenSet = true; m_code = std::move(value); } /** *

A brief description of the error.

  • AccessDenied: * Amazon EKS or one or more of your managed nodes is failing to authenticate or * authorize with your Kubernetes cluster API server.

  • * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing * failures while attempting to launch instances.

  • * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group * associated with the managed node group. You may be able to recreate an Auto * Scaling group with the same settings to recover.

  • * ClusterUnreachable: Amazon EKS or one or more of your managed nodes is * unable to to communicate with your Kubernetes cluster API server. This can * happen if there are network disruptions or if API servers are timing out * processing requests.

  • Ec2LaunchTemplateNotFound: We * couldn't find the Amazon EC2 launch template for your managed node group. You * may be able to recreate a launch template with the same settings to recover.

    *
  • Ec2LaunchTemplateVersionMismatch: The Amazon EC2 launch * template version for your managed node group does not match the version that * Amazon EKS created. You may be able to revert to the version that Amazon EKS * created to recover.

  • Ec2SecurityGroupDeletionFailure: * We could not delete the remote access security group for your managed node * group. Remove any dependencies from the security group.

  • * Ec2SecurityGroupNotFound: We couldn't find the cluster security group for * the cluster. You must recreate your cluster.

  • * Ec2SubnetInvalidConfiguration: One or more Amazon EC2 subnets specified * for a node group do not automatically assign public IP addresses to instances * launched into it. If you want your instances to be assigned a public IP address, * then you need to enable the auto-assign public IP address setting * for the subnet. See Modifying * the public IPv4 addressing attribute for your subnet in the Amazon VPC * User Guide.

  • IamInstanceProfileNotFound: We * couldn't find the IAM instance profile for your managed node group. You may be * able to recreate an instance profile with the same settings to recover.

    *
  • IamNodeRoleNotFound: We couldn't find the IAM role for * your managed node group. You may be able to recreate an IAM role with the same * settings to recover.

  • InstanceLimitExceeded: Your * Amazon Web Services account is unable to launch any more instances of the * specified instance type. You may be able to request an Amazon EC2 instance limit * increase to recover.

  • InsufficientFreeAddresses: One or * more of the subnets associated with your managed node group does not have enough * available IP addresses for new nodes.

  • InternalFailure: * These errors are usually caused by an Amazon EKS server-side issue.

  • *
  • NodeCreationFailure: Your launched instances are unable to * register with your Amazon EKS cluster. Common causes of this failure are * insufficient node * IAM role permissions or lack of outbound internet access for the nodes.

    *
*/ inline Issue& WithCode(const NodegroupIssueCode& value) { SetCode(value); return *this;} /** *

A brief description of the error.

  • AccessDenied: * Amazon EKS or one or more of your managed nodes is failing to authenticate or * authorize with your Kubernetes cluster API server.

  • * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing * failures while attempting to launch instances.

  • * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group * associated with the managed node group. You may be able to recreate an Auto * Scaling group with the same settings to recover.

  • * ClusterUnreachable: Amazon EKS or one or more of your managed nodes is * unable to to communicate with your Kubernetes cluster API server. This can * happen if there are network disruptions or if API servers are timing out * processing requests.

  • Ec2LaunchTemplateNotFound: We * couldn't find the Amazon EC2 launch template for your managed node group. You * may be able to recreate a launch template with the same settings to recover.

    *
  • Ec2LaunchTemplateVersionMismatch: The Amazon EC2 launch * template version for your managed node group does not match the version that * Amazon EKS created. You may be able to revert to the version that Amazon EKS * created to recover.

  • Ec2SecurityGroupDeletionFailure: * We could not delete the remote access security group for your managed node * group. Remove any dependencies from the security group.

  • * Ec2SecurityGroupNotFound: We couldn't find the cluster security group for * the cluster. You must recreate your cluster.

  • * Ec2SubnetInvalidConfiguration: One or more Amazon EC2 subnets specified * for a node group do not automatically assign public IP addresses to instances * launched into it. If you want your instances to be assigned a public IP address, * then you need to enable the auto-assign public IP address setting * for the subnet. See Modifying * the public IPv4 addressing attribute for your subnet in the Amazon VPC * User Guide.

  • IamInstanceProfileNotFound: We * couldn't find the IAM instance profile for your managed node group. You may be * able to recreate an instance profile with the same settings to recover.

    *
  • IamNodeRoleNotFound: We couldn't find the IAM role for * your managed node group. You may be able to recreate an IAM role with the same * settings to recover.

  • InstanceLimitExceeded: Your * Amazon Web Services account is unable to launch any more instances of the * specified instance type. You may be able to request an Amazon EC2 instance limit * increase to recover.

  • InsufficientFreeAddresses: One or * more of the subnets associated with your managed node group does not have enough * available IP addresses for new nodes.

  • InternalFailure: * These errors are usually caused by an Amazon EKS server-side issue.

  • *
  • NodeCreationFailure: Your launched instances are unable to * register with your Amazon EKS cluster. Common causes of this failure are * insufficient node * IAM role permissions or lack of outbound internet access for the nodes.

    *
*/ inline Issue& WithCode(NodegroupIssueCode&& value) { SetCode(std::move(value)); return *this;} /** *

The error message associated with the issue.

*/ inline const Aws::String& GetMessage() const{ return m_message; } /** *

The error message associated with the issue.

*/ inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; } /** *

The error message associated with the issue.

*/ inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; } /** *

The error message associated with the issue.

*/ inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); } /** *

The error message associated with the issue.

*/ inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); } /** *

The error message associated with the issue.

*/ inline Issue& WithMessage(const Aws::String& value) { SetMessage(value); return *this;} /** *

The error message associated with the issue.

*/ inline Issue& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;} /** *

The error message associated with the issue.

*/ inline Issue& WithMessage(const char* value) { SetMessage(value); return *this;} /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline const Aws::Vector& GetResourceIds() const{ return m_resourceIds; } /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline bool ResourceIdsHasBeenSet() const { return m_resourceIdsHasBeenSet; } /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline void SetResourceIds(const Aws::Vector& value) { m_resourceIdsHasBeenSet = true; m_resourceIds = value; } /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline void SetResourceIds(Aws::Vector&& value) { m_resourceIdsHasBeenSet = true; m_resourceIds = std::move(value); } /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline Issue& WithResourceIds(const Aws::Vector& value) { SetResourceIds(value); return *this;} /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline Issue& WithResourceIds(Aws::Vector&& value) { SetResourceIds(std::move(value)); return *this;} /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline Issue& AddResourceIds(const Aws::String& value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(value); return *this; } /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline Issue& AddResourceIds(Aws::String&& value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(std::move(value)); return *this; } /** *

The Amazon Web Services resources that are afflicted by this issue.

*/ inline Issue& AddResourceIds(const char* value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(value); return *this; } private: NodegroupIssueCode m_code; bool m_codeHasBeenSet = false; Aws::String m_message; bool m_messageHasBeenSet = false; Aws::Vector m_resourceIds; bool m_resourceIdsHasBeenSet = false; }; } // namespace Model } // namespace EKS } // namespace Aws