1
0
mirror of https://github.com/rancher/rke.git synced 2025-07-15 08:02:56 +00:00

merge 1.4.9 into 1.4

This commit is contained in:
Harrison Affel 2023-09-11 19:06:22 -04:00
commit 25c349e449
5 changed files with 1837 additions and 333 deletions

View File

@ -75,59 +75,63 @@ const (
DefaultCanalFlexVolPluginDirectory = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds" DefaultCanalFlexVolPluginDirectory = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds"
DefaultAciApicRefreshTime = "1200" DefaultAciApicRefreshTime = "1200"
DefaultAciOVSMemoryLimit = "1Gi" DefaultAciOVSMemoryLimit = "1Gi"
DefaultAciImagePullPolicy = "Always" DefaultAciOVSMemoryRequest = "128Mi"
DefaultAciServiceMonitorInterval = "5" DefaultAciImagePullPolicy = "Always"
DefaultAciPBRTrackingNonSnat = "false" DefaultAciServiceMonitorInterval = "5"
DefaultAciInstallIstio = "false" DefaultAciPBRTrackingNonSnat = "false"
DefaultAciIstioProfile = "demo" DefaultAciInstallIstio = "false"
DefaultAciDropLogEnable = "true" DefaultAciIstioProfile = "demo"
DefaultAciControllerLogLevel = "info" DefaultAciDropLogEnable = "true"
DefaultAciHostAgentLogLevel = "info" DefaultAciControllerLogLevel = "info"
DefaultAciOpflexAgentLogLevel = "info" DefaultAciHostAgentLogLevel = "info"
DefaultAciUseAciCniPriorityClass = "false" DefaultAciOpflexAgentLogLevel = "info"
DefaultAciNoPriorityClass = "false" DefaultAciUseAciCniPriorityClass = "false"
DefaultAciMaxNodesSvcGraph = "32" DefaultAciNoPriorityClass = "false"
DefaultAciSnatContractScope = "global" DefaultAciMaxNodesSvcGraph = "32"
DefaultAciSnatNamespace = "aci-containers-system" DefaultAciSnatContractScope = "global"
DefaultAciCApic = "false" DefaultAciSnatNamespace = "aci-containers-system"
DefaultAciPodSubnetChunkSize = "32" DefaultAciCApic = "false"
DefaultAciSnatPortRangeStart = "5000" DefaultAciPodSubnetChunkSize = "32"
DefaultAciSnatPortRangeEnd = "65000" DefaultAciSnatPortRangeStart = "5000"
DefaultAciSnatPortsPerNode = "3000" DefaultAciSnatPortRangeEnd = "65000"
DefaultAciUseHostNetnsVolume = "false" DefaultAciSnatPortsPerNode = "3000"
DefaultAciRunGbpContainer = "false" DefaultAciUseHostNetnsVolume = "false"
DefaultAciRunOpflexServerContainer = "false" DefaultAciRunGbpContainer = "false"
DefaultAciUseAciAnywhereCRD = "false" DefaultAciRunOpflexServerContainer = "false"
DefaultAciEnableEndpointSlice = "false" DefaultAciUseAciAnywhereCRD = "false"
DefaultAciOpflexClientSSL = "true" DefaultAciEnableEndpointSlice = "false"
DefaultAciUsePrivilegedContainer = "false" DefaultAciOpflexClientSSL = "true"
DefaultAciUseOpflexServerVolume = "false" DefaultAciUsePrivilegedContainer = "false"
DefaultAciDurationWaitForNetwork = "210" DefaultAciUseOpflexServerVolume = "false"
DefaultAciUseClusterRole = "true" DefaultAciDurationWaitForNetwork = "210"
DefaultAciDisableWaitForNetwork = "false" DefaultAciUseClusterRole = "true"
DefaultAciApicSubscriptionDelay = "0" DefaultAciDisableWaitForNetwork = "false"
DefaultAciApicRefreshTickerAdjust = "0" DefaultAciApicSubscriptionDelay = "0"
DefaultAciDisablePeriodicSnatGlobalInfoSync = "false" DefaultAciApicRefreshTickerAdjust = "0"
DefaultAciOpflexDeviceDeleteTimeout = "0" DefaultAciDisablePeriodicSnatGlobalInfoSync = "false"
DefaultAciMTUHeadRoom = "0" DefaultAciOpflexDeviceDeleteTimeout = "0"
DefaultAciNodePodIfEnable = "false" DefaultAciMTUHeadRoom = "0"
DefaultAciSriovEnable = "false" DefaultAciNodePodIfEnable = "false"
DefaultAciMultusDisable = "true" DefaultAciSriovEnable = "false"
DefaultAciNoWaitForServiceEpReadiness = "false" DefaultAciMultusDisable = "true"
DefaultAciAddExternalSubnetsToRdconfig = "false" DefaultAciNoWaitForServiceEpReadiness = "false"
DefaultAciServiceGraphEndpointAddDelay = "0" DefaultAciAddExternalSubnetsToRdconfig = "false"
DefaultAciHppOptimization = "false" DefaultAciServiceGraphEndpointAddDelay = "0"
DefaultAciSleepTimeSnatGlobalInfoSync = "0" DefaultAciHppOptimization = "false"
DefaultAciOpflexAgentOpflexAsyncjsonEnabled = "false" DefaultAciSleepTimeSnatGlobalInfoSync = "0"
DefaultAciOpflexAgentOvsAsyncjsonEnabled = "false" DefaultAciOpflexAgentOpflexAsyncjsonEnabled = "false"
DefaultAciOpflexAgentPolicyRetryDelayTimer = "10" DefaultAciOpflexAgentOvsAsyncjsonEnabled = "false"
DefaultAciAciMultipod = "false" DefaultAciOpflexAgentPolicyRetryDelayTimer = "10"
DefaultAciAciMultipodUbuntu = "false" DefaultAciOpflexDeviceReconnectWaitTimeout = "5"
DefaultAciDhcpRenewMaxRetryCount = "0" DefaultAciAciMultipod = "false"
DefaultAciDhcpDelay = "0" DefaultAciAciMultipodUbuntu = "false"
DefaultAciDhcpRenewMaxRetryCount = "0"
DefaultAciDhcpDelay = "0"
DefaultAciUseSystemNodePriorityClass = "false"
DefaultAciAciContainersMemoryLimit = "3Gi"
DefaultAciAciContainersMemoryRequest = "128Mi"
KubeAPIArgAdmissionControlConfigFile = "admission-control-config-file" KubeAPIArgAdmissionControlConfigFile = "admission-control-config-file"
DefaultKubeAPIArgAdmissionControlConfigFileValue = "/etc/kubernetes/admission.yaml" DefaultKubeAPIArgAdmissionControlConfigFileValue = "/etc/kubernetes/admission.yaml"
@ -776,6 +780,7 @@ func (c *Cluster) setClusterNetworkDefaults() {
case AciNetworkPlugin: case AciNetworkPlugin:
networkPluginConfigDefaultsMap = map[string]string{ networkPluginConfigDefaultsMap = map[string]string{
AciOVSMemoryLimit: DefaultAciOVSMemoryLimit, AciOVSMemoryLimit: DefaultAciOVSMemoryLimit,
AciOVSMemoryRequest: DefaultAciOVSMemoryRequest,
AciImagePullPolicy: DefaultAciImagePullPolicy, AciImagePullPolicy: DefaultAciImagePullPolicy,
AciPBRTrackingNonSnat: DefaultAciPBRTrackingNonSnat, AciPBRTrackingNonSnat: DefaultAciPBRTrackingNonSnat,
AciInstallIstio: DefaultAciInstallIstio, AciInstallIstio: DefaultAciInstallIstio,
@ -824,9 +829,13 @@ func (c *Cluster) setClusterNetworkDefaults() {
AciOpflexAgentOvsAsyncjsonEnabled: DefaultAciOpflexAgentOvsAsyncjsonEnabled, AciOpflexAgentOvsAsyncjsonEnabled: DefaultAciOpflexAgentOvsAsyncjsonEnabled,
AciOpflexAgentPolicyRetryDelayTimer: DefaultAciOpflexAgentPolicyRetryDelayTimer, AciOpflexAgentPolicyRetryDelayTimer: DefaultAciOpflexAgentPolicyRetryDelayTimer,
AciAciMultipod: DefaultAciAciMultipod, AciAciMultipod: DefaultAciAciMultipod,
AciOpflexDeviceReconnectWaitTimeout: DefaultAciOpflexDeviceReconnectWaitTimeout,
AciAciMultipodUbuntu: DefaultAciAciMultipodUbuntu, AciAciMultipodUbuntu: DefaultAciAciMultipodUbuntu,
AciDhcpRenewMaxRetryCount: DefaultAciDhcpRenewMaxRetryCount, AciDhcpRenewMaxRetryCount: DefaultAciDhcpRenewMaxRetryCount,
AciDhcpDelay: DefaultAciDhcpDelay, AciDhcpDelay: DefaultAciDhcpDelay,
AciUseSystemNodePriorityClass: DefaultAciUseSystemNodePriorityClass,
AciContainersMemoryRequest: DefaultAciAciContainersMemoryRequest,
AciContainersMemoryLimit: DefaultAciAciContainersMemoryLimit,
} }
} }
if c.Network.CalicoNetworkProvider != nil { if c.Network.CalicoNetworkProvider != nil {
@ -845,6 +854,7 @@ func (c *Cluster) setClusterNetworkDefaults() {
} }
if c.Network.AciNetworkProvider != nil { if c.Network.AciNetworkProvider != nil {
setDefaultIfEmpty(&c.Network.AciNetworkProvider.OVSMemoryLimit, DefaultAciOVSMemoryLimit) setDefaultIfEmpty(&c.Network.AciNetworkProvider.OVSMemoryLimit, DefaultAciOVSMemoryLimit)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.OVSMemoryRequest, DefaultAciOVSMemoryRequest)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.ImagePullPolicy, DefaultAciImagePullPolicy) setDefaultIfEmpty(&c.Network.AciNetworkProvider.ImagePullPolicy, DefaultAciImagePullPolicy)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.PBRTrackingNonSnat, DefaultAciPBRTrackingNonSnat) setDefaultIfEmpty(&c.Network.AciNetworkProvider.PBRTrackingNonSnat, DefaultAciPBRTrackingNonSnat)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.InstallIstio, DefaultAciInstallIstio) setDefaultIfEmpty(&c.Network.AciNetworkProvider.InstallIstio, DefaultAciInstallIstio)
@ -892,10 +902,15 @@ func (c *Cluster) setClusterNetworkDefaults() {
setDefaultIfEmpty(&c.Network.AciNetworkProvider.OpflexAgentOvsAsyncjsonEnabled, DefaultAciOpflexAgentOvsAsyncjsonEnabled) setDefaultIfEmpty(&c.Network.AciNetworkProvider.OpflexAgentOvsAsyncjsonEnabled, DefaultAciOpflexAgentOvsAsyncjsonEnabled)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.OpflexAgentPolicyRetryDelayTimer, DefaultAciOpflexAgentPolicyRetryDelayTimer) setDefaultIfEmpty(&c.Network.AciNetworkProvider.OpflexAgentPolicyRetryDelayTimer, DefaultAciOpflexAgentPolicyRetryDelayTimer)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.AciMultipod, DefaultAciAciMultipod) setDefaultIfEmpty(&c.Network.AciNetworkProvider.AciMultipod, DefaultAciAciMultipod)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.OpflexDeviceReconnectWaitTimeout, DefaultAciOpflexDeviceReconnectWaitTimeout)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.AciMultipodUbuntu, DefaultAciAciMultipodUbuntu) setDefaultIfEmpty(&c.Network.AciNetworkProvider.AciMultipodUbuntu, DefaultAciAciMultipodUbuntu)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.DhcpRenewMaxRetryCount, DefaultAciDhcpRenewMaxRetryCount) setDefaultIfEmpty(&c.Network.AciNetworkProvider.DhcpRenewMaxRetryCount, DefaultAciDhcpRenewMaxRetryCount)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.DhcpDelay, DefaultAciDhcpDelay) setDefaultIfEmpty(&c.Network.AciNetworkProvider.DhcpDelay, DefaultAciDhcpDelay)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.UseSystemNodePriorityClass, DefaultAciUseSystemNodePriorityClass)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.AciContainersMemoryLimit, DefaultAciAciContainersMemoryLimit)
setDefaultIfEmpty(&c.Network.AciNetworkProvider.AciContainersMemoryRequest, DefaultAciAciContainersMemoryRequest)
networkPluginConfigDefaultsMap[AciOVSMemoryLimit] = c.Network.AciNetworkProvider.OVSMemoryLimit networkPluginConfigDefaultsMap[AciOVSMemoryLimit] = c.Network.AciNetworkProvider.OVSMemoryLimit
networkPluginConfigDefaultsMap[AciOVSMemoryRequest] = c.Network.AciNetworkProvider.OVSMemoryRequest
networkPluginConfigDefaultsMap[AciImagePullPolicy] = c.Network.AciNetworkProvider.ImagePullPolicy networkPluginConfigDefaultsMap[AciImagePullPolicy] = c.Network.AciNetworkProvider.ImagePullPolicy
networkPluginConfigDefaultsMap[AciPBRTrackingNonSnat] = c.Network.AciNetworkProvider.PBRTrackingNonSnat networkPluginConfigDefaultsMap[AciPBRTrackingNonSnat] = c.Network.AciNetworkProvider.PBRTrackingNonSnat
networkPluginConfigDefaultsMap[AciInstallIstio] = c.Network.AciNetworkProvider.InstallIstio networkPluginConfigDefaultsMap[AciInstallIstio] = c.Network.AciNetworkProvider.InstallIstio
@ -945,6 +960,7 @@ func (c *Cluster) setClusterNetworkDefaults() {
networkPluginConfigDefaultsMap[AciDhcpRenewMaxRetryCount] = c.Network.AciNetworkProvider.DhcpRenewMaxRetryCount networkPluginConfigDefaultsMap[AciDhcpRenewMaxRetryCount] = c.Network.AciNetworkProvider.DhcpRenewMaxRetryCount
networkPluginConfigDefaultsMap[AciDhcpDelay] = c.Network.AciNetworkProvider.DhcpDelay networkPluginConfigDefaultsMap[AciDhcpDelay] = c.Network.AciNetworkProvider.DhcpDelay
networkPluginConfigDefaultsMap[AciAciMultipod] = c.Network.AciNetworkProvider.AciMultipod networkPluginConfigDefaultsMap[AciAciMultipod] = c.Network.AciNetworkProvider.AciMultipod
networkPluginConfigDefaultsMap[AciOpflexDeviceReconnectWaitTimeout] = c.Network.AciNetworkProvider.OpflexDeviceReconnectWaitTimeout
networkPluginConfigDefaultsMap[AciAciMultipodUbuntu] = c.Network.AciNetworkProvider.AciMultipodUbuntu networkPluginConfigDefaultsMap[AciAciMultipodUbuntu] = c.Network.AciNetworkProvider.AciMultipodUbuntu
networkPluginConfigDefaultsMap[AciSystemIdentifier] = c.Network.AciNetworkProvider.SystemIdentifier networkPluginConfigDefaultsMap[AciSystemIdentifier] = c.Network.AciNetworkProvider.SystemIdentifier
networkPluginConfigDefaultsMap[AciToken] = c.Network.AciNetworkProvider.Token networkPluginConfigDefaultsMap[AciToken] = c.Network.AciNetworkProvider.Token
@ -979,6 +995,21 @@ func (c *Cluster) setClusterNetworkDefaults() {
networkPluginConfigDefaultsMap[AciOverlayVRFName] = c.Network.AciNetworkProvider.OverlayVRFName networkPluginConfigDefaultsMap[AciOverlayVRFName] = c.Network.AciNetworkProvider.OverlayVRFName
networkPluginConfigDefaultsMap[AciGbpPodSubnet] = c.Network.AciNetworkProvider.GbpPodSubnet networkPluginConfigDefaultsMap[AciGbpPodSubnet] = c.Network.AciNetworkProvider.GbpPodSubnet
networkPluginConfigDefaultsMap[AciOpflexServerPort] = c.Network.AciNetworkProvider.OpflexServerPort networkPluginConfigDefaultsMap[AciOpflexServerPort] = c.Network.AciNetworkProvider.OpflexServerPort
networkPluginConfigDefaultsMap[AciUseSystemNodePriorityClass] = c.Network.AciNetworkProvider.UseSystemNodePriorityClass
networkPluginConfigDefaultsMap[AciAccProvisionOperatorMemoryRequest] = c.Network.AciNetworkProvider.AccProvisionOperatorMemoryRequest
networkPluginConfigDefaultsMap[AciAccProvisionOperatorMemoryLimit] = c.Network.AciNetworkProvider.AccProvisionOperatorMemoryLimit
networkPluginConfigDefaultsMap[AciAciContainersControllerMemoryRequest] = c.Network.AciNetworkProvider.AciContainersControllerMemoryRequest
networkPluginConfigDefaultsMap[AciAciContainersControllerMemoryLimit] = c.Network.AciNetworkProvider.AciContainersControllerMemoryLimit
networkPluginConfigDefaultsMap[AciAciContainersHostMemoryRequest] = c.Network.AciNetworkProvider.AciContainersHostMemoryRequest
networkPluginConfigDefaultsMap[AciAciContainersHostMemoryLimit] = c.Network.AciNetworkProvider.AciContainersHostMemoryLimit
networkPluginConfigDefaultsMap[AciAciContainersOperatorMemoryRequest] = c.Network.AciNetworkProvider.AciContainersOperatorMemoryRequest
networkPluginConfigDefaultsMap[AciAciContainersOperatorMemoryLimit] = c.Network.AciNetworkProvider.AciContainersOperatorMemoryLimit
networkPluginConfigDefaultsMap[AciMcastDaemonMemoryRequest] = c.Network.AciNetworkProvider.McastDaemonMemoryRequest
networkPluginConfigDefaultsMap[AciMcastDaemonMemoryLimit] = c.Network.AciNetworkProvider.McastDaemonMemoryLimit
networkPluginConfigDefaultsMap[AciOpflexAgentMemoryRequest] = c.Network.AciNetworkProvider.OpflexAgentMemoryRequest
networkPluginConfigDefaultsMap[AciOpflexAgentMemoryLimit] = c.Network.AciNetworkProvider.OpflexAgentMemoryLimit
networkPluginConfigDefaultsMap[AciAciContainersMemoryRequest] = c.Network.AciNetworkProvider.AciContainersMemoryRequest
networkPluginConfigDefaultsMap[AciAciContainersMemoryLimit] = c.Network.AciNetworkProvider.AciContainersMemoryLimit
} }
for k, v := range networkPluginConfigDefaultsMap { for k, v := range networkPluginConfigDefaultsMap {
setDefaultIfEmptyMapValue(c.Network.Options, k, v) setDefaultIfEmptyMapValue(c.Network.Options, k, v)

View File

@ -75,90 +75,107 @@ const (
WeaveNetworkAppName = "weave-net" WeaveNetworkAppName = "weave-net"
WeaveNetPriorityClassNameKeyName = "weave_net_priority_class_name" WeaveNetPriorityClassNameKeyName = "weave_net_priority_class_name"
AciNetworkPlugin = "aci" AciNetworkPlugin = "aci"
AciOVSMemoryLimit = "aci_ovs_memory_limit" AciOVSMemoryLimit = "aci_ovs_memory_limit"
AciImagePullPolicy = "aci_image_pull_policy" AciOVSMemoryRequest = "aci_ovs_memory_request"
AciPBRTrackingNonSnat = "aci_pbr_tracking_non_snat" AciImagePullPolicy = "aci_image_pull_policy"
AciInstallIstio = "aci_install_istio" AciPBRTrackingNonSnat = "aci_pbr_tracking_non_snat"
AciIstioProfile = "aci_istio_profile" AciInstallIstio = "aci_install_istio"
AciDropLogEnable = "aci_drop_log_enable" AciIstioProfile = "aci_istio_profile"
AciControllerLogLevel = "aci_controller_log_level" AciDropLogEnable = "aci_drop_log_enable"
AciHostAgentLogLevel = "aci_host_agent_log_level" AciControllerLogLevel = "aci_controller_log_level"
AciOpflexAgentLogLevel = "aci_opflex_agent_log_level" AciHostAgentLogLevel = "aci_host_agent_log_level"
AciApicRefreshTime = "aci_apic_refresh_time" AciOpflexAgentLogLevel = "aci_opflex_agent_log_level"
AciServiceMonitorInterval = "aci_server_monitor_interval" AciApicRefreshTime = "aci_apic_refresh_time"
AciSystemIdentifier = "aci_system_identifier" AciServiceMonitorInterval = "aci_server_monitor_interval"
AciToken = "aci_token" AciSystemIdentifier = "aci_system_identifier"
AciApicUserName = "aci_apic_user_name" AciToken = "aci_token"
AciApicUserKey = "aci_apic_user_key" AciApicUserName = "aci_apic_user_name"
AciApicUserCrt = "aci_apic_user_crt" AciApicUserKey = "aci_apic_user_key"
AciVmmDomain = "aci_vmm_domain" AciApicUserCrt = "aci_apic_user_crt"
AciVmmController = "aci_vmm_controller" AciVmmDomain = "aci_vmm_domain"
AciEncapType = "aci_encap_type" AciVmmController = "aci_vmm_controller"
AciAEP = "aci_aep" AciEncapType = "aci_encap_type"
AciVRFName = "aci_vrf_name" AciAEP = "aci_aep"
AciVRFTenant = "aci_vrf_tenant" AciVRFName = "aci_vrf_name"
AciL3Out = "aci_l3out" AciVRFTenant = "aci_vrf_tenant"
AciDynamicExternalSubnet = "aci_dynamic_external_subnet" AciL3Out = "aci_l3out"
AciStaticExternalSubnet = "aci_static_external_subnet" AciDynamicExternalSubnet = "aci_dynamic_external_subnet"
AciServiceGraphSubnet = "aci_service_graph_subnet" AciStaticExternalSubnet = "aci_static_external_subnet"
AciKubeAPIVlan = "aci_kubeapi_vlan" AciServiceGraphSubnet = "aci_service_graph_subnet"
AciServiceVlan = "aci_service_vlan" AciKubeAPIVlan = "aci_kubeapi_vlan"
AciInfraVlan = "aci_infra_vlan" AciServiceVlan = "aci_service_vlan"
AciImagePullSecret = "aci_image_pull_secret" AciInfraVlan = "aci_infra_vlan"
AciTenant = "aci_tenant" AciImagePullSecret = "aci_image_pull_secret"
AciNodeSubnet = "aci_node_subnet" AciTenant = "aci_tenant"
AciMcastRangeStart = "aci_mcast_range_start" AciNodeSubnet = "aci_node_subnet"
AciMcastRangeEnd = "aci_mcast_range_end" AciMcastRangeStart = "aci_mcast_range_start"
AciUseAciCniPriorityClass = "aci_use_aci_cni_priority_class" AciMcastRangeEnd = "aci_mcast_range_end"
AciNoPriorityClass = "aci_no_priority_class" AciUseAciCniPriorityClass = "aci_use_aci_cni_priority_class"
AciMaxNodesSvcGraph = "aci_max_nodes_svc_graph" AciNoPriorityClass = "aci_no_priority_class"
AciSnatContractScope = "aci_snat_contract_scope" AciMaxNodesSvcGraph = "aci_max_nodes_svc_graph"
AciPodSubnetChunkSize = "aci_pod_subnet_chunk_size" AciSnatContractScope = "aci_snat_contract_scope"
AciEnableEndpointSlice = "aci_enable_endpoint_slice" AciPodSubnetChunkSize = "aci_pod_subnet_chunk_size"
AciSnatNamespace = "aci_snat_namespace" AciEnableEndpointSlice = "aci_enable_endpoint_slice"
AciEpRegistry = "aci_ep_registry" AciSnatNamespace = "aci_snat_namespace"
AciOpflexMode = "aci_opflex_mode" AciEpRegistry = "aci_ep_registry"
AciSnatPortRangeStart = "aci_snat_port_range_start" AciOpflexMode = "aci_opflex_mode"
AciSnatPortRangeEnd = "aci_snat_port_range_end" AciSnatPortRangeStart = "aci_snat_port_range_start"
AciSnatPortsPerNode = "aci_snat_ports_per_node" AciSnatPortRangeEnd = "aci_snat_port_range_end"
AciOpflexClientSSL = "aci_opflex_client_ssl" AciSnatPortsPerNode = "aci_snat_ports_per_node"
AciUsePrivilegedContainer = "aci_use_privileged_container" AciOpflexClientSSL = "aci_opflex_client_ssl"
AciUseHostNetnsVolume = "aci_use_host_netns_volume" AciUsePrivilegedContainer = "aci_use_privileged_container"
AciUseOpflexServerVolume = "aci_use_opflex_server_volume" AciUseHostNetnsVolume = "aci_use_host_netns_volume"
AciKafkaClientCrt = "aci_kafka_client_crt" AciUseOpflexServerVolume = "aci_use_opflex_server_volume"
AciKafkaClientKey = "aci_kafka_client_key" AciKafkaClientCrt = "aci_kafka_client_crt"
AciSubnetDomainName = "aci_subnet_domain_name" AciKafkaClientKey = "aci_kafka_client_key"
AciCApic = "aci_capic" AciSubnetDomainName = "aci_subnet_domain_name"
AciUseAciAnywhereCRD = "aci_use_aci_anywhere_crd" AciCApic = "aci_capic"
AciOverlayVRFName = "aci_overlay_vrf_name" AciUseAciAnywhereCRD = "aci_use_aci_anywhere_crd"
AciGbpPodSubnet = "aci_gbp_pod_subnet" AciOverlayVRFName = "aci_overlay_vrf_name"
AciRunGbpContainer = "aci_run_gbp_container" AciGbpPodSubnet = "aci_gbp_pod_subnet"
AciRunOpflexServerContainer = "aci_run_opflex_server_container" AciRunGbpContainer = "aci_run_gbp_container"
AciOpflexServerPort = "aci_opflex_server_port" AciRunOpflexServerContainer = "aci_run_opflex_server_container"
AciDurationWaitForNetwork = "aci_duration_wait_for_network" AciOpflexServerPort = "aci_opflex_server_port"
AciDisableWaitForNetwork = "aci_disable_wait_for_network" AciDurationWaitForNetwork = "aci_duration_wait_for_network"
AciUseClusterRole = "aci_use_cluster_role" AciDisableWaitForNetwork = "aci_disable_wait_for_network"
AciApicSubscriptionDelay = "aci_apic_subscription_delay" AciUseClusterRole = "aci_use_cluster_role"
AciApicRefreshTickerAdjust = "aci_apic_refresh_ticker_adjust" AciApicSubscriptionDelay = "aci_apic_subscription_delay"
AciDisablePeriodicSnatGlobalInfoSync = "aci_disable_periodic_snat_global_info_sync" AciApicRefreshTickerAdjust = "aci_apic_refresh_ticker_adjust"
AciOpflexDeviceDeleteTimeout = "aci_opflex_device_delete_timeout" AciDisablePeriodicSnatGlobalInfoSync = "aci_disable_periodic_snat_global_info_sync"
AciMTUHeadRoom = "aci_mtu_head_room" AciOpflexDeviceDeleteTimeout = "aci_opflex_device_delete_timeout"
AciNodePodIfEnable = "aci_node_pod_if_enable" AciMTUHeadRoom = "aci_mtu_head_room"
AciSriovEnable = "aci_sriov_enable" AciNodePodIfEnable = "aci_node_pod_if_enable"
AciMultusDisable = "aci_multus_disable" AciSriovEnable = "aci_sriov_enable"
AciNoWaitForServiceEpReadiness = "aci_no_wait_for_service_ep_readiness" AciMultusDisable = "aci_multus_disable"
AciAddExternalSubnetsToRdconfig = "aci_add_external_subnets_to_rdconfig" AciNoWaitForServiceEpReadiness = "aci_no_wait_for_service_ep_readiness"
AciServiceGraphEndpointAddDelay = "aci_service_graph_endpoint_add_delay" AciAddExternalSubnetsToRdconfig = "aci_add_external_subnets_to_rdconfig"
AciHppOptimization = "aci_hpp_optimization" AciServiceGraphEndpointAddDelay = "aci_service_graph_endpoint_add_delay"
AciSleepTimeSnatGlobalInfoSync = "aci_sleep_time_snat_global_info_sync" AciHppOptimization = "aci_hpp_optimization"
AciOpflexAgentOpflexAsyncjsonEnabled = "aci_opflex_agent_opflex_asyncjson_enabled" AciSleepTimeSnatGlobalInfoSync = "aci_sleep_time_snat_global_info_sync"
AciOpflexAgentOvsAsyncjsonEnabled = "aci_opflex_agent_ovs_asyncjson_enabled" AciOpflexAgentOpflexAsyncjsonEnabled = "aci_opflex_agent_opflex_asyncjson_enabled"
AciOpflexAgentPolicyRetryDelayTimer = "aci_opflex_agent_policy_retry_delay_timer" AciOpflexAgentOvsAsyncjsonEnabled = "aci_opflex_agent_ovs_asyncjson_enabled"
AciAciMultipod = "aci_aci_multipod" AciOpflexAgentPolicyRetryDelayTimer = "aci_opflex_agent_policy_retry_delay_timer"
AciAciMultipodUbuntu = "aci_aci_multipod_ubuntu" AciAciMultipod = "aci_aci_multipod"
AciDhcpRenewMaxRetryCount = "aci_dhcp_renew_max_retry_count" AciOpflexDeviceReconnectWaitTimeout = "aci_opflex_device_reconnect_wait_timeout"
AciDhcpDelay = "aci_dhcp_delay" AciAciMultipodUbuntu = "aci_aci_multipod_ubuntu"
AciDhcpRenewMaxRetryCount = "aci_dhcp_renew_max_retry_count"
AciDhcpDelay = "aci_dhcp_delay"
AciUseSystemNodePriorityClass = "aci_use_system_node_priority_class"
AciAccProvisionOperatorMemoryRequest = "aci_acc_provision_operator_memory_request"
AciAccProvisionOperatorMemoryLimit = "aci_acc_provision_operator_memory_limit"
AciAciContainersControllerMemoryRequest = "aci_aci_containers_controller_memory_request"
AciAciContainersControllerMemoryLimit = "aci_aci_containers_controller_memory_limit"
AciAciContainersHostMemoryRequest = "aci_aci_containers_host_memory_request"
AciAciContainersHostMemoryLimit = "aci_aci_containers_host_memory_limit"
AciAciContainersOperatorMemoryRequest = "aci_aci_containers_operator_memory_request"
AciAciContainersOperatorMemoryLimit = "aci_aci_containers_operator_memory_limit"
AciMcastDaemonMemoryRequest = "aci_mcast_daemon_memory_request"
AciMcastDaemonMemoryLimit = "aci_mcast_daemon_memory_limit"
AciOpflexAgentMemoryRequest = "aci_opflex_agent_memory_request"
AciOpflexAgentMemoryLimit = "aci_opflex_agent_memory_limit"
AciAciContainersMemoryRequest = "aci_aci_containers_memory_request"
AciAciContainersMemoryLimit = "aci_aci_containers_memory_limit"
// List of map keys to be used with network templates // List of map keys to be used with network templates
// EtcdEndpoints is the server address for Etcd, used by calico // EtcdEndpoints is the server address for Etcd, used by calico
@ -303,14 +320,31 @@ const (
OpflexAgentOvsAsyncjsonEnabled = "OpflexAgentOvsAsyncjsonEnabled" OpflexAgentOvsAsyncjsonEnabled = "OpflexAgentOvsAsyncjsonEnabled"
OpflexAgentPolicyRetryDelayTimer = "OpflexAgentPolicyRetryDelayTimer" OpflexAgentPolicyRetryDelayTimer = "OpflexAgentPolicyRetryDelayTimer"
AciMultipod = "AciMultipod" AciMultipod = "AciMultipod"
OpflexDeviceReconnectWaitTimeout = "OpflexDeviceReconnectWaitTimeout"
AciMultipodUbuntu = "AciMultipodUbuntu" AciMultipodUbuntu = "AciMultipodUbuntu"
DhcpRenewMaxRetryCount = "DhcpRenewMaxRetryCount" DhcpRenewMaxRetryCount = "DhcpRenewMaxRetryCount"
DhcpDelay = "DhcpDelay" DhcpDelay = "DhcpDelay"
OVSMemoryLimit = "OVSMemoryLimit" OVSMemoryLimit = "OVSMemoryLimit"
OVSMemoryRequest = "OVSMemoryRequest"
NodeSubnet = "NodeSubnet" NodeSubnet = "NodeSubnet"
NodeSelector = "NodeSelector" NodeSelector = "NodeSelector"
UpdateStrategy = "UpdateStrategy" UpdateStrategy = "UpdateStrategy"
Tolerations = "Tolerations" Tolerations = "Tolerations"
UseSystemNodePriorityClass = "UseSystemNodePriorityClass"
AccProvisionOperatorMemoryRequest = "AccProvisionOperatorMemoryRequest"
AccProvisionOperatorMemoryLimit = "AccProvisionOperatorMemoryLimit"
AciContainersControllerMemoryRequest = "AciContainersControllerMemoryRequest"
AciContainersControllerMemoryLimit = "AciContainersControllerMemoryLimit"
AciContainersHostMemoryRequest = "AciContainersHostMemoryRequest"
AciContainersHostMemoryLimit = "AciContainersHostMemoryLimit"
AciContainersOperatorMemoryRequest = "AciContainersOperatorMemoryRequest"
AciContainersOperatorMemoryLimit = "AciContainersOperatorMemoryLimit"
McastDaemonMemoryRequest = "McastDaemonMemoryRequest"
McastDaemonMemoryLimit = "McastDaemonMemoryLimit"
OpflexAgentMemoryRequest = "OpflexAgentMemoryRequest"
OpflexAgentMemoryLimit = "OpflexAgentMemoryLimit"
AciContainersMemoryRequest = "AciContainersMemoryRequest"
AciContainersMemoryLimit = "AciContainersMemoryLimit"
) )
type IPPool struct { type IPPool struct {
@ -562,110 +596,127 @@ func (c *Cluster) doAciDeploy(ctx context.Context, data map[string]interface{})
} }
AciConfig := map[string]interface{}{ AciConfig := map[string]interface{}{
SystemIdentifier: c.Network.Options[AciSystemIdentifier], SystemIdentifier: c.Network.Options[AciSystemIdentifier],
ApicHosts: c.Network.AciNetworkProvider.ApicHosts, ApicHosts: c.Network.AciNetworkProvider.ApicHosts,
Token: c.Network.Options[AciToken], Token: c.Network.Options[AciToken],
ApicUserName: c.Network.Options[AciApicUserName], ApicUserName: c.Network.Options[AciApicUserName],
ApicUserKey: c.Network.Options[AciApicUserKey], ApicUserKey: c.Network.Options[AciApicUserKey],
ApicUserCrt: c.Network.Options[AciApicUserCrt], ApicUserCrt: c.Network.Options[AciApicUserCrt],
ApicRefreshTime: c.Network.Options[AciApicRefreshTime], ApicRefreshTime: c.Network.Options[AciApicRefreshTime],
VmmDomain: c.Network.Options[AciVmmDomain], VmmDomain: c.Network.Options[AciVmmDomain],
VmmController: c.Network.Options[AciVmmController], VmmController: c.Network.Options[AciVmmController],
EncapType: c.Network.Options[AciEncapType], EncapType: c.Network.Options[AciEncapType],
McastRangeStart: c.Network.Options[AciMcastRangeStart], McastRangeStart: c.Network.Options[AciMcastRangeStart],
McastRangeEnd: c.Network.Options[AciMcastRangeEnd], McastRangeEnd: c.Network.Options[AciMcastRangeEnd],
NodeSubnet: nodeSubnets, NodeSubnet: nodeSubnets,
AEP: c.Network.Options[AciAEP], AEP: c.Network.Options[AciAEP],
VRFName: c.Network.Options[AciVRFName], VRFName: c.Network.Options[AciVRFName],
VRFTenant: c.Network.Options[AciVRFTenant], VRFTenant: c.Network.Options[AciVRFTenant],
L3Out: c.Network.Options[AciL3Out], L3Out: c.Network.Options[AciL3Out],
L3OutExternalNetworks: c.Network.AciNetworkProvider.L3OutExternalNetworks, L3OutExternalNetworks: c.Network.AciNetworkProvider.L3OutExternalNetworks,
DynamicExternalSubnet: dynamicExtern, DynamicExternalSubnet: dynamicExtern,
StaticExternalSubnet: staticExtern, StaticExternalSubnet: staticExtern,
ServiceGraphSubnet: c.Network.Options[AciServiceGraphSubnet], ServiceGraphSubnet: c.Network.Options[AciServiceGraphSubnet],
KubeAPIVlan: c.Network.Options[AciKubeAPIVlan], KubeAPIVlan: c.Network.Options[AciKubeAPIVlan],
ServiceVlan: c.Network.Options[AciServiceVlan], ServiceVlan: c.Network.Options[AciServiceVlan],
InfraVlan: c.Network.Options[AciInfraVlan], InfraVlan: c.Network.Options[AciInfraVlan],
ImagePullPolicy: c.Network.Options[AciImagePullPolicy], ImagePullPolicy: c.Network.Options[AciImagePullPolicy],
ImagePullSecret: c.Network.Options[AciImagePullSecret], ImagePullSecret: c.Network.Options[AciImagePullSecret],
Tenant: c.Network.Options[AciTenant], Tenant: c.Network.Options[AciTenant],
ServiceMonitorInterval: c.Network.Options[AciServiceMonitorInterval], ServiceMonitorInterval: c.Network.Options[AciServiceMonitorInterval],
PBRTrackingNonSnat: c.Network.Options[AciPBRTrackingNonSnat], PBRTrackingNonSnat: c.Network.Options[AciPBRTrackingNonSnat],
InstallIstio: c.Network.Options[AciInstallIstio], InstallIstio: c.Network.Options[AciInstallIstio],
IstioProfile: c.Network.Options[AciIstioProfile], IstioProfile: c.Network.Options[AciIstioProfile],
DropLogEnable: c.Network.Options[AciDropLogEnable], DropLogEnable: c.Network.Options[AciDropLogEnable],
ControllerLogLevel: c.Network.Options[AciControllerLogLevel], ControllerLogLevel: c.Network.Options[AciControllerLogLevel],
HostAgentLogLevel: c.Network.Options[AciHostAgentLogLevel], HostAgentLogLevel: c.Network.Options[AciHostAgentLogLevel],
OpflexAgentLogLevel: c.Network.Options[AciOpflexAgentLogLevel], OpflexAgentLogLevel: c.Network.Options[AciOpflexAgentLogLevel],
OVSMemoryLimit: c.Network.Options[AciOVSMemoryLimit], OVSMemoryLimit: c.Network.Options[AciOVSMemoryLimit],
ClusterCIDR: c.ClusterCIDR, OVSMemoryRequest: c.Network.Options[AciOVSMemoryRequest],
PodNetwork: podNetwork, ClusterCIDR: c.ClusterCIDR,
PodIPPool: podIPPool, PodNetwork: podNetwork,
StaticServiceIPPool: staticServiceIPPool, PodIPPool: podIPPool,
ServiceIPPool: serviceIPPool, StaticServiceIPPool: staticServiceIPPool,
PodSubnet: podSubnet, ServiceIPPool: serviceIPPool,
NodeServiceIPStart: cidr.Inc(cidr.Inc(nodeServiceIPStart)), PodSubnet: podSubnet,
NodeServiceIPEnd: cidr.Dec(nodeServiceIPEnd), NodeServiceIPStart: cidr.Inc(cidr.Inc(nodeServiceIPStart)),
UseAciCniPriorityClass: c.Network.Options[AciUseAciCniPriorityClass], NodeServiceIPEnd: cidr.Dec(nodeServiceIPEnd),
NoPriorityClass: c.Network.Options[AciNoPriorityClass], UseAciCniPriorityClass: c.Network.Options[AciUseAciCniPriorityClass],
MaxNodesSvcGraph: c.Network.Options[AciMaxNodesSvcGraph], NoPriorityClass: c.Network.Options[AciNoPriorityClass],
SnatContractScope: c.Network.Options[AciSnatContractScope], MaxNodesSvcGraph: c.Network.Options[AciMaxNodesSvcGraph],
PodSubnetChunkSize: c.Network.Options[AciPodSubnetChunkSize], SnatContractScope: c.Network.Options[AciSnatContractScope],
EnableEndpointSlice: c.Network.Options[AciEnableEndpointSlice], PodSubnetChunkSize: c.Network.Options[AciPodSubnetChunkSize],
SnatNamespace: c.Network.Options[AciSnatNamespace], EnableEndpointSlice: c.Network.Options[AciEnableEndpointSlice],
EpRegistry: c.Network.Options[AciEpRegistry], SnatNamespace: c.Network.Options[AciSnatNamespace],
OpflexMode: c.Network.Options[AciOpflexMode], EpRegistry: c.Network.Options[AciEpRegistry],
SnatPortRangeStart: c.Network.Options[AciSnatPortRangeStart], OpflexMode: c.Network.Options[AciOpflexMode],
SnatPortRangeEnd: c.Network.Options[AciSnatPortRangeEnd], SnatPortRangeStart: c.Network.Options[AciSnatPortRangeStart],
SnatPortsPerNode: c.Network.Options[AciSnatPortsPerNode], SnatPortRangeEnd: c.Network.Options[AciSnatPortRangeEnd],
OpflexClientSSL: c.Network.Options[AciOpflexClientSSL], SnatPortsPerNode: c.Network.Options[AciSnatPortsPerNode],
UsePrivilegedContainer: c.Network.Options[AciUsePrivilegedContainer], OpflexClientSSL: c.Network.Options[AciOpflexClientSSL],
UseHostNetnsVolume: c.Network.Options[AciUseHostNetnsVolume], UsePrivilegedContainer: c.Network.Options[AciUsePrivilegedContainer],
UseOpflexServerVolume: c.Network.Options[AciUseOpflexServerVolume], UseHostNetnsVolume: c.Network.Options[AciUseHostNetnsVolume],
KafkaBrokers: c.Network.AciNetworkProvider.KafkaBrokers, UseOpflexServerVolume: c.Network.Options[AciUseOpflexServerVolume],
KafkaClientCrt: c.Network.Options[AciKafkaClientCrt], KafkaBrokers: c.Network.AciNetworkProvider.KafkaBrokers,
KafkaClientKey: c.Network.Options[AciKafkaClientKey], KafkaClientCrt: c.Network.Options[AciKafkaClientCrt],
SubnetDomainName: c.Network.Options[AciSubnetDomainName], KafkaClientKey: c.Network.Options[AciKafkaClientKey],
CApic: c.Network.Options[AciCApic], SubnetDomainName: c.Network.Options[AciSubnetDomainName],
UseAciAnywhereCRD: c.Network.Options[AciUseAciAnywhereCRD], CApic: c.Network.Options[AciCApic],
OverlayVRFName: c.Network.Options[AciOverlayVRFName], UseAciAnywhereCRD: c.Network.Options[AciUseAciAnywhereCRD],
GbpPodSubnet: c.Network.Options[AciGbpPodSubnet], OverlayVRFName: c.Network.Options[AciOverlayVRFName],
RunGbpContainer: c.Network.Options[AciRunGbpContainer], GbpPodSubnet: c.Network.Options[AciGbpPodSubnet],
RunOpflexServerContainer: c.Network.Options[AciRunOpflexServerContainer], RunGbpContainer: c.Network.Options[AciRunGbpContainer],
OpflexServerPort: c.Network.Options[AciOpflexServerPort], RunOpflexServerContainer: c.Network.Options[AciRunOpflexServerContainer],
DurationWaitForNetwork: c.Network.Options[AciDurationWaitForNetwork], OpflexServerPort: c.Network.Options[AciOpflexServerPort],
DisableWaitForNetwork: c.Network.Options[AciDisableWaitForNetwork], DurationWaitForNetwork: c.Network.Options[AciDurationWaitForNetwork],
UseClusterRole: c.Network.Options[AciUseClusterRole], DisableWaitForNetwork: c.Network.Options[AciDisableWaitForNetwork],
ApicSubscriptionDelay: c.Network.Options[AciApicSubscriptionDelay], UseClusterRole: c.Network.Options[AciUseClusterRole],
ApicRefreshTickerAdjust: c.Network.Options[AciApicRefreshTickerAdjust], ApicSubscriptionDelay: c.Network.Options[AciApicSubscriptionDelay],
DisablePeriodicSnatGlobalInfoSync: c.Network.Options[AciDisablePeriodicSnatGlobalInfoSync], ApicRefreshTickerAdjust: c.Network.Options[AciApicRefreshTickerAdjust],
OpflexDeviceDeleteTimeout: c.Network.Options[AciOpflexDeviceDeleteTimeout], DisablePeriodicSnatGlobalInfoSync: c.Network.Options[AciDisablePeriodicSnatGlobalInfoSync],
MTUHeadRoom: c.Network.Options[AciMTUHeadRoom], OpflexDeviceDeleteTimeout: c.Network.Options[AciOpflexDeviceDeleteTimeout],
NodePodIfEnable: c.Network.Options[AciNodePodIfEnable], MTUHeadRoom: c.Network.Options[AciMTUHeadRoom],
SriovEnable: c.Network.Options[AciSriovEnable], NodePodIfEnable: c.Network.Options[AciNodePodIfEnable],
MultusDisable: c.Network.Options[AciMultusDisable], SriovEnable: c.Network.Options[AciSriovEnable],
NoWaitForServiceEpReadiness: c.Network.Options[AciNoWaitForServiceEpReadiness], MultusDisable: c.Network.Options[AciMultusDisable],
AddExternalSubnetsToRdconfig: c.Network.Options[AciAddExternalSubnetsToRdconfig], NoWaitForServiceEpReadiness: c.Network.Options[AciNoWaitForServiceEpReadiness],
ServiceGraphEndpointAddDelay: c.Network.Options[AciServiceGraphEndpointAddDelay], AddExternalSubnetsToRdconfig: c.Network.Options[AciAddExternalSubnetsToRdconfig],
ServiceGraphEndpointAddServices: c.Network.AciNetworkProvider.ServiceGraphEndpointAddServices, ServiceGraphEndpointAddDelay: c.Network.Options[AciServiceGraphEndpointAddDelay],
HppOptimization: c.Network.Options[AciHppOptimization], ServiceGraphEndpointAddServices: c.Network.AciNetworkProvider.ServiceGraphEndpointAddServices,
SleepTimeSnatGlobalInfoSync: c.Network.Options[AciSleepTimeSnatGlobalInfoSync], HppOptimization: c.Network.Options[AciHppOptimization],
OpflexAgentOpflexAsyncjsonEnabled: c.Network.Options[AciOpflexAgentOpflexAsyncjsonEnabled], SleepTimeSnatGlobalInfoSync: c.Network.Options[AciSleepTimeSnatGlobalInfoSync],
OpflexAgentOvsAsyncjsonEnabled: c.Network.Options[AciOpflexAgentOvsAsyncjsonEnabled], OpflexAgentOpflexAsyncjsonEnabled: c.Network.Options[AciOpflexAgentOpflexAsyncjsonEnabled],
OpflexAgentPolicyRetryDelayTimer: c.Network.Options[AciOpflexAgentPolicyRetryDelayTimer], OpflexAgentOvsAsyncjsonEnabled: c.Network.Options[AciOpflexAgentOvsAsyncjsonEnabled],
AciMultipod: c.Network.Options[AciAciMultipod], OpflexAgentPolicyRetryDelayTimer: c.Network.Options[AciOpflexAgentPolicyRetryDelayTimer],
AciMultipodUbuntu: c.Network.Options[AciAciMultipodUbuntu], AciMultipod: c.Network.Options[AciAciMultipod],
DhcpRenewMaxRetryCount: c.Network.Options[AciDhcpRenewMaxRetryCount], OpflexDeviceReconnectWaitTimeout: c.Network.Options[AciOpflexDeviceReconnectWaitTimeout],
DhcpDelay: c.Network.Options[AciDhcpDelay], AciMultipodUbuntu: c.Network.Options[AciAciMultipodUbuntu],
AciCniDeployContainer: c.SystemImages.AciCniDeployContainer, DhcpRenewMaxRetryCount: c.Network.Options[AciDhcpRenewMaxRetryCount],
AciHostContainer: c.SystemImages.AciHostContainer, DhcpDelay: c.Network.Options[AciDhcpDelay],
AciOpflexContainer: c.SystemImages.AciOpflexContainer, UseSystemNodePriorityClass: c.Network.Options[AciUseSystemNodePriorityClass],
AciMcastContainer: c.SystemImages.AciMcastContainer, AccProvisionOperatorMemoryRequest: c.Network.Options[AciAccProvisionOperatorMemoryRequest],
AciOpenvSwitchContainer: c.SystemImages.AciOpenvSwitchContainer, AccProvisionOperatorMemoryLimit: c.Network.Options[AciAccProvisionOperatorMemoryLimit],
AciControllerContainer: c.SystemImages.AciControllerContainer, AciContainersControllerMemoryRequest: c.Network.Options[AciAciContainersControllerMemoryRequest],
AciGbpServerContainer: c.SystemImages.AciGbpServerContainer, AciContainersControllerMemoryLimit: c.Network.Options[AciAciContainersControllerMemoryLimit],
AciOpflexServerContainer: c.SystemImages.AciOpflexServerContainer, AciContainersHostMemoryRequest: c.Network.Options[AciAciContainersHostMemoryRequest],
MTU: c.Network.MTU, AciContainersHostMemoryLimit: c.Network.Options[AciAciContainersHostMemoryLimit],
AciContainersOperatorMemoryRequest: c.Network.Options[AciAciContainersOperatorMemoryRequest],
AciContainersOperatorMemoryLimit: c.Network.Options[AciAciContainersOperatorMemoryLimit],
McastDaemonMemoryRequest: c.Network.Options[AciMcastDaemonMemoryRequest],
McastDaemonMemoryLimit: c.Network.Options[AciMcastDaemonMemoryLimit],
OpflexAgentMemoryRequest: c.Network.Options[AciOpflexAgentMemoryRequest],
OpflexAgentMemoryLimit: c.Network.Options[AciOpflexAgentMemoryLimit],
AciContainersMemoryRequest: c.Network.Options[AciAciContainersMemoryRequest],
AciContainersMemoryLimit: c.Network.Options[AciAciContainersMemoryLimit],
AciCniDeployContainer: c.SystemImages.AciCniDeployContainer,
AciHostContainer: c.SystemImages.AciHostContainer,
AciOpflexContainer: c.SystemImages.AciOpflexContainer,
AciMcastContainer: c.SystemImages.AciMcastContainer,
AciOpenvSwitchContainer: c.SystemImages.AciOpenvSwitchContainer,
AciControllerContainer: c.SystemImages.AciControllerContainer,
AciGbpServerContainer: c.SystemImages.AciGbpServerContainer,
AciOpflexServerContainer: c.SystemImages.AciOpflexServerContainer,
MTU: c.Network.MTU,
} }
pluginYaml, err := c.getNetworkPluginManifest(AciConfig, data) pluginYaml, err := c.getNetworkPluginManifest(AciConfig, data)

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -592,93 +592,110 @@ type WeaveNetworkProvider struct {
} }
type AciNetworkProvider struct { type AciNetworkProvider struct {
SystemIdentifier string `yaml:"system_id,omitempty" json:"systemId,omitempty"` SystemIdentifier string `yaml:"system_id,omitempty" json:"systemId,omitempty"`
ApicHosts []string `yaml:"apic_hosts" json:"apicHosts,omitempty"` ApicHosts []string `yaml:"apic_hosts" json:"apicHosts,omitempty"`
Token string `yaml:"token,omitempty" json:"token,omitempty"` Token string `yaml:"token,omitempty" json:"token,omitempty"`
ApicUserName string `yaml:"apic_user_name,omitempty" json:"apicUserName,omitempty"` ApicUserName string `yaml:"apic_user_name,omitempty" json:"apicUserName,omitempty"`
ApicUserKey string `yaml:"apic_user_key,omitempty" json:"apicUserKey,omitempty"` ApicUserKey string `yaml:"apic_user_key,omitempty" json:"apicUserKey,omitempty"`
ApicUserCrt string `yaml:"apic_user_crt,omitempty" json:"apicUserCrt,omitempty"` ApicUserCrt string `yaml:"apic_user_crt,omitempty" json:"apicUserCrt,omitempty"`
ApicRefreshTime string `yaml:"apic_refresh_time,omitempty" json:"apicRefreshTime,omitempty" norman:"default=1200"` ApicRefreshTime string `yaml:"apic_refresh_time,omitempty" json:"apicRefreshTime,omitempty" norman:"default=1200"`
VmmDomain string `yaml:"vmm_domain,omitempty" json:"vmmDomain,omitempty"` VmmDomain string `yaml:"vmm_domain,omitempty" json:"vmmDomain,omitempty"`
VmmController string `yaml:"vmm_controller,omitempty" json:"vmmController,omitempty"` VmmController string `yaml:"vmm_controller,omitempty" json:"vmmController,omitempty"`
EncapType string `yaml:"encap_type,omitempty" json:"encapType,omitempty"` EncapType string `yaml:"encap_type,omitempty" json:"encapType,omitempty"`
NodeSubnet string `yaml:"node_subnet,omitempty" json:"nodeSubnet,omitempty"` NodeSubnet string `yaml:"node_subnet,omitempty" json:"nodeSubnet,omitempty"`
McastRangeStart string `yaml:"mcast_range_start,omitempty" json:"mcastRangeStart,omitempty"` McastRangeStart string `yaml:"mcast_range_start,omitempty" json:"mcastRangeStart,omitempty"`
McastRangeEnd string `yaml:"mcast_range_end,omitempty" json:"mcastRangeEnd,omitempty"` McastRangeEnd string `yaml:"mcast_range_end,omitempty" json:"mcastRangeEnd,omitempty"`
AEP string `yaml:"aep,omitempty" json:"aep,omitempty"` AEP string `yaml:"aep,omitempty" json:"aep,omitempty"`
VRFName string `yaml:"vrf_name,omitempty" json:"vrfName,omitempty"` VRFName string `yaml:"vrf_name,omitempty" json:"vrfName,omitempty"`
VRFTenant string `yaml:"vrf_tenant,omitempty" json:"vrfTenant,omitempty"` VRFTenant string `yaml:"vrf_tenant,omitempty" json:"vrfTenant,omitempty"`
L3Out string `yaml:"l3out,omitempty" json:"l3out,omitempty"` L3Out string `yaml:"l3out,omitempty" json:"l3out,omitempty"`
L3OutExternalNetworks []string `yaml:"l3out_external_networks" json:"l3outExternalNetworks,omitempty"` L3OutExternalNetworks []string `yaml:"l3out_external_networks" json:"l3outExternalNetworks,omitempty"`
DynamicExternalSubnet string `yaml:"extern_dynamic,omitempty" json:"externDynamic,omitempty"` DynamicExternalSubnet string `yaml:"extern_dynamic,omitempty" json:"externDynamic,omitempty"`
StaticExternalSubnet string `yaml:"extern_static,omitempty" json:"externStatic,omitempty"` StaticExternalSubnet string `yaml:"extern_static,omitempty" json:"externStatic,omitempty"`
ServiceGraphSubnet string `yaml:"node_svc_subnet,omitempty" json:"nodeSvcSubnet,omitempty"` ServiceGraphSubnet string `yaml:"node_svc_subnet,omitempty" json:"nodeSvcSubnet,omitempty"`
KubeAPIVlan string `yaml:"kube_api_vlan,omitempty" json:"kubeApiVlan,omitempty"` KubeAPIVlan string `yaml:"kube_api_vlan,omitempty" json:"kubeApiVlan,omitempty"`
ServiceVlan string `yaml:"service_vlan,omitempty" json:"serviceVlan,omitempty"` ServiceVlan string `yaml:"service_vlan,omitempty" json:"serviceVlan,omitempty"`
InfraVlan string `yaml:"infra_vlan,omitempty" json:"infraVlan,omitempty"` InfraVlan string `yaml:"infra_vlan,omitempty" json:"infraVlan,omitempty"`
Tenant string `yaml:"tenant,omitempty" json:"tenant,omitempty"` Tenant string `yaml:"tenant,omitempty" json:"tenant,omitempty"`
OVSMemoryLimit string `yaml:"ovs_memory_limit,omitempty" json:"ovsMemoryLimit,omitempty"` OVSMemoryLimit string `yaml:"ovs_memory_limit,omitempty" json:"ovsMemoryLimit,omitempty"`
ImagePullPolicy string `yaml:"image_pull_policy,omitempty" json:"imagePullPolicy,omitempty"` OVSMemoryRequest string `yaml:"ovs_memory_request,omitempty" json:"ovsMemoryRequest,omitempty"`
ImagePullSecret string `yaml:"image_pull_secret,omitempty" json:"imagePullSecret,omitempty"` ImagePullPolicy string `yaml:"image_pull_policy,omitempty" json:"imagePullPolicy,omitempty"`
ServiceMonitorInterval string `yaml:"service_monitor_interval,omitempty" json:"serviceMonitorInterval,omitempty"` ImagePullSecret string `yaml:"image_pull_secret,omitempty" json:"imagePullSecret,omitempty"`
PBRTrackingNonSnat string `yaml:"pbr_tracking_non_snat,omitempty" json:"pbrTrackingNonSnat,omitempty"` ServiceMonitorInterval string `yaml:"service_monitor_interval,omitempty" json:"serviceMonitorInterval,omitempty"`
InstallIstio string `yaml:"install_istio,omitempty" json:"installIstio,omitempty"` PBRTrackingNonSnat string `yaml:"pbr_tracking_non_snat,omitempty" json:"pbrTrackingNonSnat,omitempty"`
IstioProfile string `yaml:"istio_profile,omitempty" json:"istioProfile,omitempty"` InstallIstio string `yaml:"install_istio,omitempty" json:"installIstio,omitempty"`
DropLogEnable string `yaml:"drop_log_enable,omitempty" json:"dropLogEnable,omitempty"` IstioProfile string `yaml:"istio_profile,omitempty" json:"istioProfile,omitempty"`
ControllerLogLevel string `yaml:"controller_log_level,omitempty" json:"controllerLogLevel,omitempty"` DropLogEnable string `yaml:"drop_log_enable,omitempty" json:"dropLogEnable,omitempty"`
HostAgentLogLevel string `yaml:"host_agent_log_level,omitempty" json:"hostAgentLogLevel,omitempty"` ControllerLogLevel string `yaml:"controller_log_level,omitempty" json:"controllerLogLevel,omitempty"`
OpflexAgentLogLevel string `yaml:"opflex_log_level,omitempty" json:"opflexLogLevel,omitempty"` HostAgentLogLevel string `yaml:"host_agent_log_level,omitempty" json:"hostAgentLogLevel,omitempty"`
UseAciCniPriorityClass string `yaml:"use_aci_cni_priority_class,omitempty" json:"useAciCniPriorityClass,omitempty"` OpflexAgentLogLevel string `yaml:"opflex_log_level,omitempty" json:"opflexLogLevel,omitempty"`
NoPriorityClass string `yaml:"no_priority_class,omitempty" json:"noPriorityClass,omitempty"` UseAciCniPriorityClass string `yaml:"use_aci_cni_priority_class,omitempty" json:"useAciCniPriorityClass,omitempty"`
MaxNodesSvcGraph string `yaml:"max_nodes_svc_graph,omitempty" json:"maxNodesSvcGraph,omitempty"` NoPriorityClass string `yaml:"no_priority_class,omitempty" json:"noPriorityClass,omitempty"`
SnatContractScope string `yaml:"snat_contract_scope,omitempty" json:"snatContractScope,omitempty"` MaxNodesSvcGraph string `yaml:"max_nodes_svc_graph,omitempty" json:"maxNodesSvcGraph,omitempty"`
PodSubnetChunkSize string `yaml:"pod_subnet_chunk_size,omitempty" json:"podSubnetChunkSize,omitempty"` SnatContractScope string `yaml:"snat_contract_scope,omitempty" json:"snatContractScope,omitempty"`
EnableEndpointSlice string `yaml:"enable_endpoint_slice,omitempty" json:"enableEndpointSlice,omitempty"` PodSubnetChunkSize string `yaml:"pod_subnet_chunk_size,omitempty" json:"podSubnetChunkSize,omitempty"`
SnatNamespace string `yaml:"snat_namespace,omitempty" json:"snatNamespace,omitempty"` EnableEndpointSlice string `yaml:"enable_endpoint_slice,omitempty" json:"enableEndpointSlice,omitempty"`
EpRegistry string `yaml:"ep_registry,omitempty" json:"epRegistry,omitempty"` SnatNamespace string `yaml:"snat_namespace,omitempty" json:"snatNamespace,omitempty"`
OpflexMode string `yaml:"opflex_mode,omitempty" json:"opflexMode,omitempty"` EpRegistry string `yaml:"ep_registry,omitempty" json:"epRegistry,omitempty"`
SnatPortRangeStart string `yaml:"snat_port_range_start,omitempty" json:"snatPortRangeStart,omitempty"` OpflexMode string `yaml:"opflex_mode,omitempty" json:"opflexMode,omitempty"`
SnatPortRangeEnd string `yaml:"snat_port_range_end,omitempty" json:"snatPortRangeEnd,omitempty"` SnatPortRangeStart string `yaml:"snat_port_range_start,omitempty" json:"snatPortRangeStart,omitempty"`
SnatPortsPerNode string `yaml:"snat_ports_per_node,omitempty" json:"snatPortsPerNode,omitempty"` SnatPortRangeEnd string `yaml:"snat_port_range_end,omitempty" json:"snatPortRangeEnd,omitempty"`
OpflexClientSSL string `yaml:"opflex_client_ssl,omitempty" json:"opflexClientSsl,omitempty"` SnatPortsPerNode string `yaml:"snat_ports_per_node,omitempty" json:"snatPortsPerNode,omitempty"`
UsePrivilegedContainer string `yaml:"use_privileged_container,omitempty" json:"usePrivilegedContainer,omitempty"` OpflexClientSSL string `yaml:"opflex_client_ssl,omitempty" json:"opflexClientSsl,omitempty"`
UseHostNetnsVolume string `yaml:"use_host_netns_volume,omitempty" json:"useHostNetnsVolume,omitempty"` UsePrivilegedContainer string `yaml:"use_privileged_container,omitempty" json:"usePrivilegedContainer,omitempty"`
UseOpflexServerVolume string `yaml:"use_opflex_server_volume,omitempty" json:"useOpflexServerVolume,omitempty"` UseHostNetnsVolume string `yaml:"use_host_netns_volume,omitempty" json:"useHostNetnsVolume,omitempty"`
SubnetDomainName string `yaml:"subnet_domain_name,omitempty" json:"subnetDomainName,omitempty"` UseOpflexServerVolume string `yaml:"use_opflex_server_volume,omitempty" json:"useOpflexServerVolume,omitempty"`
KafkaBrokers []string `yaml:"kafka_brokers,omitempty" json:"kafkaBrokers,omitempty"` SubnetDomainName string `yaml:"subnet_domain_name,omitempty" json:"subnetDomainName,omitempty"`
KafkaClientCrt string `yaml:"kafka_client_crt,omitempty" json:"kafkaClientCrt,omitempty"` KafkaBrokers []string `yaml:"kafka_brokers,omitempty" json:"kafkaBrokers,omitempty"`
KafkaClientKey string `yaml:"kafka_client_key,omitempty" json:"kafkaClientKey,omitempty"` KafkaClientCrt string `yaml:"kafka_client_crt,omitempty" json:"kafkaClientCrt,omitempty"`
CApic string `yaml:"capic,omitempty" json:"capic,omitempty"` KafkaClientKey string `yaml:"kafka_client_key,omitempty" json:"kafkaClientKey,omitempty"`
UseAciAnywhereCRD string `yaml:"use_aci_anywhere_crd,omitempty" json:"useAciAnywhereCrd,omitempty"` CApic string `yaml:"capic,omitempty" json:"capic,omitempty"`
OverlayVRFName string `yaml:"overlay_vrf_name,omitempty" json:"overlayVrfName,omitempty"` UseAciAnywhereCRD string `yaml:"use_aci_anywhere_crd,omitempty" json:"useAciAnywhereCrd,omitempty"`
GbpPodSubnet string `yaml:"gbp_pod_subnet,omitempty" json:"gbpPodSubnet,omitempty"` OverlayVRFName string `yaml:"overlay_vrf_name,omitempty" json:"overlayVrfName,omitempty"`
RunGbpContainer string `yaml:"run_gbp_container,omitempty" json:"runGbpContainer,omitempty"` GbpPodSubnet string `yaml:"gbp_pod_subnet,omitempty" json:"gbpPodSubnet,omitempty"`
RunOpflexServerContainer string `yaml:"run_opflex_server_container,omitempty" json:"runOpflexServerContainer,omitempty"` RunGbpContainer string `yaml:"run_gbp_container,omitempty" json:"runGbpContainer,omitempty"`
OpflexServerPort string `yaml:"opflex_server_port,omitempty" json:"opflexServerPort,omitempty"` RunOpflexServerContainer string `yaml:"run_opflex_server_container,omitempty" json:"runOpflexServerContainer,omitempty"`
DurationWaitForNetwork string `yaml:"duration_wait_for_network,omitempty" json:"durationWaitForNetwork,omitempty"` OpflexServerPort string `yaml:"opflex_server_port,omitempty" json:"opflexServerPort,omitempty"`
DisableWaitForNetwork string `yaml:"disable_wait_for_network,omitempty" json:"disableWaitForNetwork,omitempty"` DurationWaitForNetwork string `yaml:"duration_wait_for_network,omitempty" json:"durationWaitForNetwork,omitempty"`
ApicSubscriptionDelay string `yaml:"apic_subscription_delay,omitempty" json:"apicSubscriptionDelay,omitempty"` DisableWaitForNetwork string `yaml:"disable_wait_for_network,omitempty" json:"disableWaitForNetwork,omitempty"`
ApicRefreshTickerAdjust string `yaml:"apic_refresh_ticker_adjust,omitempty" json:"apicRefreshTickerAdjust,omitempty"` ApicSubscriptionDelay string `yaml:"apic_subscription_delay,omitempty" json:"apicSubscriptionDelay,omitempty"`
DisablePeriodicSnatGlobalInfoSync string `yaml:"disable_periodic_snat_global_info_sync,omitempty" json:"disablePeriodicSnatGlobalInfoSync,omitempty"` ApicRefreshTickerAdjust string `yaml:"apic_refresh_ticker_adjust,omitempty" json:"apicRefreshTickerAdjust,omitempty"`
OpflexDeviceDeleteTimeout string `yaml:"opflex_device_delete_timeout,omitempty" json:"opflexDeviceDeleteTimeout,omitempty"` DisablePeriodicSnatGlobalInfoSync string `yaml:"disable_periodic_snat_global_info_sync,omitempty" json:"disablePeriodicSnatGlobalInfoSync,omitempty"`
MTUHeadRoom string `yaml:"mtu_head_room,omitempty" json:"mtuHeadRoom,omitempty"` OpflexDeviceDeleteTimeout string `yaml:"opflex_device_delete_timeout,omitempty" json:"opflexDeviceDeleteTimeout,omitempty"`
NodePodIfEnable string `yaml:"node_pod_if_enable,omitempty" json:"nodePodIfEnable,omitempty"` MTUHeadRoom string `yaml:"mtu_head_room,omitempty" json:"mtuHeadRoom,omitempty"`
SriovEnable string `yaml:"sriov_enable,omitempty" json:"sriovEnable,omitempty"` NodePodIfEnable string `yaml:"node_pod_if_enable,omitempty" json:"nodePodIfEnable,omitempty"`
MultusDisable string `yaml:"multus_disable,omitempty" json:"multusDisable,omitempty"` SriovEnable string `yaml:"sriov_enable,omitempty" json:"sriovEnable,omitempty"`
UseClusterRole string `yaml:"use_cluster_role,omitempty" json:"useClusterRole,omitempty"` MultusDisable string `yaml:"multus_disable,omitempty" json:"multusDisable,omitempty"`
NoWaitForServiceEpReadiness string `yaml:"no_wait_for_service_ep_readiness,omitempty" json:"noWaitForServiceEpReadiness,omitempty"` UseClusterRole string `yaml:"use_cluster_role,omitempty" json:"useClusterRole,omitempty"`
AddExternalSubnetsToRdconfig string `yaml:"add_external_subnets_to_rdconfig,omitempty" json:"addExternalSubnetsToRdconfig,omitempty"` NoWaitForServiceEpReadiness string `yaml:"no_wait_for_service_ep_readiness,omitempty" json:"noWaitForServiceEpReadiness,omitempty"`
ServiceGraphEndpointAddDelay string `yaml:"service_graph_endpoint_add_delay,omitempty" json:"serviceGraphEndpointAddDelay,omitempty"` AddExternalSubnetsToRdconfig string `yaml:"add_external_subnets_to_rdconfig,omitempty" json:"addExternalSubnetsToRdconfig,omitempty"`
ServiceGraphEndpointAddServices []map[string]string `yaml:"service_graph_endpoint_add_services,omitempty" json:"serviceGraphEndpointAddServices,omitempty"` ServiceGraphEndpointAddDelay string `yaml:"service_graph_endpoint_add_delay,omitempty" json:"serviceGraphEndpointAddDelay,omitempty"`
HppOptimization string `yaml:"hpp_optimization,omitempty" json:"hppOptimization,omitempty"` ServiceGraphEndpointAddServices []map[string]string `yaml:"service_graph_endpoint_add_services,omitempty" json:"serviceGraphEndpointAddServices,omitempty"`
SleepTimeSnatGlobalInfoSync string `yaml:"sleep_time_snat_global_info_sync,omitempty" json:"sleepTimeSnatGlobalInfoSync,omitempty"` HppOptimization string `yaml:"hpp_optimization,omitempty" json:"hppOptimization,omitempty"`
OpflexAgentOpflexAsyncjsonEnabled string `yaml:"opflex_agent_opflex_asyncjson_enabled,omitempty" json:"opflexAgentOpflexAsyncjsonEnabled,omitempty"` SleepTimeSnatGlobalInfoSync string `yaml:"sleep_time_snat_global_info_sync,omitempty" json:"sleepTimeSnatGlobalInfoSync,omitempty"`
OpflexAgentOvsAsyncjsonEnabled string `yaml:"opflex_agent_ovs_asyncjson_enabled,omitempty" json:"opflexAgentOvsAsyncjsonEnabled,omitempty"` OpflexAgentOpflexAsyncjsonEnabled string `yaml:"opflex_agent_opflex_asyncjson_enabled,omitempty" json:"opflexAgentOpflexAsyncjsonEnabled,omitempty"`
OpflexAgentPolicyRetryDelayTimer string `yaml:"opflex_agent_policy_retry_delay_timer,omitempty" json:"opflexAgentPolicyRetryDelayTimer,omitempty"` OpflexAgentOvsAsyncjsonEnabled string `yaml:"opflex_agent_ovs_asyncjson_enabled,omitempty" json:"opflexAgentOvsAsyncjsonEnabled,omitempty"`
AciMultipod string `yaml:"aci_multipod,omitempty" json:"aciMultipod,omitempty"` OpflexAgentPolicyRetryDelayTimer string `yaml:"opflex_agent_policy_retry_delay_timer,omitempty" json:"opflexAgentPolicyRetryDelayTimer,omitempty"`
AciMultipodUbuntu string `yaml:"aci_multipod_ubuntu,omitempty" json:"aciMultipodUbuntu,omitempty"` AciMultipod string `yaml:"aci_multipod,omitempty" json:"aciMultipod,omitempty"`
DhcpRenewMaxRetryCount string `yaml:"dhcp_renew_max_retry_count,omitempty" json:"dhcpRenewMaxRetryCount,omitempty"` OpflexDeviceReconnectWaitTimeout string `yaml:"opflex_device_reconnect_wait_timeout,omitempty" json:"opflexDeviceReconnectWaitTimeout,omitempty"`
DhcpDelay string `yaml:"dhcp_delay,omitempty" json:"dhcpDelay,omitempty"` AciMultipodUbuntu string `yaml:"aci_multipod_ubuntu,omitempty" json:"aciMultipodUbuntu,omitempty"`
DhcpRenewMaxRetryCount string `yaml:"dhcp_renew_max_retry_count,omitempty" json:"dhcpRenewMaxRetryCount,omitempty"`
DhcpDelay string `yaml:"dhcp_delay,omitempty" json:"dhcpDelay,omitempty"`
UseSystemNodePriorityClass string `yaml:"use_system_node_priority_class,omitempty" json:"useSystemNodePriorityClass,omitempty"`
AccProvisionOperatorMemoryRequest string `yaml:"acc_provision_operator_memory_request,omitempty" json:"accProvisionOperatorMemoryRequest,omitempty"`
AccProvisionOperatorMemoryLimit string `yaml:"acc_provision_operator_memory_limit,omitempty" json:"accProvisionOperatorMemoryLimit,omitempty"`
AciContainersControllerMemoryRequest string `yaml:"aci_containers_controller_memory_request,omitempty" json:"aciContainersControllerMemoryRequest,omitempty"`
AciContainersControllerMemoryLimit string `yaml:"aci_containers_controller_memory_limit,omitempty" json:"aciContainersControllerMemoryLimit,omitempty"`
AciContainersHostMemoryRequest string `yaml:"aci_containers_host_memory_request,omitempty" json:"aciContainersHostMemoryRequest,omitempty"`
AciContainersHostMemoryLimit string `yaml:"aci_containers_host_memory_limit,omitempty" json:"aciContainersHostMemoryLimit,omitempty"`
AciContainersOperatorMemoryRequest string `yaml:"aci_containers_operator_memory_request,omitempty" json:"aciContainersOperatorMemoryRequest,omitempty"`
AciContainersOperatorMemoryLimit string `yaml:"aci_containers_operator_memory_limit,omitempty" json:"aciContainersOperatorMemoryLimit,omitempty"`
McastDaemonMemoryRequest string `yaml:"mcast_daemon_memory_request,omitempty" json:"mcastDaemonMemoryRequest,omitempty"`
McastDaemonMemoryLimit string `yaml:"mcast_daemon_memory_limit,omitempty" json:"mcastDaemonMemoryLimit,omitempty"`
OpflexAgentMemoryRequest string `yaml:"opflex_agent_memory_request,omitempty" json:"opflexAgentMemoryRequest,omitempty"`
OpflexAgentMemoryLimit string `yaml:"opflex_agent_memory_limit,omitempty" json:"opflexAgentMemoryLimit,omitempty"`
AciContainersMemoryRequest string `yaml:"aci_containers_memory_request,omitempty" json:"aciContainersMemoryRequest,omitempty"`
AciContainersMemoryLimit string `yaml:"aci_containers_memory_limit,omitempty" json:"aciContainersMemoryLimit,omitempty"`
} }
type KubernetesServicesOptions struct { type KubernetesServicesOptions struct {