1
0
mirror of https://github.com/rancher/rke.git synced 2025-09-07 09:50:13 +00:00

Added ACI 6.0.3.1 variables

This commit is contained in:
jeffinkottaram
2023-09-01 01:26:01 +05:30
committed by Akhilesh Sarda
parent 3513dca251
commit a996b3912a
3 changed files with 427 additions and 328 deletions

View File

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