Congress Blueprint --policy abstraction

Slides:



Advertisements
Similar presentations
Database Systems: Design, Implementation, and Management Tenth Edition
Advertisements

1 Chapter 2 Database Environment Transparencies © Pearson Education Limited 1995, 2005.
Chapter 2 Database Environment.
Ch1: File Systems and Databases Hachim Haddouti
Chapter 2 Database Environment Pearson Education © 2014.
Chapter 1 An Overview of Database Management. 1-2 Topics in this Chapter What is a Database System? What is a Database? Why Database? Data Independence.
Mrs. Maninder Kaur 1Maninder Kaur
Database Environment 1.  Purpose of three-level database architecture.  Contents of external, conceptual, and internal levels.  Purpose of external/conceptual.
A Policy-based Approach to Wireless LAN Security Management George Lapiotis, Byungsuk Kim, Subir Das, Farooq Anjum Speaker: George Lapiotis
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
CST203-2 Database Management Systems Lecture 2. One Tier Architecture Eg: In this scenario, a workgroup database is stored in a shared location on a single.
UI and Data Entry UI and Data Entry Front-End Business Logic Mid-Tier Data Store Back-End.
1 Introduction to Database Systems. 2 Database and Database System / A database is a shared collection of logically related data designed to meet the.
Database Administration COMSATS INSTITUTE OF INFORMATION TECHNOLOGY, VEHARI.
Instructor: Dema Alorini Database Fundamentals IS 422 Section: 7|1.
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
Bayu Adhi Tama, M.T.I 1 © Pearson Education Limited 1995, 2005.
Database Environment Session 2 Course Name: Database System Year : 2013.
EXPOSING OVS STATISTICS FOR Q UANTUM USERS Tomer Shani Advanced Topics in Storage Systems Spring 2013.
Fall CSE330/CIS550: Introduction to Database Management Systems Prof. Susan Davidson Office: 278 Moore Office hours: TTh
Chapter 2 Database Environment.
1 Database Environment. 2 Objectives of Three-Level Architecture u All users should be able to access same data. u A user’s view is immune to changes.
1 Chapter 2 Database Environment Pearson Education © 2009.
Lecture On Introduction (DBMS) By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
DOMAIN DRIVEN DESIGN Dave 12 May WHAT IS DDD? Set of principles to aid in building complex systems Enables us to focus on core problem domain NOT.
Failure Inspection in Doctor utilizing Vitrage and Congress
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Design Concepts ch-8
Presented By: Smriti Bhatt
Md Baitul Al Sadi, Isaac J. Cushman, Lei Chen, Rami J. Haddad
Introduction to Oracle Forms Developer and Oracle Forms Services
Introduction to DBMS Purpose of Database Systems View of Data
國立臺北科技大學 課程:資料庫系統 Chapter 2 Database Environment.
Database Systems: Design, Implementation, and Management Tenth Edition
REV 00 Chapter 2 Database Environment DDC DATABASE SYSTEM.
Roles in the Database Environment
REV 00 Chapter 2 Database Environment DDC DATABASE SYSTEM.
Software Engineering Lecture 4 System Modeling The Analysis Stage.
Chapter 1: Introduction
The Development Process of Web Applications
Introduction to Oracle Forms Developer and Oracle Forms Services
Principles of Computer Security
Institute for Cyber Security
Introduction to Oracle Forms Developer and Oracle Forms Services
DATA MODELS.
Distribution and components
Part 3 Design What does design mean in different fields?
Chapter 6 Database Design
University of Central Florida COP 3330 Object Oriented Programming
Use Cases and Requirements for I2NSF_
Abstract descriptions of systems whose requirements are being analysed
Tomi Juvonen SW Architect, Nokia
 DATAABSTRACTION  INSTANCES& SCHEMAS  DATA MODELS.
Chapter 2 Database Environment Pearson Education © 2009.
What is a Database and Why Use One?
Chapter 2 Database Environment Pearson Education © 2009.
Data Base System Lecture : Database Environment
Unified Modeling Language
Patterns.
Database Environment Transparencies
Cloud computing mechanisms
Software Design Lecture : 15.
Software Design Lecture : 14.
Introduction to DBMS Purpose of Database Systems View of Data
Cloud-Enabling Technology
Chapter 2 Database Environment Pearson Education © 2014.
Chapter 5 Architectural Design.
Chapter 2 Database Environment Pearson Education © 2009.
Presentation transcript:

Congress Blueprint --policy abstraction Yali Zhang

What is Congress? Wiki: https://wiki.openstack.org/wiki/Congress Congress is a core OpenStack project to provide policy as a services across any collection of cloud services (e.g. application, compute, network and storage) in order to offer governance and compliance for dynamic infrastructures. Wiki: https://wiki.openstack.org/wiki/Congress

What is the Solution? Why Congress? Different policy implementation: Nova: SolverSchedular Neutron: group policy or configuration Swift: Swift policy engine …… Disadvantages: Complex configuration Tremendous conflict probability Incompetent for across components services …… What is the Solution?

Mechanism of Congress Retrieve data from underlying components by different drivers Express violation state with these data tables Functionality of Congress Allow cloud administrators and tenants to use a high-level, general purpose, declarative language to describe business logic. Datalog has been adopted as the policy expression language. Offer a pluggable architecture that connects to any collection of cloud services Enforce policy Proactive: preventing violations before they occur Reactive: correcting violations after they occur Monitoring: give administrators insight into policy and its violations.

Typical Example Requirement: Every network attached to a VM must be owned by someone in the same group as the VM owner. error(name2):- nova:servers(device_id, name2, c2, d2, tenant_id2, f2, g2, h2), neutronv2:ports(a, tenant_id, c, network_id, e, f, g, h, device_id, g), neutronv2:networks(network_id, tenant_id3, c3, d3, e3, f3), not same_group(tenant_id, tenant_id3) same_group(x,y) :- group(x,g),group(y,g) Datalog is not intuitive, even difficult. When translate the real intent into Datalog, the logic may be complex. And users must explicitly know the elements in underlying data tables, and how to connect them.

A Blueprint of Congress —— policy abstraction Motivation: Datalog is complex language which is not intuitive to express users’ real intent. And there isn’t a unified policy model in Congress, so this blueprint aims to express a simple and intuitive way to deploy policies. error(vm) :- nova:virtual_machine(vm) nova:network(vm, network) nova:owner(vm, vm_owner) neutron:owner(network, network_owner) not same_group(vm_owner, network_owner) Entities+ attributions Conditions=error state Datalog consists of three parts. Objects which can be fetched from underlying services Objects’ attributions which are the elements to structure violations Prohibition state which expressed by objects’ attributions

Policy in Congress can be abstracted into object, violation-condition, action and data. Object: an object or several related objects which are concerned by policy Violation-condition: the state of objects’ attributes or the relationship between several entities which can produce violation Action: the action needs to take for this policy, such as, monitoring, proactive or some specific reactive actions Data: the information gotten or needed when execute the action Expression in Horizon

Details of abstraction elements Objects The related objects users care about which be jointed by some fields. e.g. Users care about the relation between servers and networks, they just need to choose these two objects without worrying about how to connect them (port). UI will predefine this relationship. Violation-condition Error state expressed by Datalog can be apart into two types. Restriction attributions’ value or statistic value (arithmetic or string manipulation) Restriction whether some attributions in some specific tables (data table manipulation)

Expansion of policy abstraction nova neutron swift New service drivers policy engine admin Define new objects and relationship, violation condition Database user Use new objects and relationship, violation condition