diff --git a/docs/tutorial/openstack.md b/docs/tutorial/openstack.md index 4f0e5dedf9..2a8256bfb1 100644 --- a/docs/tutorial/openstack.md +++ b/docs/tutorial/openstack.md @@ -66,6 +66,49 @@ kops delete cluster my-cluster.k8s.local --yes * `--os-dns-servers=8.8.8.8,8.8.4.4` You can define dns servers to be used in your cluster if your openstack setup does not have working dnssetup by default +# Compute and volume zone names does not match +Some of the openstack users do not have compute zones named exactly the same than volume zones. Good example is that there are several compute zones for instance `zone-1`, `zone-2` and `zone-3`. Then there is only one volumezone which is usually called `nova`. By default this is problem in kops, because kops assumes that if you are deploying things to `zone-1` there should be compute and volume zone called `zone-1`. + +However, you can still get kops working in your openstack by doing following: + +**Create cluster using your compute zones** + +``` +kops create cluster \ + ... + --zones zone-1,zone-2,zone-3 \ + ... +``` + +**After you have initialized the configuration you need to edit configuration** + +``` +kops edit cluster my-cluster.k8s.local +``` + +Edit `ignore-volume-az` to `true` and `override-volume-az` according to your cinder az name. + +Example (volume zone is called `nova`): + +``` +spec: + ... + cloudConfig: + openstack: + blockStorage: + ignore-volume-az: true + override-volume-az: nova + ... +``` + +**Finally execute update cluster** + +``` +kops update cluster my-cluster.k8s.local --state ${KOPS_STATE_STORE} --yes +``` + +Kops should create instances to all three zones, but provision volumes from the same zone. + # Using external cloud controller manager If you want use [External CCM](https://github.com/kubernetes/cloud-provider-openstack) in your installation, this section contains instructions what you should do to get it up and running.