Commit Graph

17 Commits

Author SHA1 Message Date
Anselme, Schubert (sa246v) 558acaf3bf
Parametrise etcd-anchor readiness probe
Change-Id: Iae3f1e5900c91b0ee7cb07c6f024cdcf41455125
Signed-off-by: Anselme, Schubert (sa246v) <sa246v@att.com>
2023-08-22 12:36:03 -04:00
Phil Sphicas 08906262fd Update tolerations and priority classes
* Give kube-proxy a blanket toleration
* Replace scheduler.alpha.kubernetes.io/critical-pod annotation with
    priorityClassName: system-node-critical

Change-Id: I810333913c09531eefa1ded014fe090d4cca7f7d
2021-10-18 11:33:54 -07:00
Rick Bartra 0ffde4162e Run etcd with shareProcessNamespace: true to reap zombie processes
The kubernetes-etcd pods are leaving behind zombie processes and
setting 'shareProcessNamespace: true' eliminates that problem.

When you enable process namespace sharing for a Pod, Kubernetes uses a
single process namespace for all the containers in that Pod. The
Kubernetes Pod infrastructure container becomes PID 1 and automatically
reaps orphaned processes. [0]

[0]https://cloud.google.com/solutions/best-practices-for-building-containers#solution_2_enable_process_namespace_sharing_in_kubernetes


Change-Id: I61566fb71258baafa709b0e5367c71f13e980f6f
2020-07-24 17:40:31 +00:00
Phil Sphicas 4aab698486 Add configmap-hash annotations for etcd
Adds configmap-hash annotations to the etcd anchor daemonset for
configmap-bin and configmap-etc.

Does not add hash annotations for configmap-certs or secret-keys, with
the thought that if certs or keys are changed, some manual intervention
might be warranted, and restarting the anchors automatically might not
be desirable.

Change-Id: I22ff8fafa5d37c10138ddaa4095174b25fc087d8
2020-05-24 06:11:26 +00:00
KHIYANI, RAHUL (rk0850) f2869e68cf Add apparmor profile to etcd chart
Change-Id: Ic17db9b9e96e6c47b6d970a8dd63ea338a8b4f7e
2020-02-19 18:36:48 -06:00
Doug Aaser 4cd75e26a0 Uplift etcd to v3.4.2
Uplift etcd to v3.4.2
Also uplifts calico in the gate so that it works with etcd v3

Change-Id: Iac93cadfad813223f9364e513fae00afa178113e
2019-11-25 17:12:00 +00:00
Phil Sphicas a7c7282ba4 Fix: anchor pre-stop failures
kubernetes-controller-manager-anchor pods get stuck in Terminating state
because the pre-stop script tries to touch /tmp/stop, which is on a read
only root filesystem.

This change mounts an emptyDir at /tmp to resolve the issue.

The same change is applied to apiserver, etcd, and scheduler anchors, to
prevent the issue if readOnlyRootFilesystem is enabled.

Related change for haproxy:
https://review.opendev.org/685711/

Change-Id: I784498e0dc24da91a983716029973919b96a3055
2019-11-04 15:14:27 -08:00
Kumar, Nishant(nk613n) 75d3a86234 Add release uuid annotation to POD spec
Change-Id: Id4a96de7da9233589b54217e04a346281eaea68c
2019-06-25 14:55:05 +00:00
RAHUL KHIYANI f50a0c8d78 ETCD: Add pod/container security context
This updates the etcd chart to include the pod
security context on the pod template.

This also adds the container security context to set
readOnlyRootFilesystem flag to false

Change-Id: I34a8ab3e850779192491b9b127a82b82f05fa00b
2019-06-13 02:01:16 +00:00
Egorov, Stanislav (se6518) 3685419042 Fixed for hyperkube 1.12
During bootstrap process kubernetes node is not ready due to missed CNI.
It will be installed later but for a few daemonsets it's critical.
They can't start pods and looping in a while.

Workaround is here: add tolerations.

Change-Id: Ib3c361949ea4e452d599aa7a3a2b7827541b7bac
2019-05-14 10:25:53 -07:00
Sean Eagan 2e2a30515c Use apps/v1 k8s controllers and add labels
Daemonset update strategy defaults to OnDelete in v1beta1, whereas
it defaults to RollingUpdate in v1, which seems prefereable.

This also adds helm-toolkit based labels at the controller level
to match standard usage such as for example by armada as wait labels.

This change has been tested using the promenade resiliency gate.

Change-Id: I9fd1bc4caedc0a6717b779e5333640ca8dc78b7e
2019-04-23 09:24:53 -05:00
Matt McEuen eae60aba15 Add release uuid to pods and rc objects (prom)
This PS adds the ability to attach a release uuid to pods and rc
objects as desired.  This can be used, for example, to force an
artificial manifest change in CICD scenarios, for upgradability
testing purposes.

Change-Id: I8d0ffac306258f940c63799e86e7e26b5c2c5add
2018-10-16 12:43:32 -05:00
anthony.lin 6e81ed7b40 Update Labels - Application/Component
1) Kubernetes Template (Bootstrap)
2) Other charts within Promenade Repo

Change-Id: I872802112587bdff84d3630a5b2542dc4b3f77f8
2018-05-30 22:56:15 +08:00
Mark Burnett 8a7791e13a Bump Kubernetes version from 1.8.6 to 1.10.2
* Updates version references
* Increase memory of test VMs due to higher usage with bump
* Move etcd chart scripts from /tmp to /tmp/bin
* Remove certificate signing options for controller manager
* Remove -a from `kubectl get pods`, since that is deprecated in 1.10
* Shorten liveness/readiness probe times for CoreDNS

Change-Id: I16db0370f1c619e16002dd58e29025eb1538691f
2018-05-04 09:21:18 -05:00
Hassan Kaous f9c8481927 Refactor the generator function to use PKIcatalog.
Change-Id: I9c049b8499a14a537e7cc862ca96f84cf80b6694
2018-02-13 11:24:02 -05:00
Anthony Lin 3b4b4661a4 Refactor etcd Chart
Refactor etcd chart to align with OSH standards

Change-Id: Ie71fcf045b3ec896dcdd03bb3455fb85af8f2e7a
2017-11-29 17:33:41 +00:00
Mark Burnett 95643147c5 Migrate to self hosted using charts
This change includes several interconnected features:

* Migration to Deckhand-based configuration.  This is integrated here,
  because new configuration data were needed, so it would have been
  wasted effort to either implement it in the old format or to update
  the old configuration data to Dechkand format.
* Failing faster with stronger validation.  Migration to Deckhand
  configuration was a good opportunity to add schema validation, which
  is a requirement in the near term anyway.  Additionally, rendering
  all templates up front adds an additional layer of "fail-fast".
* Separation of certificate generation and configuration assembly into
  different commands.  Combined with Deckhand substitution, this creates
  a much clearer distinction between Promenade configuration and
  deployable secrets.
* Migration of components to charts.  This is a key step that will
  enable support for dynamic node management.  Additionally, this paves
  the way for significant configurability in component deployment.
* Version of kubelet is configurable & controlled via download url.
* Restructuring templates to be more intuitive.  Many of the templates
  require changes or deletion due to the migration to charts.
* Installation of pre-configured useful tools on hosts, including calicoctl.
* DNS is now provided by coredns, which is highly configurable.

Change-Id: I9f2d8da6346f4308be5083a54764ce6035a2e10c
2017-10-17 13:29:46 -05:00