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

The Kubernetes network configuration for the cluster. The response contains a * value for serviceIpv6Cidr or serviceIpv4Cidr, but not both. *

See Also:

AWS * API Reference

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

The CIDR block that Kubernetes pod and service IP addresses are assigned * from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet * that the node is in. If you didn't specify a CIDR block when you created the * cluster, then Kubernetes assigns addresses from either the * 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this * was specified, then it was specified when the cluster was created and it can't * be changed.

*/ inline const Aws::String& GetServiceIpv4Cidr() const{ return m_serviceIpv4Cidr; } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned * from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet * that the node is in. If you didn't specify a CIDR block when you created the * cluster, then Kubernetes assigns addresses from either the * 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this * was specified, then it was specified when the cluster was created and it can't * be changed.

*/ inline bool ServiceIpv4CidrHasBeenSet() const { return m_serviceIpv4CidrHasBeenSet; } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned * from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet * that the node is in. If you didn't specify a CIDR block when you created the * cluster, then Kubernetes assigns addresses from either the * 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this * was specified, then it was specified when the cluster was created and it can't * be changed.

*/ inline void SetServiceIpv4Cidr(const Aws::String& value) { m_serviceIpv4CidrHasBeenSet = true; m_serviceIpv4Cidr = value; } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned * from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet * that the node is in. If you didn't specify a CIDR block when you created the * cluster, then Kubernetes assigns addresses from either the * 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this * was specified, then it was specified when the cluster was created and it can't * be changed.

*/ inline void SetServiceIpv4Cidr(Aws::String&& value) { m_serviceIpv4CidrHasBeenSet = true; m_serviceIpv4Cidr = std::move(value); } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned * from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet * that the node is in. If you didn't specify a CIDR block when you created the * cluster, then Kubernetes assigns addresses from either the * 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this * was specified, then it was specified when the cluster was created and it can't * be changed.

*/ inline void SetServiceIpv4Cidr(const char* value) { m_serviceIpv4CidrHasBeenSet = true; m_serviceIpv4Cidr.assign(value); } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned * from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet * that the node is in. If you didn't specify a CIDR block when you created the * cluster, then Kubernetes assigns addresses from either the * 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this * was specified, then it was specified when the cluster was created and it can't * be changed.

*/ inline KubernetesNetworkConfigResponse& WithServiceIpv4Cidr(const Aws::String& value) { SetServiceIpv4Cidr(value); return *this;} /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned * from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet * that the node is in. If you didn't specify a CIDR block when you created the * cluster, then Kubernetes assigns addresses from either the * 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this * was specified, then it was specified when the cluster was created and it can't * be changed.

*/ inline KubernetesNetworkConfigResponse& WithServiceIpv4Cidr(Aws::String&& value) { SetServiceIpv4Cidr(std::move(value)); return *this;} /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned * from. Kubernetes assigns addresses from an IPv4 CIDR block assigned to a subnet * that the node is in. If you didn't specify a CIDR block when you created the * cluster, then Kubernetes assigns addresses from either the * 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this * was specified, then it was specified when the cluster was created and it can't * be changed.

*/ inline KubernetesNetworkConfigResponse& WithServiceIpv4Cidr(const char* value) { SetServiceIpv4Cidr(value); return *this;} /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned from * if you created a 1.21 or later cluster with version 1.10.1 or later of the * Amazon VPC CNI add-on and specified ipv6 for ipFamily when * you created the cluster. Kubernetes assigns service addresses from the unique * local address range (fc00::/7) because you can't specify a custom * IPv6 CIDR block when you create the cluster.

*/ inline const Aws::String& GetServiceIpv6Cidr() const{ return m_serviceIpv6Cidr; } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned from * if you created a 1.21 or later cluster with version 1.10.1 or later of the * Amazon VPC CNI add-on and specified ipv6 for ipFamily when * you created the cluster. Kubernetes assigns service addresses from the unique * local address range (fc00::/7) because you can't specify a custom * IPv6 CIDR block when you create the cluster.

*/ inline bool ServiceIpv6CidrHasBeenSet() const { return m_serviceIpv6CidrHasBeenSet; } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned from * if you created a 1.21 or later cluster with version 1.10.1 or later of the * Amazon VPC CNI add-on and specified ipv6 for ipFamily when * you created the cluster. Kubernetes assigns service addresses from the unique * local address range (fc00::/7) because you can't specify a custom * IPv6 CIDR block when you create the cluster.

*/ inline void SetServiceIpv6Cidr(const Aws::String& value) { m_serviceIpv6CidrHasBeenSet = true; m_serviceIpv6Cidr = value; } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned from * if you created a 1.21 or later cluster with version 1.10.1 or later of the * Amazon VPC CNI add-on and specified ipv6 for ipFamily when * you created the cluster. Kubernetes assigns service addresses from the unique * local address range (fc00::/7) because you can't specify a custom * IPv6 CIDR block when you create the cluster.

