これは私のクラスタ情報だから、httpsを通じてkubernetesサービスにアクセスするには?
kubectl cluster-info
Kubernetes master is running at https://129.146.10.66:6443
Heapster is running at https://129.146.10.66:6443/api/v1/proxy/namespaces/kube-system/services/heapster
KubeDNS is running at https://129.146.10.66:6443/api/v1/proxy/namespaces/kube-system/services/kube-dns
ですが、私はNodePortと設定はこの
kubectl describe svc mysqlbrokerservice
Name: mysqlbrokerservice
Namespace: mysqlbroker
Labels: <none>
Annotations: <none>
Selector: app=mysqlbroker
Type: NodePort
IP: 10.99.194.191
Port: mysqlbroker 8080/TCP
NodePort: mysqlbroker 30000/TCP
Endpoints: 10.244.1.198:8080
Session Affinity: None
Events: <none>
のように見えるように私はのパブリックIPを介してサービスにアクセスすることができます実行しているサービス(mysqlbrokerservice)を持っていますポッドが実行されているノード(http://129.146.34.181:30000/v2/catalog)。
次に、httpsを通じてサービスにアクセスできるかどうかを確認したいと考えていました。私は指示に従いましたhttps://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/#manually-constructing-apiserver-proxy-urls
私はこの例に従い、curlを使ってリソースを取得しました。 ここにコマンドがあります。 129.146.10.66:6443は私のマスターIPです。
curl -i -H "Accept: application/json" -H "Content-Type: application/json" -X GET https://129.146.10.66:6443/api/v1/namespaces/mysqlbroker/services/mysqlbrokerservice:8080/proxy/v2/catalog --header "Authorization: Bearer $TOKEN" --insecure
HTTP/1.0 200 Connection established
カールは応答なしでそこに座っています。私はその後、私のポッドのログを見て、それは受け取ったすべての要求が表示されません。
誰かが私がここで間違っていることを説明できますか? httpsを通じてサービスを公開したい場合、理想的なソリューションは何ですか?
はい、これは同じです。 – user686730