Commit Graph

47 Commits (4525446af20cc1309381ddd48f1bb20d1be7682b)

Author SHA1 Message Date
Michael Taufen 38aee0464d Providing kubeconfig file is now the switch for standalone mode
Replaces use of --api-servers with --kubeconfig in Kubelet args across
the turnup scripts. In many cases this involves generating a kubeconfig
file for the Kubelet and placing it in the correct location on the node.
2017-07-24 11:03:00 -07:00
Chris Hoge c0621061c8 Add configuration for swift container name
Fixes Issue #47966
2017-06-29 10:15:55 -07:00
Clayton Coleman 4ce3907639
Add Initializers to all admission control paths by default 2017-06-02 22:09:04 -04:00
Matthias Greiner 0688c3c6a9 fix: required openstack heat version for conditions is 2016-10-14 / newton 2017-05-13 17:12:45 +00:00
Kubernetes Submit Queue 750d5c3bc5 Merge pull request #41561 from jamiehannaford/fix-multiple-swift-urls
Automatic merge from submit-queue

Ensure only 1 Swift URL is used in cluster operations

**What this PR does / why we need it**:

Extracts only 1 Swift URL if multiple are returned from Keystone.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*:

https://github.com/kubernetes/kubernetes/issues/34930

**Special notes for your reviewer**:

**Release note**:
```release-note
Heat cluster operations now support environments that have multiple Swift URLs
```
2017-04-12 02:16:28 -07:00
Kubernetes Submit Queue b41e415ebd Merge pull request #43137 from shashidharatd/federation-domain
Automatic merge from submit-queue

[Federation] Remove FEDERATIONS_DOMAIN_MAP references

Remove all references to FEDERATIONS_DOMAIN_MAP as this method is no longer is used and is replaced by adding federation domain map to kube-dns configmap.

cc @madhusudancs @kubernetes/sig-federation-pr-reviews 

**Release note**:
```
[Federation] Mechanism of adding `federation domain maps` to kube-dns deployment via `--federations` flag is superseded by adding/updating `federations` key in `kube-system/kube-dns` configmap. If user is using kubefed tool to join cluster federation, adding federation domain maps to kube-dns is already taken care by `kubefed join` and does not need further action.
```
2017-04-06 02:05:42 -07:00
Kubernetes Submit Queue e6453c7880 Merge pull request #42638 from jamiehannaford/minion-fip
Automatic merge from submit-queue (batch tested with PRs 41297, 42638, 42666, 43039, 42567)

Allow minion floating IPs to be optional

**What this PR does / why we need it**:

Makes the generation of floating IPs for worker nodes optional, based on an env var. To quote the original issue:

> Currently, the OpenStack installation method assigns a floating IP to every single worker node. While this is fine for smaller clusters with a good sized IP pool, it can cause issues in environments with high node counts or less IPs available.

**Which issue this PR fixes**:

https://github.com/kubernetes/kubernetes/issues/40737

**Special notes for your reviewer**:

I used the conditions section of the Heat spec: https://docs.openstack.org/developer/heat/template_guide/hot_spec.html#conditions-section

**Release note**:
```release-note
OpenStack clusters can now specify whether worker nodes are assigned a floating IP
```
2017-03-25 18:15:21 -07:00
Jordan Liggitt bc539151f3
Keep ResourceQuota admission at the end of the chain 2017-03-21 01:53:11 -04:00
shashidharatd b09b20b598 Remove FEDERATIONS_DOMAIN_MAP references 2017-03-15 23:06:16 +05:30
Jamie Hannaford 4eef540876 Allow minion floating IPs to be optional 2017-03-07 12:50:42 +01:00
Kubernetes Submit Queue 2a6414bc91 Merge pull request #42044 from timchenxiaoyu/daemonnotdeamon
Automatic merge from submit-queue

