我有不止一个 Kubernetes 上下文。当我更改上下文时,我一直在使用kill -9
终止端口转发以重做pachtctl port-forward &
命令。我想知道这是否是正确的做法。
更详细地说:
我从 Kubernetes 上下文开始,我们将其称为 context_x。然后我想将上下文更改为我的本地上下文,称为 minikube。我还想查看这个 minikube 上下文的存储库,但是当我使用 时pachctl list-repo
,它仍然显示 context_x 的 Pachyderm 存储库。当我这样做时pachctl port-forward
,我会收到一条有关该地址已在使用中的错误消息。所以我必须 ps -a,然后在那些端口转发进程上杀死 -9,然后再次执行 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
另外,pachctl port-forward
进程 37245 上的 kill -9 不起作用,看来我必须在进程上 kill -9kubectl port-forward