Can't get cloudprovider to work on vsphere

I’m trying to get rancher working on vsphere and i can provision a cluster without issues.
However i can’t get the cloud-provider part to work properly
I think i might do something wrong in the config.yaml file but don’t know what exactly.
I’ve tried to add the cloud_config in various ways. and also it doesn’t seem to save the file once i edit it.
This is what it looks like.

Cluster Config

answers: {}
docker_root_dir: /var/lib/docker
enable_cluster_alerting: false
enable_cluster_monitoring: false
enable_network_policy: false
local_cluster_auth_endpoint:
enabled: true
name: ba

Rancher Config

rancher_kubernetes_engine_config:
addon_job_timeout: 30
authentication:
strategy: x509|webhook
authorization: {}
bastion_host:
ssh_agent_auth: false
ignore_docker_version: true

# Currently only nginx ingress provider is supported.

# To disable ingress controller, set provider: none

# To enable ingress on specific nodes, use the node_selector, eg:

provider: nginx

node_selector:

app: ingress

ingress:
provider: nginx
kubernetes_version: v1.17.3-rancher1-1
monitoring:
provider: metrics-server

If you are using calico on AWS

network:

plugin: calico

calico_network_provider:

cloud_provider: aws

# To specify flannel interface

network:

plugin: flannel

flannel_network_provider:

iface: eth1

# To specify flannel interface for canal plugin

network:

plugin: canal

canal_network_provider:

iface: eth1

network:
mtu: 0
options:
flannel_backend_type: vxlan
plugin: canal
restore:
restore: false

services:

kube-api:

service_cluster_ip_range: 10.43.0.0/16

kube-controller:

cluster_cidr: 10.42.0.0/16

service_cluster_ip_range: 10.43.0.0/16

kubelet:

cluster_domain: cluster.local

cluster_dns_server: 10.43.0.10

services:
etcd:
backup_config:
enabled: true
interval_hours: 12
retention: 6
safe_timestamp: false
creation: 12h
extra_args:
election-timeout: ‘5000’
heartbeat-interval: ‘500’
gid: 0
retention: 72h
snapshot: false
uid: 0
kube-api:
always_pull_images: false
pod_security_policy: false
service_node_port_range: 30000-32767
kube-controller: {}
kubelet:
fail_swap_on: false
generate_serving_certificate: false
kubeproxy: {}
scheduler: {}
ssh_agent_auth: false

cloud_provider:
name: vsphere
vsphereCloudProvider:
global:
insecure-flag: true
virtual_center:
ip-of-the-vcenter:
user: administrator@vsphere.local
password: somepassword
port: 443
datacenters: NLRTM1
workspace:
server: ip-of-the-vcenter
folder: vm/k8s
default-datastore: DATASTORE-1
datacenter: NLRTM1

Actually that is not what it looks like but this is

Hi,

I just have to redo the work, (it “fall working” as we say in french), but basically, I had to say that I created a vsphere type cluster, using rancheros iso image, and custom cloud provider, insserting aat this time in the yaml file the part you can find on Internet.

Beware of the indentation (was one of my -numerous- mistakes)

HTH,

Pascal