Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO)
OpenStack Setup details: (single node rancher vs. HA rancher, internal DB vs. external DB)
single node ranche Environment Template: (Cattle/Kubernetes/Swarm/Mesos)
Kubernetes Steps to Reproduce:
create cluster
use OpenStack provider
Edit yaml add “cloudProvider”
cloud_provider:
name: “openstack”
openstack_cloud_provider:
block_storage:
bs-version: “v2”
ignore-volume-az: false
trust-device-path: false
global:
auth-url: “http://XXXXXX:5001/v3”
domain-name: “default”
password: “XXXXX!”
tenant-id: “885c63821c3a43a78da157958eca3a99”
username: “XXXXX”
load_balancer:
create-monitor: true
floating-network-id: “d0456ee8-c9a9-4e0c-8be1-0974f1d13ac0”
lb-method: “ROUND_ROBIN”
lb-provider: “haproxy”
manage-security-groups: false
monitor-delay: 60
monitor-max-retries: 3
monitor-timeout: 30
subnet-id: “12c1529a-2f54-43be-8f04-f766369c2b1d”
use-octavia: false
add nodepool and save to create cluster Results:
The cluster return Error message: [workerPlane] Failed to bring up Worker Plane: Failed to verify healthcheck: Failed to check https://localhost:10250/healthz for service [kubelet] on host
I login to master and check kubelet log, got error message: failed to run Kubelet: could not init cloud provider "openstack": time: missing unit in duration 60
And then, modified section [LoadBalancer] in /etc/kubernetes/cloud_config,
Changed “monitor-delay=60” to “monitor-delay=1m” and “monitor-timeout=30” to “monitor-timeout=30s”.
Save file , kubelet was successfully running.
I found the Rancher doc about OpenStack cloud provider :