*/ inline void SetServiceIpv6Cidr(Aws::String&& value) { m_serviceIpv6CidrHasBeenSet = true; m_serviceIpv6Cidr = std::move(value); } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned from * if you created a 1.21 or later cluster with version 1.10.1 or later of the * Amazon VPC CNI add-on and specified ipv6 for ipFamily when * you created the cluster. Kubernetes assigns service addresses from the unique * local address range (fc00::/7) because you can't specify a custom * IPv6 CIDR block when you create the cluster.

*/ inline void SetServiceIpv6Cidr(const char* value) { m_serviceIpv6CidrHasBeenSet = true; m_serviceIpv6Cidr.assign(value); } /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned from * if you created a 1.21 or later cluster with version 1.10.1 or later of the * Amazon VPC CNI add-on and specified ipv6 for ipFamily when * you created the cluster. Kubernetes assigns service addresses from the unique * local address range (fc00::/7) because you can't specify a custom * IPv6 CIDR block when you create the cluster.

*/ inline KubernetesNetworkConfigResponse& WithServiceIpv6Cidr(const Aws::String& value) { SetServiceIpv6Cidr(value); return *this;} /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned from * if you created a 1.21 or later cluster with version 1.10.1 or later of the * Amazon VPC CNI add-on and specified ipv6 for ipFamily when * you created the cluster. Kubernetes assigns service addresses from the unique * local address range (fc00::/7) because you can't specify a custom * IPv6 CIDR block when you create the cluster.

*/ inline KubernetesNetworkConfigResponse& WithServiceIpv6Cidr(Aws::String&& value) { SetServiceIpv6Cidr(std::move(value)); return *this;} /** *

The CIDR block that Kubernetes pod and service IP addresses are assigned from * if you created a 1.21 or later cluster with version 1.10.1 or later of the * Amazon VPC CNI add-on and specified ipv6 for ipFamily when * you created the cluster. Kubernetes assigns service addresses from the unique * local address range (fc00::/7) because you can't specify a custom * IPv6 CIDR block when you create the cluster.

*/ inline KubernetesNetworkConfigResponse& WithServiceIpv6Cidr(const char* value) { SetServiceIpv6Cidr(value); return *this;} /** *

The IP family used to assign Kubernetes pod and service IP addresses. The IP * family is always ipv4, unless you have a 1.21 or later * cluster running version 1.10.1 or later of the Amazon VPC CNI add-on and * specified ipv6 when you created the cluster.

*/ inline const IpFamily& GetIpFamily() const{ return m_ipFamily; } /** *

The IP family used to assign Kubernetes pod and service IP addresses. The IP * family is always ipv4, unless you have a 1.21 or later * cluster running version 1.10.1 or later of the Amazon VPC CNI add-on and * specified ipv6 when you created the cluster.

*/ inline bool IpFamilyHasBeenSet() const { return m_ipFamilyHasBeenSet; } /** *

The IP family used to assign Kubernetes pod and service IP addresses. The IP * family is always ipv4, unless you have a 1.21 or later * cluster running version 1.10.1 or later of the Amazon VPC CNI add-on and * specified ipv6 when you created the cluster.

*/ inline void SetIpFamily(const IpFamily& value) { m_ipFamilyHasBeenSet = true; m_ipFamily = value; } /** *

The IP family used to assign Kubernetes pod and service IP addresses. The IP * family is always ipv4, unless you have a 1.21 or later * cluster running version 1.10.1 or later of the Amazon VPC CNI add-on and * specified ipv6 when you created the cluster.

*/ inline void SetIpFamily(IpFamily&& value) { m_ipFamilyHasBeenSet = true; m_ipFamily = std::move(value); } /** *

The IP family used to assign Kubernetes pod and service IP addresses. The IP * family is always ipv4, unless you have a 1.21 or later * cluster running version 1.10.1 or later of the Amazon VPC CNI add-on and * specified ipv6 when you created the cluster.

*/ inline KubernetesNetworkConfigResponse& WithIpFamily(const IpFamily& value) { SetIpFamily(value); return *this;} /** *

The IP family used to assign Kubernetes pod and service IP addresses. The IP * family is always ipv4, unless you have a 1.21 or later * cluster running version 1.10.1 or later of the Amazon VPC CNI add-on and * specified ipv6 when you created the cluster.

*/ inline KubernetesNetworkConfigResponse& WithIpFamily(IpFamily&& value) { SetIpFamily(std::move(value)); return *this;} private: Aws::String m_serviceIpv4Cidr; bool m_serviceIpv4CidrHasBeenSet = false; Aws::String m_serviceIpv6Cidr; bool m_serviceIpv6CidrHasBeenSet = false; IpFamily m_ipFamily; bool m_ipFamilyHasBeenSet = false; }; } // namespace Model } // namespace EKS } // namespace Aws