activemq客户端源码_activemq 客户端

第三方分享代码
hacker 2年前 (2022-08-30) 电子书 25 1

点击上方 “公众号”可以订阅哦!

murano由来

OpenStack在H版本到K版本的摸索中,对整合容器的思路逐步清晰与成熟,温哥华OpenStack Summit上,Container/Docker成为一大关注焦点,随后发表的白皮书《Exploring Opportunities:Containers and OpenStack》阐明了OpenStack今后深度整合容器的方式与方向。基于这份白皮书,Liberty版本发布时,包含了许多容器相关的重要新特性:

● Magnum-提供容器环境的编排、部署与管理,即:COE(Container Orchestration Engines) as a service,目前支持Kubernetes、Mesos和Docker Swarm;

● Kuryr-集成libnetwork等原生的容器网络组件,打通容器网络与Neutron网络;

● Murano-提供应用目录服务,实现服务与应用程序的一键发布、快速部署和生命周期管理;

● Solum-简化云应用程序从研发到交付的生命周期管理,为云应用开发者提供持续集成的能力;

● Manila-文件共享服务,可以为容器应用的Replication和多读多写提供持久化存储方案。

murano简介

容器的出现解决了服务与应用的快速部署与弹性扩展的问题,使得这些年不温不火的PaaS平台重新得到了关注。如何将第三方开发者的服务与应用方便地发布出来是PaaS平台的一个重要功能点,即PaaS平台的应用目录(Application Catalog)服务。各主流的PaaS平台,比如OpenShift、CloudFundry、GAE都有相应的方案,但发布接口与应用打包方式并不统一。OpenStack的Murano致力于通过标准化以及一套新的编程语言(YAQL)来解决这一问题。

Murano是OpenStack的应用目录服务,在Murano的世界里,一切皆服务(Anything as a Service),不管是虚拟机镜像、容器镜像、服务应用模板,甚至是一个编排模板(HOT),都可以在Murano中发布。第三方开发者与管理员可以通过标准的接口、标准的应用打包规范、标准的应用发布流程,标准的生命周期管理流程,来实现服务与应用程序的一键发布、快速部署和管理,降低服务与应用程序对底层基础架构的依赖。简单说,Muarno主要提供应用目录的服务,就是用户可以把一些常用的应用发布出来供其他用户去使用。

在Liberty版本中,开发者的控制得到加强,支持应用版本升级。应用程序的使用者可以自由选择应用将要被部署的网络。另外,在基础设施控制方面,Murano能够使用Glance Artifact Repository作为它的存储后端,通过Glance Artifact API即可读取或存储服务镜像。

murano相关的几个项目:

展开全文

(1)murano是主要的存储库,包含 Murano API server, Murano engine and MuranoPL代码;

(2)murano-agent运行在vm上,并执行安装应用部署;

(3)murano-dashboard是murano的UI;

(4)python-muranoclient客户端。

Murano和Murano-dashboard安装

1

创建murano数据库,并设置数据库的用户名密码都为murano

mysql

CREATE DATABASE murano;

GRANT ALL PRIVILEGES ON murano.* TO 'murano'@'10.43.166.104' IDENTIFIED BY 'murano';

GRANT ALL PRIVILEGES ON murano.* TO 'murano'@'%' IDENTIFIED BY 'murano';

注:后面在murano.conf文件中填写murano的数据库连接时,如下

mysql+pymysql://murano:murano@10.43.166.104/murano

2

创建user和role

创建user和role时,对应的project可以通过openstack project list查看

openstack user create --password murano murano

openstack role add --project admin --user murano admin

3

取代码安装

git clone https://git.openstack.org/openstack/murano

cd murano

sudo pip install -e .

注:环境需要提前安装pip、tox等工具。

4

创建配置文件存放目录

mkdir -p /etc/murano

5

生成默认murano.conf文件(环境需安装tox和gcc等工具)

tox -egenconfig

生成的配置文件保存在源码的murano/etc/murano/murano.conf.sample

需要将配置文件复制到环境/etc/murano目录下

cp murano/etc/murano/murano.conf.sample /etc/murano/murano.conf

cp murano/etc/murano/api-paste.ini /etc/murano/api-paste.ini

cp murano/etc/murano/policy.json /etc/murano/policy.json

6

配置文件

修改/etc/murano/murano.conf配置文件,下面列出几项都是基本配置,

activemq客户端源码_activemq 客户端

比如%RABBITMQ_SERVER_IP%,需要替换为环境中的实际值

[DEFAULT]

activemq客户端源码_activemq 客户端

debug = true

verbose = true

rabbit_host = %RABBITMQ_SERVER_IP%

rabbit_userid = %RABBITMQ_USER%

rabbit_password = %RABBITMQ_PASSWORD%

rabbit_virtual_host = %RABBITMQ_SERVER_VIRTUAL_HOST%

...

[database]

connection = mysql+pymysql://murano:%MURANO_DB_PASSWORD%@127.0.0.1/murano

...

[keystone]

auth_url = 'http://%OPENSTACK_HOST_IP%:5000'

...

[keystone_authtoken]

auth_uri = 'http://%OPENSTACK_HOST_IP%:5000'

auth_host = '%OPENSTACK_HOST_IP%'

auth_port = 5000

auth_protocol = http

admin_tenant_name = %OPENSTACK_ADMIN_TENANT%

admin_user = %OPENSTACK_ADMIN_USER%

admin_password = %OPENSTACK_ADMIN_PASSWORD%

...

[murano]

url = http://%YOUR_HOST_IP%:8082

[rabbitmq]

host = %RABBITMQ_SERVER_IP%

login = %RABBITMQ_USER%

password = %RABBITMQ_PASSWORD%

virtual_host = %RABBITMQ_SERVER_VIRTUAL_HOST%

[networking]

default_dns = 8.8.8.8 # In case OpenStack neutron has no default

[oslo_messaging_notifications]

driver = messagingv2

直接打开/etc/murano/murano.conf找到对应字段修改属性就可。

7

安装muranoclient

git clone https://github.com/openstack/python-muranoclient

cd python-muranoclient

sudo pip install -e .

8

更新murano数据库

murano-db-manage upgrade

9

创建service和endpoint

openstack service create --name murano --deion

"Application Catalog for OpenStack" application-catalog

openstack endpoint create --publicurl http://10.43.166.104:8082

--adminurl http://10.43.166.104:8082

--internalurl http://10.43.166.104:8082

--region=RegionOne

application-catalog

注:ip修改为环境的hostip,murano使用8082端口。代码中url路由v1版本,所以endpoint中的url配置为http://10.43.166.104:8082,而不是http://10.43.166.104:8082/v1

10

创建服务后端

分别在新的shell窗口,启动murano-api和murano-engine服务

murano-api --config-file /etc/murano/murano.conf

murano-engine --config-file /etc/murano/murano.conf

11

确认安装是否正确

使用murano命令确认是否正常

[root@tfg104 python-muranoclient(keystone_admin)]# murano environment-list

+----+------+--------+---------+---------+

| ID | Name | Status | Created | Updated |

+----+------+--------+---------+---------+

+----+------+--------+---------+---------+

相关推荐

网友评论

  • (*)

最新评论

  • 访客 2022-08-30 22:09:02 回复

    环境的编排、部署与管理,即:COE(Container Orchestration Engines) as a service,目前支持Kubernetes、Me

    1