efd538833f
Change-Id: I8b300732dccf8a72001b7852a32fcf2d7e209ab1
39 lines
1.3 KiB
ReStructuredText
39 lines
1.3 KiB
ReStructuredText
Architecture
|
|
============
|
|
|
|
.. image:: images/sahara-architecture.svg
|
|
:width: 800 px
|
|
:scale: 100 %
|
|
:align: left
|
|
|
|
|
|
The Sahara architecture consists of several components:
|
|
|
|
* Auth component - responsible for client authentication & authorization,
|
|
communicates with the OpenStack Identity service (keystone).
|
|
|
|
* DAL - Data Access Layer, persists internal models in DB.
|
|
|
|
* Secure Storage Access Layer - persists the authentication data like passwords
|
|
and private keys in a secure storage.
|
|
|
|
* Provisioning Engine - component responsible for communication with
|
|
the OpenStack Compute (nova), Orchestration (heat), Block Storage (cinder),
|
|
Image (glance), and DNS (designate) services.
|
|
|
|
* Vendor Plugins - pluggable mechanism responsible for configuring and
|
|
launching data processing frameworks on provisioned VMs. Existing
|
|
management solutions like Apache Ambari and Cloudera Management Console
|
|
could be utilized for that purpose as well.
|
|
|
|
* EDP - :doc:`../userdoc/edp` responsible for scheduling and managing
|
|
data processing jobs on clusters provisioned by sahara.
|
|
|
|
* REST API - exposes sahara functionality via REST HTTP interface.
|
|
|
|
* Python Sahara Client - like other OpenStack components, sahara has
|
|
its own python client.
|
|
|
|
* Sahara pages - a GUI for the sahara is located in the OpenStack Dashboard
|
|
(horizon).
|