Setting up on MAC M1 using VMFusion virtual machine Ubuntu 24.04LTS
I'm just getting started for the course. I've only used Minikube before (have docker installed on mac) so this is my first time setting all of this up. I have quite a few questions and feel like I'm going in circles making things way harder than they are.
I have: Mac M1, VMFusion (set up control plane node according to lab 2.1 instructions), Ubuntu 24.04 LTS, swap disabled, apparmor disabled. All kubernetes (kubeadm, kubectl, kubelet, etc) are installed on mac, but not VM yet.
- Course says using a private network is best for troubleshooting and not to use ip 192. When I do private network in fusion, it goes to 192. I have no idea how to change this and am running into deadends when trying to find resources.
- Do I need to install containerd in my VM? or do I need to install Docker in my VM? Both? My understanding is docker already uses containerd via cri-shim, but I'm wondering if that was just when using minikube.
- Do I need to back up and install the scripts in lab 2.1 first before trying to do all of this? Do those scripts already install containerd, kubeadm, kubectl etc for me?
- When I try to ssh into my vm from iterm, it says theres no internet. Is this due to the private network, if so, how do I use iterm to access my vm and have internet while doing private network?
Essentially, where am I messing up and what do I need to do.
Answers
-
Hi @kallen17,
The LFD259 course comes with specific installation instructions, provided to you in the lab guide. Start with the Overview and Preliminaries exercise that details the virtual environment requirements. Provision two Virtual Machines of the size and guest OS specified. Ensure you follow the networking instructions as they are presented in the lab guide.
- What do you mean by:
Course says using a private network is best for troubleshooting and not to use ip 192
I cannot seem to find this information in the lab guide. Are you following the latest release?
- The installation should be done on the VMs respectively, not your workstation.
All kubernetes (kubeadm, kubectl, kubelet, etc) are installed on mac, but not VM yet.
Run the installation scripts as you are instructed by the lab guide. Feel free to inspect those scripts prior to running them, to discover the packages, tools, and configuration options that go into setting up each of the two Kubernetes nodes. The course is not relying on the Minikube environment, therefore the tool and its dependencies are not required to be installed. If they are already found on your host system, they should not interfere with the intended setup.
Networking issues:
When I try to ssh into my vm from iterm, it says theres no internet ...
For any networking related issues between your host workstation and the guest VMs, inspect the official documentation of your hypervisor. Keep in mind that the VMs should be accessible from the host system, should be able to communicate with each other, and both should have access to the internet - networking aspects managed through the hypervisor.
It is best to start with new VMs provisioned to the specs provided in the lab guide, after the hypervisor has been configured with the necessary networking settings. Then run the installation and configuration scripts as instructed by the lab guide to build the cluster necessary for the course. Since your host is powered by M1 processor, the ARM architecture may introduce some challenges at times, but not prevent you from completing the course lab work on your host. However, if your hypervisor supports AMD64 guest OS installations, I would recommend trying that instead.
Regards,
-Chris0 -
Hi Chris, thank you so much for getting back to me.
First and foremost, you mentioned specific installation instructions in a lab guide. I assume you're referring to networking instructions? There are videos within the course for setting up the lab environment if you are using AWS or GCE (costs extra), but I haven't found anything for host hypervisors. Can you point me to this lab guide? Are you referring to the resource files?
I have provisioned the machines, but am unable to download the scripts whether I ssh into my VM from iterm or within the fusion terminal itself (this is the same for if I do private networking, or use 'share with mac'.) I do not know what is causing the DNS/networking issue and feel quite lost. I can absolutely spend more time looking in Fusion docs if that is what you recommend. To follow-up on your questions:
I cannot seem to find this information in the lab guide. Are you following the latest release?
Under "Course Details & System Requirements", then "Lab Environment", the first bullet point says not to use 192 network for nodes. The 3rd paragraph following that says "Virtual machines such as KVM, VirtualBox, or VMWare can also be used for the lab systems. Putting the VMs on a private network can make troubleshooting easier." I interpreted this to mean I should be putting my VMs on a private network.
The installation should be done on the VMs respectively, not your workstation.Run the installation scripts as you are instructed by the lab guide. Feel free to inspect those scripts prior to running them, to discover the packages, tools, and configuration options that go into setting up each of the two Kubernetes nodes. The course is not relying on the Minikube environment, therefore the tool and its dependencies are not required to be installed. If they are already found on your host system, they should not interfere with the intended setup.
Yes, this is what I am attempting to do. The scripts/yaml files do not seem to contain the kubernetes components, so I was unaware if I needed to install containerd and those components prior to executing the scripts, or if it mattered. Either way, I haven't been able to successfully execute the scripts or get containerd installed on my VMs.
This is the order in which I've done things:
- Downloaded Fusion and Ubuntu iso image for AMD64
- Provisioned VMs according to the 'lab environment' tab within the Course Details & System Requirements (cp and worker nodes). This was successful.
- Lab 2.1 which reiterates above info and asks you to download scripts/yaml files. I was not able to execute the scripts. Output was: wget: unable to resolve host address. I was unsuccessful in troubleshooting the network issue.
- I attempted to download containerd, but ran into issues there as well.
I apologize for the verbose response but hopefully this is more articulate than my original post. Thank you again for your help.
0 -
Hi @kallen17,
By the lab guide I am strictly meaning the lab instructions that appear as embedded PDF pages in the lab exercise section.
The demo video instructions are helpful to provision and configure cloud VMs (AWS EC2 instances and Google Cloud GCE instances). In the case of a local hypervisor, aside from the guest OS Ubuntu 24.04 LTS, the virtual-hardware requirements per VM (2 vCPU, 8 GB RAM, 20+ GB vdisk, 1 bridged network interface), it is important to configure in the hypervisor the virtual network interface of each VM to accept all inbound traffic - that is all protocols, from all sources, to all port destinations. A single bridged interface per VM should satisfy the node-node, node-host, and node-internet communication. More advanced networking settings are also possible with multiple network interfaces per VM, but they require additional configuration when bootstrapping the Kubernetes cluster. Also, the 192.168.xx.zz IP addresses should be acceptable for the VMs because the current CNI network plugin - Cilium, is setting up the application pod network on the 10.0.0.0/8 default range.
Once you manage to download and extract the SOLUTIONS tarball (with
wgetandtar), the k8scp.sh (for cp) and k8sWorker.sh (for worker) scripts are to be executed on their respective VMs, to install all necessary components and perform minimal configuration. You are not required to manually install the container runtime, nor the container orchestrator components.Regards,
-Chris0
Categories
- All Categories
- 160 LFX Mentorship
- 160 LFX Mentorship: Linux Kernel
- 884 Linux Foundation IT Professional Programs
- 394 Cloud Engineer IT Professional Program
- 193 Advanced Cloud Engineer IT Professional Program
- 101 DevOps IT Professional Program
- DevOps & GitOps IT Professional Program
- 165 Cloud Native Developer IT Professional Program
- 158 Express Training Courses & Microlearning
- 155 Express Courses - Discussion Forum
- 3 Microlearning - Discussion Forum
- 7.4K Training Courses
- 50 LFC110 Class Forum - Discontinued
- 74 LFC131 Class Forum - DISCONTINUED
- 59 LFD102 Class Forum
- 272 LFD103 Class Forum
- 1 LFD103-JP クラス フォーラム
- 28 LFD110 Class Forum
- LFD114 Class Forum
- 53 LFD121 Class Forum
- 3 LFD123 Class Forum
- 1 LFD125 Class Forum
- 19 LFD133 Class Forum
- 10 LFD134 Class Forum
- 19 LFD137 Class Forum
- 1 LFD140 Class Forum
- 73 LFD201 Class Forum
- 8 LFD210 Class Forum
- 6 LFD210-CN Class Forum
- 2 LFD213 Class Forum - Discontinued
- 1 LFD221 Class Forum
- 128 LFD232 Class Forum - Discontinued
- 3 LFD233 Class Forum - Discontinued
- 5 LFD237 Class Forum
- 25 LFD254 Class Forum
- 765 LFD259 Class Forum
- 111 LFD272 Class Forum - Discontinued
- 4 LFD272-JP クラス フォーラム - Discontinued
- 23 LFD273 Class Forum
- 545 LFS101 Class Forum
- 4 LFS111 Class Forum
- 4 LFS112 Class Forum
- LFS114 Class Forum
- 5 LFS116 Class Forum
- 9 LFS118 Class Forum
- 2 LFS120 Class Forum
- LFS140 Class Forum
- 12 LFS142 Class Forum
- 9 LFS144 Class Forum
- 6 LFS145 Class Forum
- 7 LFS146 Class Forum
- 7 LFS147 Class Forum
- 22 LFS148 Class Forum
- 20 LFS151 Class Forum
- 6 LFS157 Class Forum
- 102 LFS158 Class Forum
- 1 LFS158-JP クラス フォーラム
- 15 LFS162 Class Forum
- 2 LFS166 Class Forum - Discontinued
- 9 LFS167 Class Forum
- 5 LFS170 Class Forum
- 2 LFS171 Class Forum - Discontinued
- 4 LFS178 Class Forum - Discontinued
- 4 LFS180 Class Forum
- 3 LFS182 Class Forum
- 7 LFS183 Class Forum
- 2 LFS184 Class Forum
- 41 LFS200 Class Forum
- 737 LFS201 Class Forum - Discontinued
- 3 LFS201-JP クラス フォーラム - Discontinued
- 23 LFS203 Class Forum
- 149 LFS207 Class Forum
- 3 LFS207-DE-Klassenforum
- 3 LFS207-JP クラス フォーラム
- 302 LFS211 Class Forum - Discontinued
- 56 LFS216 Class Forum - Discontinued
- 61 LFS241 Class Forum
- 51 LFS242 Class Forum
- 41 LFS243 Class Forum
- 18 LFS244 Class Forum
- 8 LFS245 Class Forum
- 1 LFS246 Class Forum
- 1 LFS248 Class Forum
- 127 LFS250 Class Forum
- 3 LFS250-JP クラス フォーラム
- 2 LFS251 Class Forum - Discontinued
- 164 LFS253 Class Forum
- 1 LFS254 Class Forum - Discontinued
- 3 LFS255 Class Forum
- 17 LFS256 Class Forum
- 2 LFS257 Class Forum
- 1.4K LFS258 Class Forum
- 12 LFS258-JP クラス フォーラム
- 147 LFS260 Class Forum
- 165 LFS261 Class Forum
- 45 LFS262 Class Forum
- 82 LFS263 Class Forum - Discontinued
- 15 LFS264 Class Forum - Discontinued
- 11 LFS266 Class Forum - Discontinued
- 25 LFS267 Class Forum
- 28 LFS268 Class Forum
- 38 LFS269 Class Forum
- 11 LFS270 Class Forum
- 202 LFS272 Class Forum - Discontinued
- 2 LFS272-JP クラス フォーラム - Discontinued
- 2 LFS274 Class Forum - Discontinued
- 4 LFS281 Class Forum - Discontinued
- 32 LFW111 Class Forum
- 265 LFW211 Class Forum
- 190 LFW212 Class Forum
- 17 SKF100 Class Forum
- 2 SKF200 Class Forum
- 3 SKF201 Class Forum
- 803 Hardware
- 200 Drivers
- 68 I/O Devices
- 37 Monitors
- 104 Multimedia
- 175 Networking
- 93 Printers & Scanners
- 87 Storage
- 767 Linux Distributions
- 82 Debian
- 67 Fedora
- 21 Linux Mint
- 13 Mageia
- 23 openSUSE
- 150 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 473 Linux System Administration
- 39 Cloud Computing
- 72 Command Line/Scripting
- Github systems admin projects
- 96 Linux Security
- 78 Network Management
- 102 System Management
- 48 Web Management
- 75 Mobile Computing
- 19 Android
- 43 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 392 Off Topic
- 122 Introductions
- 181 Small Talk
- 28 Study Material
- 967 Programming and Development
- 316 Kernel Development
- 633 Software Development
- 1.8K Software
- 312 Applications
- 183 Command Line
- 5 Compiling/Installing
- 989 Games
- 321 Installation
- 113 All In Program
- 113 All In 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)