Kubernetes ダッシュボード用に次のサービスを取得しました
Name: kubernetes-dashboard
Namespace: kube-system
Labels: k8s-app=kubernetes-dashboard
kubernetes.io/cluster-service=true
Annotations: kubectl.kubernetes.io/last-applied-configuration={"kind":"Service","apiVersion":"v1","metadata":{"name":"kubernetes-dashboard","namespace":"kube-system","creationTimestamp":null,"labels":{"k8s-app":"k...
Selector: k8s-app=kubernetes-dashboard
Type: NodePort
IP: 10.0.106.144
Port: <unset> 80/TCP
NodePort: <unset> 30177/TCP
Endpoints: 10.244.0.11:9090
Session Affinity: None
Events: <none>
ドキュメントによると、私は走った
az acs kubernetes browse
http://localhost:8001/uiで動作します
しかし、クラスターの外部にもアクセスしたいです。describe 出力は、ポート 30177 の NodePort を使用して公開されていることを示しています。
しかし、私はそれにアクセスできません http://<any node IP>:30177
ご存知のように、サービスをインターネットに公開するnodeport
と、 と を使用できますLoadBalancer
。
私の知る限り、Azure は現在ノードポート タイプをサポートしていません。
しかし、クラスターの外部にもアクセスしたいです。
LoadBalancer
kubernetes ダッシュボードを再作成するために使用できます。私の手順は次のとおりです。
kubernetes UI から kubernetes-dashboard を削除します。Namespace to kube -systemを選択し、servicesを選択してから削除します。
Kubernetes-dashboard-service.yaml: SSH マスター VM を変更し、タイプを nodeport から LoadBalancer に変更します。
root@k8s-master-47CAB7F6-0:/etc/kubernetes/addons# vi kubernetes-dashboard-service.yaml
apiVersion: v1
kind: Service
metadata:
labels:
kubernetes.io/cluster-service: "true"
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kube-system
spec:
ports:
- port: 80
targetPort: 9090
selector:
k8s-app: kubernetes-dashboard
type: LoadBalancer
CLI 2.0 から kubernetes のブラウズを開始します。
C:\ユーザー>az acs kubernetes browse -g k8s -n containerservice-k8s
次に、マスター VM に SSH で接続してステータスを確認します。
これで、パブリック IP アドレスを介して UI を参照できます。
更新:
次の画像は、Azure コンテナー サービス クラスター (Kubernetes) のアーキテクチャを示しています。ロード バランサーを使用して、サービスをインターネットに公開する必要があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加