-
Notifications
You must be signed in to change notification settings - Fork 7
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
configuring self signed or custom SSL certs for deploykf plugin #158
Comments
I just realized the docs issue link took me to a completely different repository where the website can be updated... would love some help getting this typed up and added. |
@mnasty I assume this is for the case that you are hosting your own internal git and/or helm repos with self signed certificates. I have a few questions:
|
So this is actually for configuring self signed certificates to be able to download the resources for deployKF in an On Prem datacenter but may have other potential applications as I noted above, and you so aptly pointed out with your assumption, given that on prem as a concept is sunsetting as public cloud takes over. To be more specific, certs for passing through a proxy server before reaching the internet. If one thing in the chain is not trusted, nothing is. Your questions:What were you doing when you found this problem?
What things in your environment use a self signed certificate?
I assume you don't want to just disable SSL verification?
|
This is a documentation enhancement request asking to add the following information into the official deployKF docs to help other users. The content is written below, inline using markdown as I could not find a way to contribute to the docs directly and this information is not otherwise available to my knowledge.
I wasted alot of time figuring this out and getting it working. It should be written somewhere.
Configuring DeployKF Plugin on ArgoCD for Self Signed or Custom SSL Certificates
This Guide is for DevOps admins who may be deploying in an On Prem datacenter or potentially those with custom SSL configurations in a public cloud VPC
The deployKF plugin downloads dependencies using a sidecar container that runs inside the argocd-repo-server pod. Both the argocd server and sidecar container need to have SSL certs added into their truststore chains to properly authenticate with a self signed/custom new certificate when executing the sync process with argocd. This method has been tested using the argocd sync script.
1.) Store downloaded pem certs as configmap
Using the below command we can load the contents of the certificate we need to add into Kubernetes in a persistent way:
kubectl -n argocd create configmap root-chain --from-file=root-chain.pem
2.) Patch the argocd repo server deployment to include the cert in all it's container images as a volume mount into the container level default truststore (/etc/ssl)
Fill in the yaml spec below to match your configmap name/key and set desired mount paths/attributes:
Convert to JSON, minify and use
kubectl patch
to make the deployment patch persist through the lifecycle of the pods ensuring your SSL cert is always in the chain when a resource needs to be syncedValidate by using curl from within the deploykf plugin sidecar container to reach github or custom repo/resource. Default ssl store is /etc/ssl in both containers but only the plugin sidecar has curl installed. Sync your apps as normal after this change.
Proxy variables can be added to all containers in the repo server pod using the following syntax if needed, though be sure to set this BEFORE applying the app of apps yaml file to prevent sync inconsistencies:
The text was updated successfully, but these errors were encountered: