# Getting Started with kops on OpenStack **WARNING**: OpenStack support on kops is currently **alpha** meaning it is in the early stages of development and subject to change, please use with caution. ## Create config file The config file contains the OpenStack credentials required to create a cluster. The config file has the following format: ```ini [Default] identity= user=mk8s= password= domain_name= tenant_id= [Swift] service_type=object-store region= [Cinder] service_type=volumev3 region= [Neutron] service_type=network region= [Nova] service_type=compute region= ``` ## Environment Variables It is important to set the following environment variables: ```bash export OPENSTACK_CREDENTIAL_FILE= # where is the path of the config file export KOPS_STATE_STORE=swift:// # where is the name of the Swift container to use for kops state # TODO(lmb): Add a feature gate for OpenStack # this is required since OpenStack support is currently in alpha so it is feature gated # export KOPS_FEATURE_FLAGS="AlphaAllowOpenStack" ``` ## Creating a Cluster ```bash # coreos (the default) + flannel overlay cluster in Default kops create cluster --cloud=openstack --name=my-cluster.k8s.local --networking=flannel --zones=Default --network-cidr=192.168.0.0/16 # Not implemented yet... # kops update cluster my-cluster.k8s.local --yes # to delete a cluster # Not implemented yet... # kops delete cluster my-cluster.k8s.local --yes ``` ## Features Still in Development kops for OpenStack currently does not support these features: * cluster create (servers, servergroups, load balancers, and DNS are not implemented yet) * cluster delete * state delete (fails due to unimplemented methods)