enos icon indicating copy to clipboard operation
enos copied to clipboard

MP-VPN: vpn load needs to create live objects

Open bmah888 opened this issue 9 years ago • 4 comments

When restoring the state of the VPN service, we're supposed to recreate the VPN objects. We do restore the properties corresponding to a number of members of VPN objects (for example entryfanoutflows, vpnsitevlans, mat, exitfanoutflows, hostsites, vpnsites, pops). These properties however don't appear to be converted back to live objects that are members of the VPN objects.

One symptom of this is that after a netshell restart, all of the VPNs exist but they have no pops, sites, or hosts configured for them.

bmah888 avatar Jun 02 '16 23:06 bmah888

The problem was that the VPN is implementing a vpn cache for optimizing DB access which conflicts with the Container cache which was introduced later.

lomaxfrog avatar Jun 04 '16 00:06 lomaxfrog

Fresh netshell load, but after a VPN instance was configured with the previous netshell code:

admin@NetShell> vpn load  

admin@NetShell> vpn listvpns 
                 VPN
                vpn1

admin@NetShell> vpn vpn1 listsites
  Site     POP                Switch      Port  VLAN

admin@NetShell> vpn vpn1 listpops 
   POP           Core Router       Hardware Switch       Software Switch

admin@NetShell> vpn vpn1 listhosts
              MAC     Translated MAC  Site

Am I doing something wrong?

bmah888 avatar Jun 15 '16 18:06 bmah888

Verified that properties are now properly in the database, but they seem to be stored as object and not json.

lomaxfrog avatar Jul 01 '16 15:07 lomaxfrog

Current status: most of the objects are created when mpvpn service starts but the various flow entries are not properly stored / reloaded.

lomaxfrog avatar Jul 11 '16 14:07 lomaxfrog