@@ -641,9 +641,9 @@ func (optr *Operator) syncRenderConfig(_ *renderConfig, _ *configv1.ClusterOpera
641641 }
642642
643643 // create renderConfig
644- optr .renderConfig = getRenderConfig (optr .namespace , string (kubeAPIServerServingCABytes ), spec , & imgs .RenderConfigImages , infra . Status . APIServerInternalURL , pointerConfigData , moscs , apiServer )
644+ optr .renderConfig = getRenderConfig (optr .namespace , string (kubeAPIServerServingCABytes ), spec , & imgs .RenderConfigImages , infra , pointerConfigData , moscs , apiServer )
645645 } else {
646- optr .renderConfig = getRenderConfig (optr .namespace , string (kubeAPIServerServingCABytes ), spec , & imgs .RenderConfigImages , infra . Status . APIServerInternalURL , pointerConfigData , nil , apiServer )
646+ optr .renderConfig = getRenderConfig (optr .namespace , string (kubeAPIServerServingCABytes ), spec , & imgs .RenderConfigImages , infra , pointerConfigData , nil , apiServer )
647647 }
648648
649649 return nil
@@ -682,6 +682,11 @@ func (optr *Operator) syncMachineConfigPools(config *renderConfig, _ *configv1.C
682682 "manifests/master.machineconfigpool.yaml" ,
683683 "manifests/worker.machineconfigpool.yaml" ,
684684 }
685+
686+ if config .Infra .Status .ControlPlaneTopology == configv1 .HighlyAvailableArbiterMode {
687+ mcps = append (mcps , "manifests/arbiter.machineconfigpool.yaml" )
688+ }
689+
685690 for _ , mcp := range mcps {
686691 mcpBytes , err := renderAsset (config , mcp )
687692 if err != nil {
@@ -778,6 +783,8 @@ func (optr *Operator) syncMachineConfigNodes(_ *renderConfig, _ *configv1.Cluste
778783 pool = "worker"
779784 } else if _ , ok = node .Labels ["node-role.kubernetes.io/master" ]; ok {
780785 pool = "master"
786+ } else if _ , ok = node .Labels ["node-role.kubernetes.io/arbiter" ]; ok {
787+ pool = "arbiter"
781788 }
782789 newMCS := & v1alpha1.MachineConfigNode {
783790 Spec : v1alpha1.MachineConfigNodeSpec {
@@ -2035,7 +2042,7 @@ func setGVK(obj runtime.Object, scheme *runtime.Scheme) error {
20352042 return nil
20362043}
20372044
2038- func getRenderConfig (tnamespace , kubeAPIServerServingCA string , ccSpec * mcfgv1.ControllerConfigSpec , imgs * ctrlcommon.RenderConfigImages , apiServerURL string , pointerConfigData []byte , moscs []* mcfgv1alpha1.MachineOSConfig , apiServer * configv1.APIServer ) * renderConfig {
2045+ func getRenderConfig (tnamespace , kubeAPIServerServingCA string , ccSpec * mcfgv1.ControllerConfigSpec , imgs * ctrlcommon.RenderConfigImages , infra * configv1. Infrastructure , pointerConfigData []byte , moscs []* mcfgv1alpha1.MachineOSConfig , apiServer * configv1.APIServer ) * renderConfig {
20392046 tlsMinVersion , tlsCipherSuites := ctrlcommon .GetSecurityProfileCiphersFromAPIServer (apiServer )
20402047 return & renderConfig {
20412048 TargetNamespace : tnamespace ,
@@ -2044,8 +2051,9 @@ func getRenderConfig(tnamespace, kubeAPIServerServingCA string, ccSpec *mcfgv1.C
20442051 ControllerConfig : * ccSpec ,
20452052 Images : imgs ,
20462053 KubeAPIServerServingCA : kubeAPIServerServingCA ,
2047- APIServerURL : apiServerURL ,
2054+ APIServerURL : infra . Status . APIServerInternalURL ,
20482055 PointerConfig : string (pointerConfigData ),
2056+ Infra : * infra ,
20492057 MachineOSConfigs : moscs ,
20502058 TLSMinVersion : tlsMinVersion ,
20512059 TLSCipherSuites : tlsCipherSuites ,
0 commit comments