Jump to content

Virtual Vyatta Instance

Hi all,

 

Hopefully someone is able to help out with this predicament as it has two CCNP cert'd techs mystified.

 

System hardware & software layout

 

  • Core i5 vPRO NUC
    • 16GB RAM
    • 240GB SSD
    • Intel AC 7265 wireless card
    • Win8.1 Pro
      • NETSH WLAN hosted network
      • HyperV
        • Win 8.1 Pro VM (running IIS) (VM1)
        • Vyatta 6.6R1 / Vyos 1.1.7 (have tried both) (VM2)

Network Topology

  • HyperV
    • Internal virtual switch
      • eth0 (VM1)
      • eth1 (VM2)
      • logical network connection (NUC)
    • external virtual switch
      • eth0 (VM2)
      • (To be used later as a WAN interface for testing - not important for now)

Solution Design

Design is to have a NUC act as a web server (IIS) as well as a wireless access point to 15 clients without relying on any external hardware. Must use IIS due to a .NET requirement.

 

The issue

I can get Vyatta setup, configure a config etc however if I reboot the router, it dumps the config. Obviously once I've made changes while still in config mode, I'll run commit [enter] save [enter]

 

However if I then reboot the router, the configuration disapears and I'm forced to remap all of the setup. Anyone got any idea why the router is not saving the configuration? I'm considering a possible issue caused by a lack of virtual nvram?

Link to comment
https://linustechtips.com/topic/591573-virtual-vyatta-instance/
Share on other sites

Link to post
Share on other sites

I'm not sure what you mean by virtual nvram - I thought nvram was something only Apple had on their motherboards nowadays, at least that the OS can access and modify. Why would an OS that's meant to be run on non-Apple hardware rely on it?

 

Are you sure the virtual disk isn't read only? I think HyperV checks that whenever you start a VM, but it would be good to verify.

 

Is there any file protection software, ala Deep Freeze, running on the host OS?

 

After you commit the running config, what does "show startup-config" (or the equivalent) show?

 

I'm sure there was a good reason to go with Vyatta, but can you try Mikrotik RouterOS? They have a new x86 variant they are calling Cloud Hosted Router that is meant for virtualization. I know there is either a premade disk image or simple instructions for running on HyperV. You could at the very least use this as a comparison point, to see if RouterOS is able to save its config.

Looking to buy GTX690, other multi-GPU cards, or single-slot graphics cards: 

 

Link to comment
https://linustechtips.com/topic/591573-virtual-vyatta-instance/#findComment-7698414
Share on other sites

Link to post
Share on other sites

My experience with HyperV is pretty limited short of a few hundred servers I inherited and avoid touching at all costs. Does HyperV have a similar feature to VMware's "persistant disks"? A quick search shows HyperV uses "snapshots" to mimic this function, can you confirm you don't have any snapshots in place that this VM might be reverting to on reboot?

 

Can you try making the config file immutable to see if the problem is with the Vyatta OS itself and not HyperV?

chattr +i /config/config.boot

 

-KuJoe

Link to comment
https://linustechtips.com/topic/591573-virtual-vyatta-instance/#findComment-7698502
Share on other sites

Link to post
Share on other sites

1 hour ago, KuJoe said:

My experience with HyperV is pretty limited short of a few hundred servers I inherited and avoid touching at all costs. Does HyperV have a similar feature to VMware's "persistant disks"? A quick search shows HyperV uses "snapshots" to mimic this function, can you confirm you don't have any snapshots in place that this VM might be reverting to on reboot?

 

Can you try making the config file immutable to see if the problem is with the Vyatta OS itself and not HyperV?


chattr +i /config/config.boot

 

The idea to check if it's reverting to a snapshot is a good one, but I don't think you can do that in HyperV. I did a search to make sure, and the only relevant result I could find was http://serverfault.com/questions/582888/hyper-v-how-to-define-auto-revert-to-a-snapshot-after-each-reboot

Looking to buy GTX690, other multi-GPU cards, or single-slot graphics cards: 

 

Link to comment
https://linustechtips.com/topic/591573-virtual-vyatta-instance/#findComment-7698587
Share on other sites

