Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix stack controller test by making privileged init containers optional #9

Merged
merged 2 commits into from
Oct 31, 2018
Merged

fix stack controller test by making privileged init containers optional #9

merged 2 commits into from
Oct 31, 2018

Conversation

nkvoll
Copy link
Member

@nkvoll nkvoll commented Oct 31, 2018

No description provided.

@nkvoll nkvoll requested review from pebrc, sebgl and marclop October 31, 2018 15:04
@@ -29,6 +29,8 @@ spec:
nodeCount:
format: int32
type: integer
shouldSetVmMaxMapCount:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe setVmVmaxMapCount is enough here (a little less verbose)?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I initially had it at that, but with the should prefix it's clear that we're looking for a boolean answer, not an integer one. I'm happy to change to whatever though

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm in favour of leaving it as setVmMaxMapCount

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pushed a commit to rename to unprefixed. :)

@nkvoll nkvoll merged commit 0ae21ec into elastic:master Oct 31, 2018
@nkvoll nkvoll deleted the fix-stack-controller-test-privileged branch October 31, 2018 15:32
sebgl added a commit that referenced this pull request Mar 10, 2020
This fixes CRD generation following a rebase on master.
sebgl added a commit that referenced this pull request Mar 13, 2020
Introduce the EnterpriseSearch CRD and controller in ECK.

It seems to be working fine so far but has not been extensively tested.
To be used, it requires the image field to be set with a valid Docker image.

This is obviously work in progress, since:

parts of the controller should be refactored to share common code with APMServer and Kibana
most of the association controller should be refactored to share common code with APMServer and Kibana
there are 0 unit tests (mostly because I wanted to go fast in the prototype phase, and because many unit tests should be written along with the refactoring above)
there are 0 E2E tests
it is missing a few features (podDisruptionBudget, secret config refs, version upgrade handling, etc.)

---

Built from many commits:

* Add Enterprise Search CRD

* Add the Enterprise Search controller - minimal deployment ok

* Add a working minimal Enterprise Search sample

* Reconcile a configuration secret instead of env vars (#2)

This is cleaner, more similar to what we do for other resources, and
avoids leaking secrets in Pod environment variables.

Note that Pods do not get automatically rotated when config changes so
far.

* Setup the EnterpriseSearch - Elasticsearch association controller

This is heavily based on the APMServer association controller.
Would largely benefit from some common refactoring in the future.

* Patch the EnterpriseSearch CRD to fix the subresources

I don't know why this isn't there in the first place.
I plan to investigate in the future, but for now this is required to
perform status updates.

* Label Pods with a hash of the config for auto rotation (#4)

We want Pods to be rotated with the new config.

* Reuse the JAVA_OPTS const (#5)

* Setup a readiness probe for smooth deployment rotation (#6)

Let's query /swiftype-app-version which seems to be the default out
there.
The initial bootstrap is pretty slow so I set an InitialDelaySeconds of
60sec.

* Generate the default enterprise_search user in a secret (#7)

I *think* this user can end up being useful if Elasticsearch is down
hence the native realm cannot be used.

* Strip out private Docker image from default sample (#8)

* Fix EnterpriseSearch CRD generation (#9)

This fixes CRD generation following a rebase on master.

* Use self-signed TLS certificates by default (#10)

Generate self-signed certificates for Enterprise Search and enable TLS
encryption by default. This can be disabled in the EnterpriseSearch
spec, and user-provided certificates can be used instead.

* Switch http/https protocol in readiness probe and config (#11)

Depending on the TLS spec, let's use the correct protocol: http or
https.

* Inject a hash of TLS certs for pod rotation (#12)

Automatically rotate the Pod if:
- the ent search config changes
- the ent search TLS certs change
- the referenced Elasticsearch certs change

This is done through hashing them all and using that hash as a label in
the podTemplate.

* Cleanup the code files (#13)

* Minor cosmetic housekeeping

* goimports files

* Add missing license headers

* Fix linter warnings

* Add api docs

* Struct comments improvements

* Regenerate CRDs and api docs

* Fixes from PR review

* Rely on the global scheme.Scheme

* Setup RBAC for Enterprise Search
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants