You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by GitBox <gi...@apache.org> on 2019/09/04 09:03:14 UTC

[GitHub] [flink] TisonKun opened a new pull request #9609: [FLINK-13750][client][coordination] Separate HA services between client-side and server-side

TisonKun opened a new pull request #9609: [FLINK-13750][client][coordination] Separate HA services between client-side and server-side
URL: https://github.com/apache/flink/pull/9609
 
 
   ## What is the purpose of the change
   
   As discussed in [FLINK-13750](https://issues.apache.org/jira/browse/FLINK-13750) we decide to separate client-side/cluster-side high-availability services, in order to avoid issues like FLINK-13500 which initialized blob store service without auth.
   
   cc @tillrohrmann @zentol 
   
   ## Brief change log
   
   + Introduce a new interface `ClientHighAvailabilityServices ` and implementations `StandaloneClientHAServices` and `ZKClientHAServices`. This interface include only one method, `getWebMonitorLeaderRetriever`, since client is only supposed to communicate with WebMonitor.
   + Add a method `createClientHAServices` in `HighAvailabilityServicesFactory` for customized. By default it reuses `createHAServices` and `getWebMonitorLeaderRetriever`. The default behavior is for backward compatibility.
   + Add `createClientHAServices` util in `HighAvailabilityServicesUtils`, also `getWebMonitorAddress` util in `WebMonitorUtils`.
   + Remove unused constructor in `RestClusterClient` and `ClusterClient`.
   + Adjust existing code.
   
   ## Verifying this change
   
   This change added tests and can be verified as follows:
   
   + Functions should be covered by existing tests since we just separated components but no new features.
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): (no)
     - The public API, i.e., is any changed class annotated with `@Public(Evolving)`: (no)
     - The serializers: (no)
     - The runtime per-record code paths (performance sensitive): (no)
     - Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (don't know, we introduce client ha service but actually it has nothing to do with recovery)
     - The S3 file system connector: (no)
   
   ## Documentation
   
     - Does this pull request introduce a new feature? (no)
     - If yes, how is the feature documented? (not applicable)
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services