-
Notifications
You must be signed in to change notification settings - Fork 23
Update Istio configuration to use CNI node agents instead of istio-init containers
#474
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
Conversation
MCK 1.6.0 Release NotesNew Features
Bug Fixes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file was unused
public/architectures/setup-multi-cluster/ra-03-setup-istio/install_istio_separate_network.sh
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
q: Was this accidentally commited into the scripts/release/kubectl-mongodb folder?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, exactly. This was added mistakenly added during kubectl-mongodb plugin refactoring
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great if it passes tests. It's currently failing a couple.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Summary
We are using
Istioas a service mesh provider for our Multi Cluster tests. The way it works by default isIstioadds privilegedinit-istiocontainer to every Pod that configures network accordingly.While this works fine it is not meeting the PSS restricted level, thus making it less secure. Related HELP-81729 and #473 that enables
restrictedlevel inwarnmode. Additionally we provide Istio sidecar configuration as an example in our code snippets thus not following the best practice.There is another way to configure Istio mesh that does not require
istio-initinit-container - using Istio CNI node agent. This PR configures our e2e tests and code snippets that way. Great blog entry about difference betweenistio-initand Istio CNI node agent architecture -> https://www.solo.io/blog/traffic-ambient-mesh-istio-cni-node-configuration.With

istio-init:With

Istio CNI node agent:runAsUser: 1337. More info -> https://istio.io/latest/docs/setup/additional-setup/cni/#compatibility-with-application-init-containersProof of Work
Passing CI is enough. Since
private_gke_code_snippetsare not run automatically in CI I've triggered manual patch to test this -> https://spruce.mongodb.com/version/68d50e694baed3000742566d/tasks?sorts=STATUS%3AASC%3BBASE_STATUS%3ADESCChecklist
skip-changeloglabel if not needed