4706 Commits

Author SHA1 Message Date
Ricardo Rocha
f989ab6957 Fix auto_scaling_enabled default in docs
The default for auto_scaling_enabled in kubernetes is set to false in
the cluster heat templates, but true in the end user docs. Update the
end user docs to match the actual value.

Change-Id: Ie11a12f4ee8e5fbb760c177de72f8a3d88c751c5
Story: #2005928
Task: #34270
2019-06-21 13:54:11 +02:00
Spyros Trigazis
85bd42474b Build kubernetes v1.15.0
story: 2005124
task: 30581

Change-Id: I38157a8af7e38b007344942f54608eb413a4dfd9
Signed-off-by: Spyros Trigazis <spyridon.trigazis@cern.ch>
2019-06-19 20:44:57 +02:00
Spyros Trigazis
d7035775c6 ci: Rotate dockerhub password
Depends-On: https://review.opendev.org/666196
Change-Id: I4f913bc06a68cf0f3d61d836ab8a7acae54d50f7
Signed-off-by: Spyros Trigazis <spyridon.trigazis@cern.ch>
2019-06-19 01:01:59 +00:00
Zuul
77d4408fc4 Merge "k8s_fedora: Update to kubernetes v1.14.3" 2019-06-14 12:30:19 +00:00
Zuul
b92a81ddeb Merge "Fix coe_version for k8s driver" 2019-06-14 12:30:15 +00:00
Spyros Trigazis
ca049a405c k8s_fedora: Update to kubernetes v1.14.3
story: 2005380
task: 30362

Change-Id: I7ac0cffcdc8712503e2ea584b12d28ed3a7748b7
Signed-off-by: Spyros Trigazis <spyridon.trigazis@cern.ch>
2019-06-13 07:38:56 +00:00
Zuul
3217e75b63 Merge "Build kubernetes images" 2019-06-12 23:58:46 +00:00
Zuul
bc5b236d59 Merge "Replace git.openstack.org URLs with opendev.org URLs" 2019-06-12 09:16:05 +00:00
Spyros Trigazis
e99b0e8d6e Build kubernetes images
v1.11.10
v1.12.9
v1.13.7
v1.14.3
v1.15.0-rc.1

story: 2005124
task: 30581

Change-Id: I16cb54bb1d8e6e47b997d0314d00dbc9b7853aa0
Signed-off-by: Spyros Trigazis <spyridon.trigazis@cern.ch>
2019-06-12 09:43:52 +02:00
Zuul
51512c3a70 Merge "[k8s][fedora atomic] Using node instead of minion" 2019-06-11 20:23:48 +00:00
Zuul
d3c56b6b90 Merge "Add API reference for cluster upgrade" 2019-06-11 19:07:43 +00:00
Zuul
1251f2b371 Merge "Fix overlay2 + docker_volume_size" 2019-06-11 19:07:40 +00:00
Feilong Wang
8f6612b2e9 [k8s][fedora atomic] Using node instead of minion
Minion is not a good name for k8s worker node anymore, now it has been
replace with 'node' to align with the k8s terminologies. So the server
name of a worker will be something like `k8s-1-lnveovyzpreg-node-0`
instead of `k8s-1-lnveovyzpreg-minion-0`.

Task: 31008
Story: 2005689

Change-Id: Ie9a68b18658e94b6ebe76ebeae8becc23714380d
2019-06-11 18:20:14 +00:00
Zuul
ddb9fe9410 Merge "Update calico to v3.3" 2019-06-11 11:33:53 +00:00
Feilong Wang
d8df9d0c36 [fedora-atomic][k8s] Support default Keystone auth policy file
With the new config option `keystone_auth_default_policy`, cloud admin
can set a default keystone auth policy for k8s cluster when the
keystone auth is enabled. As a result, user can use their current
keystone user to access k8s cluster as long as they're assigned
correct roles, and they will get the pre-defined permissions
set by the cloud provider.

The default policy now is based on the v2 format recently introduced
in k8s-keystone-auth which is getting more useful now. For example,
in v1 it doesn't support a policy for user to access resources from
all namespaces but kube-system, but v2 can do that.

NOTE: Now we're using openstackmagnum dockerhub repo until CPO
team fixing their image release issue.

Task: 30069
Story: 1755770

Change-Id: I2425e957bd99edc92482b6f11ca0b1f91fe59ff6
2019-06-11 11:57:15 +12:00
Feilong Wang
dc100551e4 Fix coe_version for k8s driver
Now the coe_version is out of sync with the k8s version deployed
for the cluster. This patch will make sure the kube_version is
consistent with the kube_tag when creating the cluster and upgrading
the cluster.

Task: 33608
Story: 2002210

Change-Id: I5812dac340099ecd8923c1e4a60ce0e6611f7ca4
2019-06-10 14:01:04 +12:00
Feilong Wang
cd67553f76 Fix overlay2 + docker_volume_size
When using docker_storage_driver=overlay2 plus docker_volume_size > 0,
user will run into problem that some pods can't be created. The root
cause is kubelet needs the permission for /var/lib/docker to read/write.
This patch fixes it by add /var/lib/docker to kubelet container's mount.

Task: 30221
Story: 2005314

Change-Id: Ie19c95e6280e16644c686550950359cc9934c719
2019-06-10 10:18:10 +12:00
Spyros Trigazis
9774e990e4 Update calico to v3.3
Upstream manifests:
https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml

story: 2005318
task: 30495

Change-Id: I902009c792125c55313b1d512f531f613b424af5
Signed-off-by: Spyros Trigazis <spyridon.trigazis@cern.ch>
2019-06-07 10:56:20 +02:00
Feilong Wang
05c27f2d73 [k8s][fedora atomic] Rolling upgrade support
Rolling ugprade is an important feature for a managed k8s service,
at this stage, two user cases will be covered:

1. Upgrade base operating system
2. Upgrade k8s version

Known limitation: When doing operating system upgrade, there is no
chance to call kubectl drain to evict pods on that node.

Task: 30185
Story: 2002210

Change-Id: Ibbed59bc135969174a20e5243ff8464908801a23
2019-06-07 14:48:08 +12:00
Feilong Wang
8cfa24cfae Add API reference for cluster upgrade
Task: 30167
Story: 2002210

Change-Id: I18df7602a7f18128c77452dc8f91bd5e07b8c198
2019-06-07 12:12:36 +12:00
Spyros Trigazis (strigazi)
9b1bd5da54 Add cluster upgrade to the API
To enable the rolling upgrade ability of Kubernetes Cluster, this
patch is proposing a new API /upgrade to support upgrade the
base operating system of nodes and the version of Kubernetes, even
add-ons running on the k8s cluster:

POST <ClusterID>/actions/upgrade

And the post body will be:

{
    "cluster_template": 'dd9cc5ed-3a2b-11e9-9233-fa163e46bcc2',
    "max_batch_size": 1,
    "nodegroup": "production_group"
}

Co-Authored-By: Feilong Wang <flwang@catalyst.net.nz>

Task: 30168
Story: 2002210

Change-Id: Ia168877778aa0d473383eb06b1c8a16dc06b0576
2019-06-07 12:01:10 +12:00
Lingxian Kong
49e5f17cb5 [k8s_fedora_atomic] Make calico devices unmanaged in NetworkManager config for master node
In https://review.opendev.org/#/c/548139/, we did the same change for
worker node, because kubelet is also installed on master nodes, we need
the same configuration, otherwise, the pods on master nodes won't work
properly(lost connection or timout frequently).

Story: #2005805
Task: #33544

Change-Id: I14c4dcdd1d73e2d94325974b4e55c1e37a20d9ea
2019-05-31 14:56:02 +12:00
caoyuan
f82c61f856 Replace git.openstack.org URLs with opendev.org URLs
Change-Id: Id89f1eaa80623610594e5945a0b73beee7f09c5a
2019-05-22 16:21:24 +08:00
gao.hanxiang
913636b6b1 Blacklist bandit 1.6.0 and cap Sphinx on Python2
There's a regression[0] in bandit 1.6.0 which causes bandit to stop
respecting excluded directories, and our tests throw a bunch of
violations. Blacklist this version, but allow newer versions as there is
already a pull request[1] to fix it, and I expect it will be included in
the next release.

