GCP GCE не разрешает входящий трафик c на порт, открытый портом узла на K8S - PullRequest
0 голосов
/ 24 апреля 2020
ytong@master:~$ kubectl get service
NAME         TYPE           CLUSTER-IP       EXTERNAL-IP   PORT(S)        AGE
kubernetes   ClusterIP      10.96.0.1        <none>        443/TCP        4h11m
nginx        LoadBalancer   10.111.227.218   <pending>     80:31371/TCP   75m

Пожалуйста, игнорируйте состояние ожидания для LoadBalancer. Поскольку я не использую GKE, но использую GCE с K8S, установленным вместе с kubeadm, для создания службы в службе LoadBalancer, поэтому она всегда будет в состоянии PENDING.

ytong@master:~$ kubectl get node -o wide
NAME     STATUS   ROLES    AGE     VERSION   INTERNAL-IP   EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION   CONTAINER-RUNTIME
master   Ready    master   4h12m   v1.18.1   10.2.0.3      <none>        Ubuntu 18.04.4 LTS   5.0.0-1034-gcp   docker://19.3.6
worker   Ready    <none>   3h41m   v1.18.1   10.2.0.4      <none>        Ubuntu 18.04.4 LTS   5.0.0-1034-gcp   docker://19.3.6

master  us-central1-f           10.2.0.3 (nic0) 35.222.140.199      
worker  us-central1-f           10.2.0.4 (nic0) 34.67.101.1     

ytong@master:~$ curl http://10.2.0.3:31371
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

ytong@master:~$ curl http://35.222.140.199:31371
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

Я могу использовать порт 31371, открытый узлом порт для доступа к службе nginx, наконец, сопоставлен с портом 80 на модуле на виртуальных машинах GCP GCE или на сервере перехода на GCP.

Но я не могу зайти с рабочего стола через Inte rnet.

ytong@L-AUN-11021501 MINGW64 ~
$ curl http://35.222.140.199:31371
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (56) Recv failure: Connection was reset

Я полагаю, что соединение с портом 31371 заблокировано GCP, но я попытался разрешить всем трафикам c как для VP C по умолчанию, так и для VP C, созданным мной, для хранения виртуальных машин GCE, это не ' t работать.

Продолжать обновлять поток.

Я добавляю 2 правила брандмауэра и пытаюсь разрешить tcp: 31371 traffi c для виртуальных машин GCE, где на нем работает служба порта узла k8s. enter image description here

...