From 3a03effd9e4c1ee03dfcf24c066e6a657368aa22 Mon Sep 17 00:00:00 2001 From: Ekaterina Chernova Date: Tue, 2 Jun 2015 18:56:47 +0300 Subject: [PATCH] Add new content to Murano introduction article Change-Id: I84ec4a5483a6be8be959bab77488c0949fb5f1a0 --- doc/source/draft/index.rst | 1 - doc/source/draft/intro/architecture.png | Bin 0 -> 42722 bytes doc/source/draft/intro/architecture.rst | 17 ++++++++++++++++ doc/source/draft/intro/use_cases.rst | 25 ++++++++++++++++++++++++ doc/source/draft/intro/user_stories.rst | 8 -------- 5 files changed, 42 insertions(+), 9 deletions(-) create mode 100644 doc/source/draft/intro/architecture.png delete mode 100644 doc/source/draft/intro/user_stories.rst diff --git a/doc/source/draft/index.rst b/doc/source/draft/index.rst index 7db67c62..e90799c5 100644 --- a/doc/source/draft/index.rst +++ b/doc/source/draft/index.rst @@ -40,7 +40,6 @@ Introduction to Murano intro/target_users intro/architecture intro/use_cases - intro/user_stories Using Murano ~~~~~~~~~~~~ diff --git a/doc/source/draft/intro/architecture.png b/doc/source/draft/intro/architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..9b8b30dbe1b815cb8a5900d37c2985db472ffba7 GIT binary patch literal 42722 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

COlKko5hfaO$lt=-6CENb5 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 aS@^3Xyw*=3FOp7z_gq??C^~lT#(x0_O&dx8 literal 0 HcmV?d00001 diff --git a/doc/source/draft/intro/architecture.rst b/doc/source/draft/intro/architecture.rst index 226daab1..b0dd8518 100644 --- a/doc/source/draft/intro/architecture.rst +++ b/doc/source/draft/intro/architecture.rst @@ -3,3 +3,20 @@ ============ Architecture ============ + +Murano uses other OpenStack services in order to prevent reimplementing of +existing functionality. Murano interacts with these services using their REST +API (via their python clients). The most used external services are keystone +and heat. + +* Heat is used to orchestrate the infrastructural resources such as servers, +volumes, and networks. Murano dynamically creates the heat templates based on +the application definition. + +* All remote operations to the user’s servers are done via an AMQP queue to the +murano-agent. Examples of this are installing and configuring software on the +server. Note that this communication can easily be configured on a separate +instance of AMQP to ensure that the infrastructure and servers are isolated. + +.. image:: architecture.png + :width: 700 px diff --git a/doc/source/draft/intro/use_cases.rst b/doc/source/draft/intro/use_cases.rst index 06c91cfe..fc9ec28e 100644 --- a/doc/source/draft/intro/use_cases.rst +++ b/doc/source/draft/intro/use_cases.rst @@ -6,3 +6,28 @@ ========= Use cases ========= + +* *IT as a Service* + +An IT organization wants to control applications, available to cloud users. +Application management should be simple and not time-consuming. Users should be +able to easily find and create the desired applications. + +* *Self-service portal* + +You may want to create compound combinations of applications dynamically from +simple app blocks. And you can create an environment that satisfies your +requirements in a matter of minutes. Examples of such an environment may be +“Jenkins+Java+Tomcat” or “Jenkins+Gerrit+Java+JBoss”. So testing application in +different environment combinations becomes easier. + +* *Glue layer use case* + +Any external service or technology may be linked to the application in the +cloud. It can be done using the powerful Murano architecture. For example, +Murano supports Docker and OracleDB applications, and to enable this support +no single change was made to Murano itself. So, users can integrate with new +external services with a minimum cost. Currently, murano applications have been +integrated with the following technologies: Docker, Legacy apps VMs or bare +metal, apps outside of OpenStack, and the following ones are planned for the +future: cloudify and TOSCA, apache brooklin, APS. diff --git a/doc/source/draft/intro/user_stories.rst b/doc/source/draft/intro/user_stories.rst deleted file mode 100644 index 59f0d47b..00000000 --- a/doc/source/draft/intro/user_stories.rst +++ /dev/null @@ -1,8 +0,0 @@ -.. _user-stories: - -.. toctree:: - :maxdepth: 2 - -============ -User stories -============