Welcome to the Linux Foundation Forum!

Lab2.2 time out errors when trying to ssh back into the nodes. Noticed firewall rules changed.

In exercise 2.2, after running the bash scripts to install kubernetes on both the master and worker nodes, and connecting them using the kubeadm join statement, I walked away from my computer for a bit. When I returned, and tried to ssh back into the master and worker nodes I'm getting a timeout error. When I checked the firewall rules I noticed the "lfclass" firewall rule I initially created where the "Direction of traffic": "ingress", "action on match": "allow") is missing! There are a bunch of new firewall rules, including one for ingress where "Protocols/Ports"="all" and "Action"="Deny"

What happened? Is this expected? How can I ssh into the nodes as I did previously?

Thanks,
Ryan

Comments

  • chrispokorni
    chrispokorni Posts: 2,372

    Hi Ryan,

    The behavior of your environment is unexpected and unique. We have no control over learners' environments, and the installation scripts for both master and second nodes do not interfere in any way with the lab infrastructure. Kubernetes does not manage the underlying infrastructure, it only uses it as it is configured by the user. Any infra misconfiguration will not be "fixed" by Kubernetes.

    From my experience, creating a new custom VPC together with a custom all-open/allow-all firewall rule works very well. I was able to spin up hundreds of Kubernetes clusters of various sizes, in that same VPC, and never encountered any such issues.

    Regards,
    -Chris

  • Ryan-Chase
    Ryan-Chase Posts: 12
    edited March 2020

    @chrispokorni

    Do you have any thoughts on how this could have happened? I was ssh-ed into both the master node (in one terminal session) and the worker node (in another terminal session) when I walked away. And when I returned to my computer I was logged out. When I tried to SSH back in I received the timeout errors in which I then began looking at the firewall rules. In the course video, "Using GCE to Set Up Labs" we only set up one firewall rule which was to allow all ingress from any protocol and port. However, this is what my firewall rules page looks like now:

    ...I did not create any of these, so I'm assuming that either the installation scripts (k8sMaster.sh, k8sSecond.sh), or the kubeadm join command must have created these?

  • serewicz
    serewicz Posts: 1,000

    Hello,

    The scripts would not have been able to do this. These scripts are run inside of the nodes. The nodes would have no access to your GCE console. I've not seen anything like this. Could something have been on the keyboard like a book or something and some sort of strange loop started? A co-workers messing with you?

    I would probably clear out all but the one all-open rule mentioned in the video. I can assure you this was not caused by the script, or anything done according to the lab exercises.

    Regards,

  • @serewicz @chrispokorni

    I was able to solve the issue. I believe the issue I was facing was due to enforcers that are in place to restrict incoming traffic at the GCP Organization level for the GCP Organization that my project was created under. I recreated a different project under a different GCP Org and used the same keys and it's working.

    Thanks,
    Ryan

  • chrispokorni
    chrispokorni Posts: 2,372

    Glad to hear it all works now. That explains the additional firewall rules which may have been created automatically on your behalf.

    Regards,
    -Chris

Categories

Upcoming Training