daemon not deamon
2017-02-26 22:45:32 -08:00
timchenxiaoyu 5ec5e0be49 daemon not deamon 2017-02-24 17:15:51 +08:00
Kevin cd427fa4be enable DefaultTolerationSeconds admission controller by default 2017-02-22 00:45:56 +08:00
Jamie Hannaford 708f917e63 Ensure only 1 Swift URL is used 2017-02-16 16:11:07 +01:00
Michael Mrowetz 11ed1a9565 #40721 openstack-heat: salt-minion not daemonize
openstack-heat does currently not setup a salt-master, so it is not necessary to  daemonize it.
2017-02-15 17:51:07 +09:00
Kubernetes Submit Queue fd13413ba7 Merge pull request #40368 from sc68cal/patch/centos_name
Automatic merge from submit-queue (batch tested with PRs 40111, 40368, 40342, 40274, 39443)

Change OPENSTACK_IMAGE_NAME to be more specific

There may already be other images in the cloud named CentOS7,
but since we are fetching a very specific version (1604) we should
go ahead and make the image name very specific as well.



**What this PR does / why we need it**:

Some clouds already have `Centos7` as an image that is available, however it may not be the *specific* version that openstack-heat looks for and downloads from CentOS.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: 

**Special notes for your reviewer**:

**Release note**:

```release-note 
OpenStack-Heat will now look for an image named "CentOS-7-x86_64-GenericCloud-1604". To restore the previous behavior set OPENSTACK_IMAGE_NAME="CentOS7"
```
2017-01-31 19:18:39 -08:00
Kubernetes Submit Queue 7ee9abe447 Merge pull request #40339 from noseka1/master
Automatic merge from submit-queue (batch tested with PRs 40549, 40339)

Invalid node names when deploying with Heat

OpenStack Heat templates create Kubernetes nodes with invalid
hostnames. Capital letters are not allowed in the hostnames:

Unable to register node "kubernetes-node-6s8OizYe" with API server: Node "kubernetes-node-6s8OizYe" is invalid: metadata.name: Invalid value: "kubernetes-node-6s8OizYe": must match the regex [a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)* (e.g. 'example.com')

This patch prevents Heat generating hostnames that contain
capital letters.



**What this PR does / why we need it**:

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-01-29 23:52:07 -08:00
Kubernetes Submit Queue 52aa408aac Merge pull request #39784 from micmro/keystone-v3-support-for-openstack-heat
Automatic merge from submit-queue

Add support of Keystone v3 'domain-name' to 'openstack-heat' cluster setup

