congress - object-storage-ca-ymq-1.vexxhost.net · deep-dive demo for openstack on vmware 2:40-3:20...

18
Congress A System For Declaring, Auditing, and Enforcing Policy In Heterogeneous Cloud Environments Peter Balland Tim Hinrichs OpenStack Summit, May 2014

Upload: others

Post on 23-Jul-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Congress A System For Declaring, Auditing, and Enforcing Policy In Heterogeneous Cloud Environments

Peter Balland Tim Hinrichs OpenStack Summit, May 2014

Page 2: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

The Policy Problem

2

Governmental Legislation

Industrial Regulations

Organizational Contracts

Privacy Promises

Business Rules

Application Requirements

Page 3: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

IT Policy Use Cases •  Network Access Control

–  Allow/deny/waypoint flows using (i) attributes of source/destination users/hosts (e.g. for hosts whether mobile, last-connection), (ii) payload, (iii) risk score.

–  Load-balance flows to server A to servers B, C, D, E, and F.

•  Application (multiple VMs) Configuration –  Allow/deny network-attachments of VMs based on attributes of VM/tenant. –  Parameterize application templates, e.g. when an app is deployed for testing/dev, there should be

1 WS/1 DB/1 App. For deployment, there are many more of each kind of VM.

•  Application Deployment Location –  Applications that manage data from Singapore (Japan, Turkey) must be located in a data center

that physically resides within

•  Host Management –  Intrusion prevention systems should be applied to high-risk hosts

3

Page 4: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Existing Approach: Multiple Touch Points

4

Governmental Legislation

Industrial Regulations

Organizational Contracts

Privacy Promises

Business Rules

Application Requirements

Page 5: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Congress Policy Framework

5

Policy (Congress)

AVaaS

Networking

Compute

Storage

FWaaS

Page 6: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Any Cloud Service

6

Congress

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31 User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

User Dept Age

Pete Finance 30

Tim Engineering 32

Martin Finance 33

Pierre Sales 31

Page 7: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

ID Results Time

VM1 Infected 01:13:56

VM2 Clean 18:23:05

VM3 Infected 07:13:09

VM4 Clean 20:21:17

Net Switch Ports

Net1 Switch1 2

Net1 Switch2 30

Net2 Switch3 0

Net3 Switch4 10

VM Memory CPU

VM1 32GB 4

VM2 64GB 8

VM3 32GB 12

VM4 128GB 8

Disk Capacity Used

Disk1 1TB 501GB

Disk2 2TB 237GB

Disk3 8TB 6.1TB

Disk4 4TB 3.2TB

Any Policy

7

… … …

Permitted Actions

create_vm(…)

delete_vm(…)

move_vm(…) …

Errors

VM1

Router2

Router3 …

Actions to Execute

disconnect_network(…)

Cloud Service Tables

Reserved Tables

Page 8: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Monitoring and Enforcement

8

Permitted Actions

create_vm(…)

delete_vm(…)

move_vm(…) …

Errors

VM1

Router2

Router3 …

Actions to Execute

disconnect_network(…)

Permitted Actions Prohibited States Actions to Execute

2. Prevent Violations

1. Monitor Violations 3. Correct

Violations

Page 9: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Congress Policy Grammar

•  <policy> ::= <rule>*

•  <rule> ::= <atom> COLONMINUS <literal> (COMMA <literal>)*

•  <literal> ::= <atom>

•  <literal> ::= NOT <atom>

•  <atom> ::= TABLENAME LPAREN <term> (COMMA <term>)* RPAREN

•  <term> ::= INTEGER | FLOAT | STRING | VARIABLE

9

Page 10: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Example •  Policy:

–  Every network attached to a VM must be a public network or a private network owned by someone in the same group as the VM owner.

•  Cloud Services: –  Nova: a manager for VMs –  Neutron: a manager for virtual networks –  LDAP: manager for group-membership

•  Enforcement: – Monitoring: check if all deployed VMs obey this policy. – Preventative: before Nova deploys VM, ask Congress if within policy. – Corrective: when LDAP group membership changes, correct violations

10

Page 11: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Prohibited States Policy

11

// prohibited states error(vm) :-

