openstack neutron service chaining and insertion

19
OpenStack Neutron Service Insertion and Chaining Icehouse Summit Nov 2013 Sumit Naiksatam, Kanzhe Jiang

Upload: sumit-naiksatam

Post on 29-Jun-2015

2.039 views

Category:

Technology


0 download

DESCRIPTION

This is the service insertion and chaining proposal which was presented during the OpenStack Icehouse Design Summit (Hong Kong, Nov 2013).

TRANSCRIPT

Page 1: OpenStack Neutron Service Chaining and Insertion

OpenStack Neutron Service Insertion and Chaining

Icehouse Summit Nov 2013

Sumit Naiksatam, Kanzhe Jiang

Page 2: OpenStack Neutron Service Chaining and Insertion

Resource Model

Page 3: OpenStack Neutron Service Chaining and Insertion

Service Insertion Context and different insertion modes

Page 4: OpenStack Neutron Service Chaining and Insertion

Service Insertion Context

Page 5: OpenStack Neutron Service Chaining and Insertion

L3 insertion

Page 6: OpenStack Neutron Service Chaining and Insertion

L3 Insertion

Page 7: OpenStack Neutron Service Chaining and Insertion

L3 Insertion

Page 8: OpenStack Neutron Service Chaining and Insertion

L3 Insertion

Page 9: OpenStack Neutron Service Chaining and Insertion

L2 Insertion

Page 10: OpenStack Neutron Service Chaining and Insertion

Bump in the Wire

Page 11: OpenStack Neutron Service Chaining and Insertion

Tap

Page 12: OpenStack Neutron Service Chaining and Insertion

Service Chain Resource

Page 13: OpenStack Neutron Service Chaining and Insertion

Create and insert individual service

Page 14: OpenStack Neutron Service Chaining and Insertion

Chooses Service Provider Name from list of available service providers.

$ neutron service-provider-list

-----------------------------------------------------| Service Type | Name | Default ||----------------------------------------------------| FIREWALL | IPTables | True || FIREWALL | VendorA | False || VPN | OpenSwan | True || VPN | VendorB | False |-----------------------------------------------------

Page 15: OpenStack Neutron Service Chaining and Insertion

Create service instance (firewall in this case)

$ neutron firewall-create <firewall_policy_id>

OR

$ neutron firewall-create <firewall_policy_id> \ --provider VendorA

OR

$ neutron firewall-create <firewall_policy_id> \ --provider VendorA \ --insertion-context router_id=<router_id>

Page 16: OpenStack Neutron Service Chaining and Insertion

Create a Service Chain

Page 17: OpenStack Neutron Service Chaining and Insertion

Chooses Service Provider Name from list of available service providers.

$ neutron service-provider-list-----------------------------------------------------| Service Type | Name | Default ||----------------------------------------------------| FIREWALL | IPTables | True || FIREWALL | VendorA | False || VPN | OpenSwan | True || VPN | VendorB | False |-----------------------------------------------------

$ neutron service-chain-provider-list

-----------------------------------------------| Chain Name | Services ||----------------------------------------------|Firewall-VPN-Ref-Chain| [IPTables,OpenSwan] |-----------------------------------------------

Page 18: OpenStack Neutron Service Chaining and Insertion

Create each service in the eventual chain

$ neutron firewall-create <firewall_policy_id> \ --provider IPTables \ –-in-chain True \ … … …

$ neutron vpn-service-create \ --provider OpenSwan \ –-in-chain True \ … … …

Page 19: OpenStack Neutron Service Chaining and Insertion

Create chain

$ neutron service-chain-create \ --provider Firewall-VPN-Ref-Chain \ --services <firewall_instance_id, vpn_instance_id> \ --name my_fw_vpn_chain \ --source-insertion-context --router_id=<router_id> … … …