問題タブ [azure-container-service]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - NodePort は Azure Container Service (Kubernetes) で動作しますか?
Kubernetes ダッシュボード用に次のサービスを取得しました
ドキュメントによると、私は走った
http://localhost:8001/uiで動作します
しかし、クラスター外でもアクセスしたいのです。describe の出力は、ポート 30177 で NodePort を使用して公開されていることを示しています。
しかし、私はそれにアクセスすることができませんhttp://<any node IP>:30177
azure - Pod 内から cidr 10.0.x.0/24 を使用してネットワーク内 (k8s クラスターの外部) のマシンと通信できません
ポッドから通信したいネットワーク内に2台のマシンがあります。
Ip は次のとおりです。
マスター ノードまたはエージェント ノードに SSH で接続し、X または Y に対して ping を実行すると、ping は成功します。したがって、マシンは到達可能です。
ここでデプロイメントを作成し、( kubectl exec -it POD_NAME — /bin/sh
) を使用してポッドのシェルにログインします。
Y への ping は成功します。しかし、X への ping は失敗します。
CIDR の詳細:
何が問題なのかについての私の理解:
acs-engine には kube-proxy が 10.0.0.0/16 でサービス ネットワークをセットアップしています。これが問題の場合、kube-proxy cidr を変更するにはどうすればよいですか?
追加情報:
クラスターのデプロイにacs-engineを使用しています。
の出力ip route
default via 10.244.1.1 dev eth0
10.244.1.0/24 dev eth0 src 10.244.1.13
別の容疑者: 走っているiptables-save
とわかる
-A POSTROUTING ! -d 10.0.0.0/8 -m comment --comment "kubenet: SNAT for outbound traffic from cluster" -m addrtype ! --dst-type LOCAL -j MASQUERADE
azure - マスター経由で DC-OS スレーブにログインする方法
Azure で DC-OS クラスターを作成しました。ssh 公開キーを使用して作成した後、次のコマンドでマスターにアクセスできます。sudo ssh -v -A -p 2200 user@master-ip -i /root/.ssh/id_rsa
マスターに入った後、エージェントにアクセスしたいので、id_rsa と id_rsa.pub キーをホストからマスター ノードにコピーしました。次のコマンドを実行します。
ssh -p 22 10.32.0.4 debug1: 試行する認証方法はこれ以上ありません。許可が拒否されました (公開鍵)
残念ながら、次のエラーが発生します。多くの方法を試しましたが、Salveにsshしませんでした。
azure-container-service - Azure ACS - Kubernetes ポッド間通信
ACS インスタンスを作成しました。
実行するhelm init
と、分げつポッドが正常にプロビジョニングされました。次に、実行helm install stable/redis
して、redis デプロイメントを実行しました (一見)。
私kube exec -it
はredisポッドに入ることができ、それがバインドされていることを確認でき、 とで0.0.0.0
ログインできますが、 (から.)ではログインできません。redis-cli -h localhost
redis-cli -h <pod_ip>
redis-cli -h <service_ip>
kubectl get svc
別のポッドを実行すると (これがこの問題に遭遇した方法です) ping redis.default
、DNS が正しいサービス IP に解決されていることが示されますが、応答がありません。私telnet <service_ip> 6379
またはredis-cli -h <service_ip>
それが無期限にハングするとき。
さらにデバッグする方法については、少し迷っています。ノードに ssh して docker が何をしているかを確認できません。
また、最初は標準の Alphine-Redis イメージでこれを試していたので、ヘルムはフォールバックでした。昨日試してみたところ、ヘルムは機能しましたが、手動は機能しませんでした。今日(新しく構築されたACSクラスターで)それを行っていますが、どちらでもまったく機能していません。
クラスターを再度スピンアップして、安定して再現されるかどうかを確認しますが、何か怪しいことが起こっていると確信しています。
PS - 別のリージョンにサブネット 10.0.0.0/16 が重複する VNet があります。アドレス範囲に入ると、衝突があるという警告が表示されます。影響はありますか?
<EDIT>
いくつかの新しい洞察...それは高山ベースの画像と関係があります(これを使用することを目指してきました)...
そのため(これkube run a --image=nginx
はubuntuベースです)、シェルインしてtelnetをインストールし、redisサービスに接続できます。
しかし、たとえばkubectl run c --image=rlesouef/alpine-redis
シェルインすると、同じ redis サービスに対して telnet が機能しません。
</EDIT>