Also fix the requirements job which was broken by
https://review.opendev.org/657890 adding a cap on Sphinx on Python 2.

[0] https://github.com/PyCQA/bandit/issues/488
[1] https://github.com/PyCQA/bandit/pull/489

Co-Authored-By: Jake Yip <jake.yip@unimelb.edu.au>

Task: 33401
Story: 2005740

Change-Id: I34dc36c5236debc42424073af2c2d2104e18179a
2019-05-21 13:27:31 +12:00
Zuul
e53a5ae1ef Merge "Move openstackdocstheme to extensions in api-ref" 2019-05-01 21:03:47 +00:00
Zuul
981bf12a5a Merge "Disable broken image building" 2019-05-01 13:30:01 +00:00
Zuul
e01580aabe Merge "Fix container-build job" 2019-05-01 13:30:00 +00:00
Feilong Wang
5a74b45453 Release k8s v1.12.8
Task: 30675
Story: 2005124

Change-Id: I97ca231d70308862ed8b84d9364a6028c43e3382
2019-05-01 12:42:40 +12:00
Andreas Jaeger
42c75c4d3d Disable broken image building
The periodic jobs for building images are all failing, add some
low-hanging fruits for fixing:

1) Remove usage of own Fedora image build tools, they were removed as
   part of change Ie6a8496c202ff0bf330dd0f434cff8777e5ef112.
2) Add openstack/tripleo-image-elements and
   openstack/heat-templates as required-repo for the build
   jobs, they are requirements.

Still, these are still failing, let's disable the periodic jobs.
They have been broken since ages without fixing. There's no
record of a successful run under Zuul v3.
Last images at http://tarballs.openstack.org/magnum/images/ are from
2017.

Change-Id: I01122fa029b4124d912e80ea43bca07b8f2ebe5c
2019-04-30 15:26:02 +02:00
Andreas Jaeger
ef0678ec98 Fix container-build job
Fix container-build variable due to move from git.openstack.org to
opendev.org.

Also, rename the job following the naming guidelines [1]. We have a
shared namespace and job names need to start with the repo name.

[1] https://docs.openstack.org/infra/manual/drivers.html#consistent-naming-for-jobs-with-zuul-v3

Change-Id: Ieed605c8e6d020b224cacf377b5a6178669ecf1a
2019-04-30 15:25:55 +02:00
Zuul
2362f32c08 Merge "Update coredns from upstream manifest and to 1.3.1" 2019-04-23 08:08:02 +00:00
Zuul
cfc2bbec45 Merge "Build kubernetes v1.15.0-alpha.1" 2019-04-21 11:26:23 +00:00
OpenDev Sysadmins
79e7931e6e OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:44:16 +00:00
Spyros Trigazis
e98b8e52dc Build kubernetes v1.15.0-alpha.1
story: 2005124
task: 30581

Change-Id: I2e5afd0d9a35c8bb800c6aad9911d7c20df4cd78
Signed-off-by: Spyros Trigazis <spyridon.trigazis@cern.ch>
2019-04-18 12:48:14 +02:00
Spyros Trigazis
8fb27da2fc Update coredns from upstream manifest and to 1.3.1
5fe683c057/kubernetes/coredns.yaml.sed

story: 2003993
task: 30493