Link to post
Share on other sites

@Windspeed36 What VM generation are you using? Generation 1 or Generation 2. NVRAM is handled quite differently between the two.

 

Vyatta does run fine as a VM, we used to use a couple of virtualized ones for a DR site to get isolated access to resources outside the bubble during DR testing. We no longer use them since our firewall upgrade project. We do use VMware however not Hyper-V.

 

Also have you tried VyOS instead or is this actually what you are using? Vyatta development has been dead for ages.

 

Edit: Re-read post, already stated that you tried both Vyatta and VyOS oops :P

Link to comment
https://linustechtips.com/topic/591573-virtual-vyatta-instance/#findComment-7698840
Share on other sites

Link to post
Share on other sites

16 minutes ago, leadeater said:

@Windspeed36 What VM generation are you using? Generation 1 or Generation 2. NVRAM is handled quite differently between the two.

 

Vyatta does run fine as a VM, we used to use a couple of virtualized ones for a DR site to get isolated access to resources outside the bubble during DR testing. We no longer use them since our firewall upgrade project. We do use VMware however not Hyper-V.

 

Also have you tried VyOS instead or is this actually what you are using? Vyatta development has been dead for ages.

It's running on a gen1 instance at the moment. I believe I had it running on a gen1 yesterday too on the same machine but a different VM without this issue. Can't be certain though because I don't recall restarting the router, only the hypervisor so the router may have simply picked up where it left off before host reboot. 

 

As for what I'm using, started with Vyos 1.1.7 as I struggled to find a working download link for Vyatta. Have since found one and tried Vyatta 6.6 and both have the same issue.

50 minutes ago, KuJoe said:

I installed VyOS on VMware just now and can't reproduce the problem. How are you rebooting the VM (CLI or through HyperV)?

Rebooting via CLI inside the router. 

3 hours ago, KuJoe said:

My experience with HyperV is pretty limited short of a few hundred servers I inherited and avoid touching at all costs. Does HyperV have a similar feature to VMware's "persistant disks"? A quick search shows HyperV uses "snapshots" to mimic this function, can you confirm you don't have any snapshots in place that this VM might be reverting to on reboot?

 

Can you try making the config file immutable to see if the problem is with the Vyatta OS itself and not HyperV?


chattr +i /config/config.boot

 

Haven't looked into that as of yet - not a huge HyperV person - predominantly use VMware however due to support and budget limitations, my hands are tied. 

2 hours ago, brwainer said:

The idea to check if it's reverting to a snapshot is a good one, but I don't think you can do that in HyperV. I did a search to make sure, and the only relevant result I could find was http://serverfault.com/questions/582888/hyper-v-how-to-define-auto-revert-to-a-snapshot-after-each-reboot

 

4 hours ago, brwainer said:

I'm not sure what you mean by virtual nvram - I thought nvram was something only Apple had on their motherboards nowadays, at least that the OS can access and modify. Why would an OS that's meant to be run on non-Apple hardware rely on it?

 

Are you sure the virtual disk isn't read only? I think HyperV checks that whenever you start a VM, but it would be good to verify.

 

Is there any file protection software, ala Deep Freeze, running on the host OS?

 

After you commit the running config, what does "show startup-config" (or the equivalent) show?

 

I'm sure there was a good reason to go with Vyatta, but can you try Mikrotik RouterOS? They have a new x86 variant they are calling Cloud Hosted Router that is meant for virtualization. I know there is either a premade disk image or simple instructions for running on HyperV. You could at the very least use this as a comparison point, to see if RouterOS is able to save its config.

 - NVRAM is what most routers especially Ciscio use to hold the startup config. If there's no config, they'll default to either startup or tftp import. 

- disk shouldn't be read only as I didn't define it to be.

 - HyperV and NETSH hosted network are the only services running on the host. 

- I'll double check when I get to work tomorrow however from memory it showed everything was there. I know show int gave me eth0/1 as how I'd defined them. 

- only went Vyatta due to being familiar with it (Ubiquiti backbone and similar commands to Cisco)

Link to comment
https://linustechtips.com/topic/591573-virtual-vyatta-instance/#findComment-7698976
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×