Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Make sure consistent semantics between the term application (user space) and topology (physical space only)
  2. Topology should read configuration from TopologyDescService#config instead of configuration fileconfiguration can be edited on UI
  3. Use REST Service as only entry to manage application (START/STOP/HEALTH CHECKING) and ApplicationManager to schedule the task execution and update the execution information 
  4. Eagle UI should support to manage/monitor the application on site/application page
  5. Single site/application may have more than one topologies (for example hdfsAuditLogMonitoring and userProfileMonitoring should have topologies running separately)

...

Topology Description Service

  • Service name: TopologyDescriptionService
  • Entity: TopologyDescService TopologyDescriptionEntity
  • Table name: eagle_metadata
  • Prefix: topology_definitiontopologyDescription
topology config
 AttributeTypeDescription
tagetopologyStringtopology desc name
fieldsexeClassStringtopology entry class
 typeStringtopology type: build-in topology or main-class topology configStringDSL or CLASS
 descriptionStringdescription on this topology
 versionStringtopology version

...

  • Service name: TopologyExecutionService
  • Entity: TopologyExecutionEntity
  • Table name: eagle_metadata
  • Prefix: topology_executiontopologyExecution
  • Description: define the relation between an application and an topology, and maintain the execution status as well
namefields
 AttributeTypeDescription
tagssiteStringtopology site
 applicationStringtopology application 
 topologyStringtopology desc name  
fieldsfullNameStringtopology execution name: eagle_${site}_${application}_${topology}
 urlStringtopology tracking url
 deploydescriptionStringdeploy environment topology running status description
 statusStringapplication running status {NEW, STARTING, STOPPING, STARTED, STOPPING, STOPPED}
 modeStringtopology running mode: cluster or local
 environmentStringtopology execution environment, e.g., storm
 lastUpdateTimelastModifiedDatelonglast status update time

Topology Operation Service

  • Service name: TopologyOperationService
  • Entity: TopologyOperationEntity
  • Table name: eagle_metadata
  • Prefix: topologyOperation
DONE}
 AttributeTypeDescription
tagscommandoperationString{START, STOP, STATUS}
 siteString 
 applicationString 
 operationIDString 
 topologyStringapplication topology name: eagle_${site}_${application}_${topology}
fieldsstatusString{INITIALIZED, PENDING, FAILED,

Use Cases in BPMN diagram

1. user define a topology entity 

...

SUCCESS}
 messageStringexception message
 lastModifiedDatelonglast status update time

Customized Restful Apis

HTTP MethodURLPayloadDescription
POST/app/operationTopologyOperationEntitycreate an topology operation
DELETE/app/topology/{topology} delete a topology description

2. user add multiply topologies to an application

...

3. user start/stop a topology (both push and pull mode provided)

...

4. Edit topology configuration

5. Periodically check/update topology healthy status 

6. Edit deployment cluster?

...