Change-Id: I0b0b4f98c20748c37c2d2f498ced222a53b52214
Signed-off-by: Spyros Trigazis <spyridon.trigazis@cern.ch>
2019-04-18 12:38:58 +02:00
Zuul
34801d94a7 Merge "Build kubernetes v1.14.1" 2019-04-18 09:27:56 +00:00
Zuul
9de64b994e Merge "[k8s] Set traefik to stable version v1.7.10" 2019-04-17 19:23:58 +00:00
Diogo Guerra
b3ceb252ef [k8s] Set traefik to stable version v1.7.10
The current magnum traefik deployment will always pull latest traefik
container image. With the new launch of traefik v2
(https://blog.containo.us/back-to-traefik-2-0-2f9aa17be305) this will
have impact on how the ingress is described in k8s.

This patch:
* Sets the traefik version to default tag v1.7.9, stable release
prior to v2.
* Adds a new label <traefik_ingress_controller_tag> to enable user
to specify other than default traefik release.

Task: 30143
Task: 30146
Story: 2005286

Change-Id: I031a594f7b6014d88df055664afcf51b1cd2cd94
Signed-off-by: Diogo Guerra <dy090.guerra@gmail.com>
2019-04-17 14:16:14 +02:00
Zuul
309c60e527 Merge "Allow admin update cluster/template in any project" 2019-04-17 11:17:43 +00:00
Zuul
72726bf3d1 Merge "[fedora atomic] Allow traffic between k8s workers" 2019-04-17 09:42:28 +00:00
Zuul
de31bc23a2 Merge "Dropping the py35 testing" 2019-04-17 09:07:46 +00:00
Zuul
4bd3d1cd8c Merge "Fix registry on k8s_fedora_atomic" 2019-04-17 08:48:28 +00:00
Zuul
29f6eab346 Merge "[fedora_atomic] Support auto healing for k8s" 2019-04-17 08:36:41 +00:00
Feilong Wang
75fab6ff37 [fedora_atomic] Support auto healing for k8s
Using Node Problem Detector, Draino and AutoScaler to support
auto healing for K8s cluster, user can use a new label
"auto_healing_enabled' to turn on/off it.

Meanwhile, a new label "auto_scaling_enabled" is also introduced
to enable the capability to let the k8s cluster auto scale based
its workload.

Task: 28923
Story: 2004782

Change-Id: I25af2a72a7a960205929374d2300bd83d4d20960
2019-04-17 14:47:39 +12:00
Feilong Wang
ecd074484f [fedora atomic] Allow traffic between k8s workers
When using calico as network driver, the traffic between k8s
worker nodes need to be allowed otherwise services maybe not
accessible sometimes because connection can't be established.
This issue only impacts calico.

Task: 30525
Story: 2005294

Change-Id: Ia71283a1abc75a7fb806f2601ac09a685dc5a4bc
2019-04-16 20:23:59 +12:00
Zuul
4722a64f5e Merge "Fix proportional autoscaler image" 2019-04-15 18:22:23 +00:00
Zuul
9e498c4769 Merge "Support multi DNS server" 2019-04-15 18:13:59 +00:00
Ghanshyam Mann
0d3ad907a6 Dropping the py35 testing
All the integration testing has been moved to
Bionic now[1] and py3.5 is not tested runtime for
Train or stable/stein[2].

As per below ML thread, we are good to drop the py35
testing now:
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005097.html

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004647.html
[2]
https://governance.openstack.org/tc/reference/runtimes/stein.html
https://governance.openstack.org/tc/reference/runtimes/train.html

Change-Id: Id530578688faf2e97165b40abe18b863126cf89f
2019-04-14 23:05:06 +00:00
Adolfo R. Brandes
00522c5ba2 Fix registry on k8s_fedora_atomic
This fixes an issue with --registry-enabled in k8s_fedora_atomic where
the registry container fails to start in the minion due to two missing
heat parameters: TRUSTEE_USERNAME and TRUSTEE_DOMAIN_ID.

Change-Id: Ib93a7c0f761d047da3408703a5cf4208821acb33
Task: 23067
Story: 2003033
2019-04-12 11:42:43 -03:00
Spyros Trigazis
c0e51198a3 Fix proportional autoscaler image
The proportional autoscaler was not taken from
the real gcr.io/google_containers but but from
docker.io/googlecontainer.

story: 2003993
task: 30492

Change-Id: I2b6fa6f6c839d86b935feb9e1fa9f044d1835b34
Signed-off-by: Spyros Trigazis <spyridon.trigazis@cern.ch>
2019-04-12 15:37:23 +02:00