问题
如何启用 HTTP 请求?我有一个主 Web 服务器,它是一个代理,可将 HTTP 请求发送到 MicroK8S 服务器,但由于 HTTP 错误而无法发送。
使用的安装命令:
sudo snap install microk8s --classic --channel=1.23/stable
基础设施
Self-Hosted on a virtual machine locally
问题
我使用以下命令设置了一个 MicroK8S 服务器:microk8s enable dashboard dns registry istio
我也编辑了仪表板服务(用 nodeport 替换 clusterip)
kubernetes-dashboard 服务
结果
我可以通过访问服务器的 https://IP:30051/ 导航到 kubernetes-dashboard(是的,使用 SSL 的请求有效)。但是,如果我尝试使用 HTTP 而不是 HTTPS,我会收到以下错误消息。
Client sent an HTTP request to an HTTPS server.
答案1
在 Slack 中回答,默认插件没有通过,--insecure-bind-address
因此不安全的端口只能在本地主机上访问:https://github.com/kubernetes/kubernetes/blob/b5103f61175a10d6b066eeb3ef603263f9b61bd4/cluster/addons/dashboard/dashboard.yaml#L195-L196
您可以在此处找到记录的所有选项:https://github.com/kubernetes/dashboard/blob/1148f7ba9f9eadd719e53fa3bc8bde5b7cfdb395/docs/common/dashboard-arguments.md#arguments
如果您添加--insecure-bind-address=0.0.0.0
CLI 选项并将服务切换到端口 9090,那么您可以改用 HTTP。
但也不要这样做,这是一个糟糕且不安全的想法。