Murano Service Architecture Introducation
1. Murano Project Mission
From the third-party tool developer’s perspective,
the application catalog will provide a way to publish applications and services,
including deployment rules and requirements, suggested configuration, output parameters and billing rules.
It will also provide a way to track billing and usage information.
From the user’s perspective, the application catalog will be a place to find and self-provision third-party applications and services,
integrate them into their environment, and track usage information and costs.
2.Modules in Murano
<------->Deployments
Session<------->Environment
<------->Applications<------->Packages<------->Packages Classification<------->Packages.zip
(1) Environment
At first, If we want to deploy an application, we need an environment as a container for application.
In fact, we can only deploy an environment, not an application.
We can find murano environments in this place: Horizon->Murano->Application Catalog->Environments
Input Environment Name to create an murano environments.

(2)Mirror Images
We need to mark images from glance, because it is necessary to choose image when deploying an environment.

(3)Packages Setup
we can setup packages into murano environment by local files, URL and repository like below.

(4)Packages Classification
Also we can classify package application as below by adding categories or deleting.

(5)Add application to environment
drag applications to environment and it is ready for deployment.

3. Murano Service Architecture

The snapshot is about the murano service file catalog.
(1) cmd provide the interface for external system. For example, Murano Rest API.
Murano Rest API is developed by Eventlet.wsgi, and also Webob library provide an encapsulation of Request and Response.
Murano engine provide rpc service for inner system.
cmd is the entry for Murano Service launch like other OpenStack project.
(2) api provide the Rest API route in the router.py.
It obviously provide the function like GET,PUT,POST and DELETE.
The interfaces implemented as follows and so on:
a. environment create, delete, rename, show single one or list.
b. sessions show, configure, delete and deploy.
c. package create, delete, import, download, show single one or list.
d. category create, delete, show single one or list.
(3) common provide base classes and services for Murano Service.
Also it include some helps, consts and exception defination.
(4) db provide database models and implementation of database operation.
For example, Add, Modify, Delete and Query.
Murano use Alembic library to migrate dabase upgrade or downgrade.
The Alembic script include database table alter or data change.
(5) dsl means Domain Specify Language.
This directory include these functions like that
Murano package resolver and Murano yaql resolver.
(6) engine is the core of Murano.
it makes a maintenance of Murano environment,
and makes an client manager with heat, keystone, mistral and so on.
(7) openstack will be removed in current master verison.
This directory is unused now.
(8) packages include the solutiuon of Murano PL package and HOT package.
This module is in charge of validate and analyze the Murano PL package and HOT package.
(9) tests include the unit test, funcitonal test.
It is almost Code Architecture Introducation about Murano.
Murano Service Architecture Introducation的更多相关文章
- 微服务(Micro Service Architecture)浅析
最近一段时间,微服务的概念很火,可能是跟Docker技术的快速发展和壮大有一定的关系,同时借助于Uber.Netflix.Groupon等公司的实践.宣传和推广,使得MSA渐渐地成为企业或者架构师讨论 ...
- SSRS2:Reporting Service 配置Service Account
1,Service Account SSRS以一个Service方式实现,有三部分组成:Web Service,Report Manager和一个后台的进程,这个Service运行的账号就是Servi ...
- Neutron LBaaS Service(1)—— Neutron LBaaS Service基本知识
在OpenStack Grizzly版本中,Quantum组件引入了一个新的网络服务:LoadBalancer(LBaaS),服务的架构遵从Service Insertion框架.LoadBalanc ...
- Murano Weekly Meeting 2015.10.20
Meeting time: 2015.October.20th 1:00~2:00 Chairperson: Serg Melikyan, PTL from Mirantis Meeting sum ...
- 5、IMS网元
1.会话管理和路由类(call session control function,呼叫会话控制功能) (1)代理呼叫会话控制功能P-CSCF 是IMS中与用户的第一个连接点,提供”代理(proxy)“ ...
- Atitit jsr规范化分类 attilax总结
Atitit jsr规范化分类 attilax总结 按照技术类别可以分成以下几类:1.Java EE (39 JSRs) --- J2EE平台规范 2.Java SE (42 JSRs) --- J2 ...
- Atitit jsr规范有多少个 407个。Jsr规范大全
Atitit jsr规范有多少个 407个.Jsr规范大全 1.1. JCP维护职能是发展和更新.1 1.2. Java技术规范.参考实现(RI).技术兼容包(TCK)1 1.3. JCP维护的规范 ...
- Adding Swagger to Web API project
Adding Swagger to Web API project. All source code for this series can be found here. When you creat ...
- 微软职位内部推荐-Sr SDE-MODC-Beijing
微软近期Open的职位: JOB TITLE: Senior Software Design EngineerDEPARTMENT: Microsoft Office Division ChinaIM ...
随机推荐
- IntelliJ IDEA打可运行jar包时的错误
1.[ERROR] 'build.resources.resource.directory' 解决:需要在pom.xml的project->build->resources节点下,加入以 ...
- [译]Javascript数列filter方法
本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...
- [译]Javascript中的switch语句
本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...
- [译]内联Javascript vs 外置Javascript
本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...
- [BZOJ4521][Cqoi2016]手机号码 (数位dp)
题目描述 人们选择手机号码时都希望号码好记.吉利.比如号码中含有几位相邻的相同数字.不含谐音不吉利的数字等.手机运营商在发行新号码时也会考虑这些因素,从号段中选取含有某些特征的号码单独出售.为了便于前 ...
- UVa 11292 勇者斗恶龙(The Dragon of Loowater)
首先先看一下这道题的英文原版... 好吧,没看懂... 大体意思就是: 有一条n个头的恶龙,现在有m个骑士可以雇佣去杀死他,一个能力值为x的勇士可以砍掉直径不超过x的头,而且需要支付x个金币.如何雇佣 ...
- Java基础笔记(十八)——多态
多态表示同一个操作作用在不同对象时,会有不同的结果. 多态可分为编译时多态和运行时多态. 编译时多态:方法重载,编译时就可以确定到底调用哪个方法,可以被看做一个类中的方法多态性. 运行时多态:只有在运 ...
- C语言中typedef的解释_2
typedef工具是一个高级数据特性.利用typedef可以为某一类型自定义一个新的名称.这样可以提高程序的可读性,可移植性,向用户表明特定用途. typedef没有创建任何新的类型,它只是为某个已存 ...
- 1040 有几个PAT (25 分
字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位(P),第 4 位(A),第 6 位(T):第二个 PAT 是第 3 位(P),第 4 位(A),第 6 位(T). 现 ...
- Spring Boot学习资料汇总
1. SpringFramework 重点学习 IOC容器,Web MVC framework,AOP 等 官网文档 http://docs.spring.io/spring/docs/cur ...