**What this PR does / why we need it**:
Keystone v3 authentication by user name [requires the domain (name or ID)](http://developer.openstack.org/api-ref/identity/v3/index.html?expanded=password-authentication-with-scoped-authorization-detail). If `domain-name` is not provided kubelet fails as seen below:
  
```
kubelet: error: failed to run Kubelet: could not init cloud provider "openstack": You must provide exactly one of DomainID or DomainName to authenticate by Username
systemd: kubelet.service: main process exited, code=exited, status=1/FAILURE
systemd: Unit kubelet.service entered failed state.
systemd: kubelet.service failed.
```

To solve this I pass a new`OS_USER_DOMAIN_NAME` environment variable through openstack-heat's heat-templates to write it as `domain-name` in `/srv/kubernetes/openstack.conf`. 

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #39783

**Special notes for your reviewer**:

**Release note**:

```
domain-name support for Keystone v3 added to openstack-heat cluster setup
```
2017-01-25 19:30:32 -08:00
Kubernetes Submit Queue d98615db9a Merge pull request #40089 from sc68cal/install_docs
Automatic merge from submit-queue

[OpenStack-Heat] Add link to the OpenStack CLI install documentation

**What this PR does / why we need it**:

More helpful diagnostic text 

**Special notes for your reviewer**:

Trivial patch

**Release note**:

```release-note
NONE
```
2017-01-25 15:55:00 -08:00
Michael Mrowetz 5bdae77e0c add default for OS_USER_DOMAIN_NAME 2017-01-25 10:46:47 +09:00
Michael Mrowetz 87ee6b34ce pass openstack-heat OS_USER_DOMAIN_NAME config to domain-name in openstack.conf 2017-01-25 10:39:49 +09:00
Kubernetes Submit Queue 6dbad57bce Merge pull request #37264 from yuanying/use-lowercase-character
Automatic merge from submit-queue (batch tested with PRs 39275, 40327, 37264)

Fix invalid node name in openstack-heat provider

Cluster node name must follow name syntax in RFC 1123.
But currently, openstack-heat provider generate invalid
node name which contains upper-case characters.
This patch fixes it.
2017-01-24 10:52:12 -08:00
Sean M. Collins 8a4038a2e1 Change OPENSTACK_IMAGE_NAME to be more specific
There may already be other images in the cloud named CentOS7,
but since we are fetching a very specific version (1604) we should
go ahead and make the image name very specific as well.
2017-01-24 11:53:10 -05:00
Ales Nosek 307a7556da Invalid node names when deploying with Heat
OpenStack Heat templates create Kubernetes nodes with invalid
hostnames. Capital letters are not allowed in the hostnames:

Unable to register node "kubernetes-node-6s8OizYe" with API server: Node "kubernetes-node-6s8OizYe" is invalid: metadata.name: Invalid value: "kubernetes-node-6s8OizYe": must match the regex [a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)* (e.g. 'example.com')

This patch prevents Heat generating hostnames that contain
capital letters.
2017-01-23 18:34:32 -08:00
Sean M. Collins 8ad7e1613a [OpenStack-Heat] Fix regex used to get object-store URL
"publicURL" is used for endpoints in the Identity v2 API, while in the
Identity v3 API it has been changed to just "public"

Fixes #40102
2017-01-18 16:29:41 -05:00
Sean M. Collins bfb60acc02 [OpenStack-Heat] Add link to the OpenStack CLI install documentation 2017-01-18 11:02:55 -05:00
Kubernetes Submit Queue b202ebb7a5 Merge pull request #38433 from yuanying/remove-needless-config
Automatic merge from submit-queue (batch tested with PRs 38433, 36245)

Remove needless env var in OpenStack provider

**What this PR does / why we need it**:

If we use openstack provider to set up k8s cluster using kube-up script,
`TENANT_ID` environment variable is needed.
But to configure `TENANT_ID` is very annoying because this value is not static by each env.
This patch uses `TENANT_NAME` instead of `TENANT_ID`

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
```

Since `TENANT_NAME` is unique if we use keystone v2 api,
so `TENANT_ID` is not needed if `TENANT_NAME` is provided
to configure OpenStack provider.
And also to set `TENANT_ID` is annoying to develop, because
`TENANT_ID` is not static by each environment.
This patch remove dependency of `TENANT_ID` and simply use
`TENANT_NAME`.
2017-01-03 23:28:07 -08:00
OTSUKA, Yuanying 40e4e0e4b4 Fix node name in openstack-heat provider
Currently, node name is only allowed to use lower-case
characters. But openstack-heat provider generate invalid
node name which contains upper-case characters. This issue
breaks building kubernetes cluster using openstack-heat
provider.

So This patch fixes it.
2016-12-14 11:44:10 +09:00
OTSUKA, Yuanying d5e039c947 Remove needless env var in OpenStack provider
Since `TENANT_NAME` is unique if we use keystone v2 api,
so `TENANT_ID` is not needed if `TENANT_NAME` is provided
to configure OpenStack provider.
And also to set `TENANT_ID` is annoying to develop, because
`TENANT_ID` is not static by each environment.
This patch remove dependency of `TENANT_ID` and simply use
`TENANT_NAME`.
2016-12-09 11:09:58 +09:00
Angus Lees 29fadb3541 openstack-heat: Drop flannel for cloud Routes API 2016-12-05 15:24:01 +11:00
OTSUKA, Yuanying 6d7195fd08 Add missing variable to openstack provider
`FIXED_NETWORK_CIDR` environment variable is mandatory by
openstack-heat kubernetes provider, but it's missing as
default value. Adding this environment variable is helpful
to build kubernetes cluster using openstack-heat provider.
So this patch adds it.
2016-11-22 11:33:27 +09:00
Zihong Zheng b26faae7fc Migrates addons from using ReplicationControllers to Deployments 2016-11-09 09:17:05 -08:00
Zihong Zheng d961190e6f Deployed DNS horizontal autoscaler as an addon
DNS horizontal autoscaling feature is turned on by default on gce.
The corresponding env var is piped into almost all other cloud
providers.
2016-11-07 10:44:44 -08:00
Kubernetes Submit Queue 9cf0ec3ce2 Merge pull request #27783 from jianhuiz/openstack-heat-network
Automatic merge from submit-queue

Openstack heat network

add lbaas subnet and floating network configuration
support lbaas v2
add environment variable for fixed network
~~fix lb creation failed because of no 'name' for pool members according to lbaas v2 api~~ #27810

#25987 
@dagnello @lavalamp @mikedanese

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-09-07 16:25:02 -07:00
Jan Safranek 5f6efefc40 [squash] Rename and move to storageclass/ 2016-08-22 14:11:01 +02:00
Jan Safranek 82d35fb461 Add admission controller for default storage class.
The admission controller adds a default class to PVCs that do not require any
specific class. This way, users (=PVC authors) do not need to care about
storage classes, administrator can configure a default one and all these PVCs
that do not care about class will get the default one.
2016-08-18 18:55:35 +02:00
jianhuiz 9908a02872 lbaas subnet and floating network config; lbaas v2; env variable for fixed network 2016-08-17 02:23:12 -07:00
CJ Cullen 861583ac3e export KUBE_USER to salt (support custom usernames) for vagrant, vsphere, photon, openstack. 2016-07-22 15:22:03 -07:00
Elson Rodriguez fbd0ba074e Fixes #28205, Check release tar location for Openstack-Heat provider
This does a basic check to see where the release tars are located.

Allows people to use openstack-heat outside of compiling k8s.
2016-07-08 08:45:47 -07:00
David McMahon ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
Madhusudan.C.S 816c4d9e2b Substitute federation_domain_map parameter with its value in node bootstrap scripts.
This also removes the substitution code we added to the build
scripts in one of the previous commits.
2016-06-27 14:54:49 -07:00
Elson O Rodriguez c65e5c2b90 Updating CentOS image, adding heat back to the required cli tools. 2016-05-20 12:33:13 -07:00
Francois Deppierraz 1769760db0 Automatically detect swift URL if not specified 2016-05-05 23:58:43 +02:00
Elson O Rodriguez 9004dc383b Adding workaround for hostname swapping issue in OpenStack kube-up provider.
On reboot, minions hostname would change, causing issue querying Openstack API and registering with kube-apiserver.

This is due to a bug in cloud-init which has been patched but apparently not widely distributed.

Should be harmless on unaffected systems.
https://bugs.launchpad.net/cloud-init/+bug/1246485
http://blog.oddbit.com/2014/12/10/cloudinit-and-the-case-of-the-changing-hostname/
2016-04-28 22:36:00 -07:00
Lukasz Zajaczkowski 5f929d2a4c Replace heat client to openstack to avoid warnings 2016-04-28 14:06:30 +02:00
Elson O Rodriguez 7b3b24c4f5 Triages #7 for OpenStack provider, still needs work.
Fixed the order of fields for basic_auth.

This provider still needs to leverage common.sh for generating proper credentials though.

Also documented a pattern for how to get the SWIFT_SERVER_URL automatically
2016-04-28 14:06:30 +02:00
OHTAKE Tomohiro 5ea2940cfe Rename the provider to openstack-heat
There might be several methods to deploy a Kubernetes cluster on OpenStack.
It is better to name the provider more specific.
2016-04-28 14:06:30 +02:00