Change service vm connectivity directly to private subnet in service_instance

Registered by Andrii Ostapenko

Now service VM is attached to service subnet and cconnects to private subnet through router.
This limits private subnet connection to the router and invades cloud IP pool with service network IPs.
To avoid this service VM needs to be able to connect directly to private subnet
with additional interface.

Proposal:
And support for second, direct connectivity, which should be value by default, defined by new option in config.

behaviour of direct connectivity:
- Service VM will have two interfaces in private and service subnets.
- There will be no routing among private and service subnets.
- Service subnet interface will be used for service VM management, private subnet interface will be used to export shares to VMs in private subnet.

As a result:
Two possible ways of connectivity - via router and direct, direct is value by default.
If we have live cluster with service VMs, we should not change this option.

Dev notes:
main related module for change is manila.share.drivers.service_instance and dependent drivers on it, for the moment it is only manila.share.drivers.generic

Blueprint information

Status:
Complete
Approver:
Ben Swartzlander
Priority:
High
Drafter:
Andrii Ostapenko
Direction:
Needs approval
Assignee:
Bogun Dmitriy
Definition:
Approved
Series goal:
Accepted for juno
Implementation:
Implemented
Milestone target:
milestone icon juno-3
Started by
Bogun Dmitriy
Completed by
Bogun Dmitriy

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/direct-service-vm-connectivity,n,z

Addressed by: https://review.openstack.org/80790
    Changes service vm network connectivity

Addressed by: https://review.openstack.org/112314
    Change service VM connectivity

(?)

Work Items

Work items:
1) Add support for new client calls (interface attach/dettach): TODO
2) Implement support of two connectivities in service_instance: TODO
3) Implement support of two connectivies in all dependent drivers on service_instance (generic): TODO
4) Update image, used by default (now ubuntu), for having two net interfaces: TODO

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.