tinkerbell / playground

Example deployments of the Tinkerbell Stack for use as playground environments
Apache License 2.0
132 stars 87 forks source link

Failed to complete quickstart VAGRANTVBOX #176

Open ncdanie opened 1 year ago

ncdanie commented 1 year ago

Unable to complete quickstart for Vagrant & Virtualbox. Failing at step 4.

Expected Behaviour

kubectl command completes

Current Behaviour

At step 4, kubectl get -n tink-system workflow sandbox-workflow --watch hangs. I tried a few times and then let it hang for a few hours.

Screenshot 2023-08-09 204043 Screenshot 2023-08-09 204134

tjhacker commented 1 year ago

I also am experiencing a similar error. I've been digging into this, and it looks like there might be a problem in the tink-stack container, in which the command in the alpine container (init) doesn't populate the directory /usr/share/nginx/html with the vmlinuz file (the checksum file is created, but that's it). The phone-home step does work.

jacobweinstock commented 1 year ago

Hey @tjhacker and @ncdanie , a PR just landed that has updated the Playground to the latest Tinkerbell Helm chart (v0.4.2). Please try this out and let me know if this issue is still happening. Thanks for posting the issue!

dieunguyenxuan commented 8 months ago

Unable to complete quickstart for Vagrant & Virtualbox. Helm Chart v0.4.3 issue still happening. image

uhofemeier commented 7 months ago

Yep. Same here. The network is up. I can ping the 192.168.56.x slack host from machine1 fine, but that's the end of it.

jacobweinstock commented 3 months ago

Hey @dieunguyenxuan and @uhofemeier, would you be able to provide more information? What is your Host OS? Which versions of Vagrant and VirtualBox are you running? Have you modified the .env file at all? Have you tried the latest Helm chart (v0.4.5)? Mind sharing the Smee logs?

ttwd80 commented 2 months ago

Same here. It works with libvirt but fails with virtualbox.

VBoxManage --version
7.0.16_Ubuntur162802

and

vagrant --version
Vagrant 2.4.1

and

at /etc/os-release 
PRETTY_NAME="Ubuntu 24.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.1 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo

Initially the error message was

==> machine1: Running 'pre-boot' VM customizations...
A customization command failed:

["modifyvm", :id, "--nic1", "hostonlynet", "--nic2", "nat", "--boot1", "disk", "--boot2", "net"]

The following error was experienced:

#<Vagrant::Errors::VBoxManageError: There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.

Command: ["modifyvm", "8d083fd1-bc1b-41e5-b33e-6ca94c8a0419", "--nic1", "hostonlynet", "--nic2", "nat", "--boot1", "disk", "--boot2", "net"]

Stderr: VBoxManage: error: Invalid type 'hostonlynet' specfied for NIC 1
>

Please fix this customization and try again.

Then I made a change

git diff
diff --git a/stack/vagrant/Vagrantfile b/stack/vagrant/Vagrantfile
index ffc1aa4..ffb6209 100644
--- a/stack/vagrant/Vagrantfile
+++ b/stack/vagrant/Vagrantfile
@@ -76,7 +76,7 @@ Vagrant.configure("2") do |config|
       v.memory = 2048
       v.cpus = 2
       v.gui = true
-      v.customize ["modifyvm", :id, "--nic1", "hostonlynet", "--nic2", "nat", "--boot1", "disk", "--boot2", "net"]
+      v.customize ["modifyvm", :id, "--nic1", "hostonly", "--nic2", "nat", "--boot1", "disk", "--boot2", "net"]
       v.customize ["modifyvm", :id, "--macaddress1", MACHINE1_MAC.gsub(/[:-]/, "").strip]
       v.customize ["setextradata", :id, "GUI/ScaleFactor", "3.0"]
       v.check_guest_additions = false

After changing it, the GUI comes up and shows the same error as the one provided by @dieunguyenxuan

image

$ vagrant ssh stack
Last login: Tue Sep  3 18:20:49 2024 from 10.0.2.2
vagrant@ubuntu2204:~$ helm -n tink-system ls
NAME        NAMESPACE   REVISION    UPDATED                                 STATUS      CHART       APP VERSION
tink-stack  tink-system 1           2024-09-03 18:19:55.358609217 +0000 UTC deployed    stack-0.4.5 0.4.5      
vagrant@ubuntu2204:~$ 
jacobweinstock commented 2 months ago

Hey @ttwd80. Thanks for sharing all the details. Mind sharing the "Host-only Networks" tab from your Virtualbox network manager?

image
ttwd80 commented 2 months ago

@jacobweinstock I managed to make it boot.

VBoxManage list dhcpservers
VBoxManage dhcpserver remove --network=HostInterfaceNetworking-vboxnet0
VBoxManage list dhcpservers

You should get zero dhcp servers before creating the stack vm.

The dhcp server will then be automatically created but disabled

$ VBoxManage list dhcpservers
NetworkName:    HostInterfaceNetworking-vboxnet0
Dhcpd IP:       0.0.0.0
LowerIPAddress: 0.0.0.0
UpperIPAddress: 0.0.0.0
NetworkMask:    0.0.0.0
Enabled:        No
Global Configuration:
    minLeaseTime:     default
    defaultLeaseTime: default
    maxLeaseTime:     default
    Forced options:   None
    Suppressed opts.: None
        1/legacy: 0.0.0.0
Groups:               None
Individual Configs:   None
user@sun:~/git/tinkerbell/playground/stack/vagrant$