nova:virtual_machine(vm), nova:network(vm, network), not neutron:public_network(network), neutron:owner(network, netowner), nova:owner(vm, vmowner), not same_group(netowner, vmowner)

// which users are members of the same group same_group(user1, user2) :-

ldap:group(user1, group), ldap:group(user2, group)

Page 12: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Example Cloud State (No Violations)

12

Net_private

Network Owner

Net_private Martin

VM1

User Group

Pete Congress

Tim Congress

Martin Congress

Pierre Congress

Neutron:owner LDAP:group

Net_public VM2 VM3

Network

Net_public

Neutron:public

VM Owner

VM1 Tim

VM2 Pete

VM3 Pierre

Nova:owner Error

<no rows>

Page 13: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Example Cloud State (1 Violation)

13

Net_private

Network Owner

Net_private Martin

VM1

User Group

Pete Congress

Tim Congress

Martin Congress

Pierre Congress

Neutron:owner LDAP:group

Net_public VM2 VM3

Network

Net_public

Neutron:public

VM Owner

VM1 Tim

VM2 Pete

VM3 Pierre

Nova:owner Error

VM1

Page 14: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Congress + OpenStack •  Fills a business need of implementers and operators

•  Prohibit vendor lock-in

•  Congress integration across projects facilitates greater inter-component communication and extensibility

14

Page 15: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Status and Roadmap •  Basic Policy language implementation (datalog evaluation, optimization, etc.) •  Architecture and API (formalize data models and implement event loop, APIs)

•  Enhanced Policy language

•  Policy structure (multi-tenancy, multi-stakeholder)

•  Enforcement (action execution, component sub-policy interaction)

•  Libraries (data-source drivers, HIPPA (etc.) encoding)

•  Policy Analysis (loop & redundancy detection, impact analysis)

•  Dashboard

•  …

15

Page 16: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

How To Help •  Open Source Community Design Session

–  Room B405

•  IRC Meetings –  Bi-weekly on Tuesdays (e.g. May 20, 2014) at 1700 UTC

•  openstack-dev mailing list

16

Page 17: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

References •  Congress Wiki

–  https://wiki.openstack.org/wiki/Congress

•  On Policy in the Data Center –  http://networkheresy.com/2014/04/22/on-policy-in-the-data-center-the-policy-problem/

•  Stackforge Repo: –  https://github.com/stackforge/congress

17

Page 18: Congress - object-storage-ca-ymq-1.vexxhost.net · Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress:

Monday VMware Demo 1:00-1:15 pm, Demo Theater

Enterprise Grade Scheduling 4:40-5:20 pm, B206

Bridging The Gap: OpenStack For VMware Administrators 5:30-6:10 pm, B206

Software Defined Networking Performance And Architecture Evaluation 5:30-6:10 pm, B103 Presented by Symantec & Mirantis

Learn more about VMware + OpenStack at the following sessions:

Tuesday

Scaling Neutron For Large Deployments 4:40-5:20 pm, B101 Presented by eBay & PayPal

Open vSwitch And The Intelligent Edge 5:30-6:10 pm, B206

Wednesday VMware + OpenStack: Accelerating OpenStack In The Enterprise 1:50-2:30 pm, B313 Deep-dive Demo for OpenStack On VMware 2:40-3:20 pm, B313 OpenStack Distribution Support For vSphere + NSX 3:30-4:10 pm, B313 Congress: A System For Declaring, Auditing, and Enforcing Policy In Heterogeneous Cloud Environments 4:30-5:10 pm, B313 VSAN and OpenStack 5:20-6:00 pm, B313

Thursday Recap: Nova-network Or Neutron For OpenStack Networking? 9:50-10:30 am, B309 Leveraging VMware Technology To Build An Enterprise Grade OpenStack Cloud - It's Not Always About KVM! 2:20-3:00 pm, B101 Presented by iLand

Session by VMware Customers / Partners

Session by VMware

Hands-on-Labs OpenStack on VMware vSphere and NSX Wed, May 14, 3:30-5:30 pm, B313

OpenStack Networking Wed, May 14, 4:30-6:00 pm, B314

The Enterprise-Grade Foundation For Your OpenStack Cloud