To start, I am new to Kubernetes, so please feel free to point out and correct any terminology I get wrong.
In a nutshell, I want to be able to run microk8s enable ingress with custom configuration applied, but the only two configuration files I've located are read only (I can't even edit them with root).
More specifically, I'd like to enable SSL passthrough in the nginx-ingress-controller. I've located two different ingress.yaml manifests in the following locations (both of which appear to be identical after a diff comparison):
/snap/microk8s/current/actions/ingress.yaml /snap/microk8s/current/microk8s-resources/actions/ingress.yaml The problem is, these two files are read only, which I'm assuming is intentional. I'm guessing something must have generated them during the installation process, but it's not clear to me where they came from. What is the proper way to modify the global, system manifests, such as the one for the ingress controller?
Site note: Since I wasn't able to modify the original files, I was hoping I could just copy one of the original files and apply it manually with microk8s kubectl apply -f ingress.yaml. To my surprise, I actually got an error when I did so. This confuses me even more (I'm sure I could figure out where the YAML problem is, but it baffles me because it appears one of the two mentioned YAML files is what gets applied when you run the microk8s enable ingress command).
error: error parsing ingress.yaml: error converting YAML to JSON: yaml: line 52: could not find expected ':' What is the proper way to modify the parameters (e.g., add the --enable-ssl-passthrough switch) for manifests, like the one for the microk8s ingress controller?
helm get values <release-name>.kubectl edit ingress/<ingress-name>and adjust it that way. I'm assuming you're referring to this section of the documentation when you say you used microk8s.