jpetazzo / ampernetacle

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Documentation request for oci cloud controller manager

sorvis opened this issue · comments

Starting down the path to utilize oci cloud controller manager so I thought perhaps this could be a good stepping stone for this project to document how to do it manually.

It mentions here the "--cloud-provider=external" and "--provider-id=" flag
https://github.com/oracle/oci-cloud-controller-manager#preparing-your-cluster

I think that would be set here on this line?

command = "kubectl --kubeconfig=kubeconfig config set-cluster kubernetes --server=https://${oci_core_instance._[1].public_ip}:6443"

But if my cluster is already provisioned then I could apply a config map to the kube-system namespace.
https://www.ibm.com/docs/en/cloud-private/3.1.0?topic=scaling-reconfiguring-kubelet-in-live-cluster

See also:
https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/

Any thoughts on the approach / does any one have another way to do this?

I don't have experience setting up the OCI CCM, but I imagine that it'll require:

  • adding a few flags to kubelet / API server
  • running the CCM itself

Since we're using kubeadm to deploy the kubelets and the control plane, the flags may be passed through a kubeadm configuration file.

A good approach would be to add an extra Terraform variable to control whether to enable all these things or not.