You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 28 Next »

Principle

  • Minimize user operations for managing and monitoring topologies
  • REST Service centralized metadata management
  • Consistent UI experience

Objective

  1. Make sure consistent semantics between the term application (user space) and topology (physical space only)
  2. Topology should read configuration from SiteApplicationEntity#config instead of configuration file
  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)

Architecture

To have a better user experience with EAGLE ui, we could provide an interface to manage a certain topology via the ui page, such as submit a topology

 

topologyManage

Schema

Application Definition Service

  • Service name: TopologyDescService
  • Table name: eagle_metadata
  • Prefix: topology_definition
 AttributeTypeDescription
tagssiteStringsite name
 applicationStringapplication name = ${site}_${application}
 topologyStringtopology name
fieldsmainClassStringapplication main class
 typeStringtopology type: build-in topology or main-class topology
 configStringtopology config
 descriptionStringdescription on this topology

Application Execution Service 

  • Service name: ApplicationExecutionService
  • Table name: eagle_metadata
  • Prefix: application_execution
 AttributeTypeDescription
tagsapplicationStringapplication name = ${site}_${application}
fieldsstatusUrlStringapplication tracking url
 deployClusterStringcluster name
 localStatusStringapplication running status {INITIALIZED, STARTING, STARTED, STOPPING, STOPPED}

Use cases

  1. NEW
    1. create a topology definition entity
  2. START
    1. click START button
    2. check the topology's current status on the nimbus host
    3. a new thread is created to execute the submitting topology task
    4. update status
  3. STOP
    1. click STOP button
    2. check the topology's current status on nimbus host
    3. a new thread is created to stop the topology
    4. update status
  • No labels