-
Notifications
You must be signed in to change notification settings - Fork 0
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
CAPI providers work behind an HTTP(S) proxy #1424
Comments
We need to work out what we need to do / what the current status is |
|
There are two different approaches:
Solution 2. has the advantage of not using |
@alex-dabija @puja108 from discussion with @giantswarm/team-rocket the question what should be the user-experience for the customer came up. |
@kopiczko @bavarianbidi how would we distinct customer workloads from managed apps installed in customer name spaces? |
Personally, I think it's fine to focus only on our apps for now. I don't yet know if our customer would be fine though. |
Do we keep any workloads outside |
BTW there is also a chicken-egg problem because flux and app platform are installed well before kyverno so they will need to support proxy mode without webhooks. Same applies to kyverno itself possibly (if it needs internet for anything). |
As The future goal in general would be moving |
Current status: With the below INSTALLATION=gario CUSTOMER=GS PROVIDER=cloud-director NEW_TEST_INSTALLATION=1 EDITOR=vim MC_PROXY_ENABLED=true MC_HTTP_PROXY="http://giantswarm:[email protected]:3128" MC_HTTPS_PROXY="http://giantswarm:[email protected]:3128" MC_NO_PROXY="vmware.ikoula.com" make create-mc There are currently two "limitations":
A more detailed view/description of the current implementation can be found in this RFC where still some open questions should be discussed. |
Do we need to configure the |
Yes, as As the |
It looks like kyverno policies are able to dynamically read values from arbitrary kubernetes objects https://kyverno.io/docs/writing-policies/external-data-sources/#variables-from-kubernetes-api-server-calls. We are/were even using this ourselves https://github.com/giantswarm/kyverno-policies/blob/f7e3ed0c0e9e917ed5b3495e74b7da604831dad2/policies/aws/AWSCAPI.yaml#L49-L57 It is also possible to use the context value in the |
Good catch! But this implementation is limited to management clusters (as Workload clusters don't have the cluster specific CR in place). Theoretically it should be possible to extend the existing |
While creating
UPDATE: Fixed with giantswarm/cluster-apps-operator#316
UPDATE: Fixed with giantswarm/cluster-cloud-director#57
UPDATE: Resolved when the version of kyverno-policies are updated. |
|
Dynamic kyverno policy will be supported with this PR |
CAPA and CAPVCD work fine with proxy. Dynamic kyverno policy is implemented. We decided to handle CAPO with a separate issue. #1783 |
User Story
Tasks
in Progress
open
done
Find a solution for dependencies on the mutating webhooks appcontainerd
(forcapvcd
this is already done via thevcdcluster.spec
)cluster-apps-operator
to handle ainstallation
wide proxy secret (see also this slack thread)Background:
The new environment will have to be behind a proxy - this is a hard requirement from their security team. It is currently a transparent proxy but will be changed to authenticated in the near future.
Team rocket already did this for kvm/legacy . Here is documented how https://github.com/giantswarm/giantswarm/issues/17226#issuecomment-1226904904.
Related stories
The text was updated successfully, but these errors were encountered: