Lab 4.3 Step 7
Built my lab in GCP (after wasting a lot of time on virtual box .... i'm stubborn that way!).
I cant seem to get step 7 to work. ie.e view sock shop app. I've tried adding a firewall rule to GCP but no joy.
Does anyone have any tips ?
Thanks
Comments
-
Hi, I have been using GCP as well and did not run into any issues. I agree that Vbox is quite challenging to setup and complete the labs on it.
Did you get a complete listing of the pods in step 6? Did you get any services listed at all on step 7?
The firewall rule I added in GCP was to enable all traffic.
Will try to run thru the lab again, to see if any behavior has changed...
Regards,
-Chris0 -
what is your all rule for ? any-any internally between the nodes which i believe may be required (never used GCP so starting at the basics) ? or all from the internet ? (in which case good luck!) An idiots guide to getting a cluster up an running on GCP is really needed as part of the course, id rather spend my time learning kube than networking !
0 -
sorry forgot to say - output from steps 6 &7 is as it should be ....
0 -
If both outputs are as expected, then you may just have a firewall issue.
The GCP firewall rules documentation is quite easy to follow:
https://cloud.google.com/vpc/docs/using-firewalls
It gives specific instructions on how to create firewall rules from the console and from the command line thru gcloud command.
Also, verify that the firewall on your VM instances is disabled.
I had to perform these steps on both GCP and AWS in order to get the nodes to communicate with each other and to be able to access the cluster from my laptop.0 -
Got it working thanks, would be good if these steps were included in the lab setup. I know its not too hard to figure out but will be slightly different depending on cloud platform or virtual box (routes?) etc. Will paste my notes below, a bit more detail may help others ....
1 -
If building on GCP you will need a couple of firewall rules when testing external conectivity.
The easiest was to do this is to tag all of your cluster nodes with the same tag. E.g. "k8s" Compute Engine > VM instances > VM Node > Network tags.
GCP has a "default-allow-internal" rule which is based on an IP range, this IP range does not match the calico pod network range, hence the cluster will not work as expected.
To fix this create a new rule "internal-all" as below:
internal-all
Network: default
Priority: 65534
Direction: Ingress
Action on match: Allow
Targets
Target tags: k8s
Source filters
Tags: k8s
Protocols and ports: all
Enforcement: EnabledThis will allow unrestricted pod to pod and pod to node traffic. You will also need a firewall rule to allow traffic from the external world.
E.g.letmein
Network: default
Priority: 65534
Direction: Ingress
Action on match: Allow
Targets
Target tags: k8s
Source filters
IP ranges: 0.0.0.0/0
Protocols and ports: tcp:30001 (Check what node port you want to allow)
Enforcement: EnabledThe second rule could be deleted / disabled when not needed for labs.
0 -
don't think i'm quite right on the IP range bit as its tunnelled but there is something in the default GCP rule thats k8s doesn't like. (disable the new rule and you have to hit the node running the pod but with rule in place you can hit any node as i'd expect.
Worth a watch :
https://www.youtube.com/watch?v=WwQ62OyCNz40 -
An informative video, thanks for sharing.
I looked back at my notes and I only found 1 fw rule I created for my Kubernetes related project. I did not create a VPC or any subnets, so I created the rule for the default network at the project level. The custom rule was very simple: Ingress, Apply to all targets, Range 0.0.0.0/0, All protocols, Allow, 1000. Since all instances in the project were Kubernetes nodes, I figured I'd create one rule to apply to all.
Regards,
-Chris0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 750 Linux Foundation IT Professional Programs
- 373 Cloud Engineer IT Professional Program
- 169 Advanced Cloud Engineer IT Professional Program
- 74 DevOps IT Professional Program - Discontinued
- 4 DevOps & GitOps IT Professional Program
- 99 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 1 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 3 Cloud & Containers Training
- 1 Cybersecurity Training
- 2 DevOps & Site-Reliability Training
- 1 Linux Kernel Development Training
- 1 Networking Training
- 1 Open Source Best Practice Training
- 1 System Administration Training
- 1 System Engineering Training
- 1 Web & Application Development Training
- 792 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 87 Storage
- 769 Linux Distributions
- 81 Debian
- 68 Fedora
- 22 Linux Mint
- 13 Mageia
- 24 openSUSE
- 150 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 465 Linux System Administration
- 31 Cloud Computing
- 73 Command Line/Scripting
- Github systems admin projects
- 98 Linux Security
- 78 Network Management
- 101 System Management
- 46 Web Management
- 106 Mobile Computing
- 18 Android
- 73 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 392 Off Topic
- 121 Introductions
- 181 Small Talk
- 29 Study Material
- 955 Programming and Development
- 310 Kernel Development
- 627 Software Development
- 983 Software
- 375 Applications
- 182 Command Line
- 5 Compiling/Installing
- 68 Games
- 317 Installation
- Archived
- 2 LFD140 Class Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)