2017-05-30 5 views
2

私は複数のKubernetesコンテキストを持っています。コンテキストを変更すると、私はkill -9を使用して、pachtctl port-forward &コマンドをやり直すためにポートフォワードを強制終了しています。これが正しいことだと思います。より詳細にはPachydermを正しいKubernetesコンテキストにリンクさせるにはどうすればよいですか?

私はKubernetesコンテキストであることから始め、我々はそれがcontext_x呼ぶことにします。私はコンテキストを私のローカルコンテキスト、minikubeに変更したいと思います。私はこのミニクーブの文脈のために私のレポを見たいと思っていますが、私がpachctl list-repoを使うと、それはまだcontext_xのPachyderm reposを示しています。 pachctl port-forwardを実行すると、既に使用中のアドレスに関するエラーメッセージが表示されます。だから私はps -aにしてから、それらのポート転送プロセスで-9をkillしてから、pachctl port-forwardコマンドをもう一度実行しなければなりません。

私が何をしてきたの例:また

$ kubectl config use-context minikube 
$ pachctl list-repo #doesn't show minikube context's repos 
$ pachctl port-forward & 
...several error messages along the lines of: 
Unable to create listener: Error listen tcp4 127.0.0.1:30650: bind: address already in use 
$ ps -a | grep forward 
33964 ttys002 0:00.51 kubectl port-forward dash-12345678-abcde 38080:8080 
33965 ttys002 0:00.51 kubectl port-forward dash-12345679-abcde 38081:8081 
37245 ttys002 0:00.12 pachctl port-forward & 
37260 ttys002 0:00.20 kubectl port-forward pachd-4212312322-abcde 30650:650 
$ kill -9 37260 
$ pachctl port-forward & #works as expected now 

は、殺す-9動作しないpachctl port-forwardプロセス37245に、私が殺すために-9 kubectl port-forward

に持っているように思えます

答えて

2

-pフラグをdocsに記載されているように使用して、別のポートとして指定することはできます。

また、バックグラウンドでプロセスを開始してからSIGKILLを送信すると、リソースが正しく割り当てられないため、再度参加しようとすると、同じポートを再度割り当てることができないため、エラーが発生することがあります。だから最後に&なしで実行してみてください。

コンテキストを変更するたびに、CTRL + Cが必要です。これを再開すると、リソースが適切に解放され、その結果が得られます。

関連する問題