You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by "Yan Xu (JIRA)" <ji...@apache.org> on 2014/01/14 21:15:25 UTC
[jira] [Created] (MESOS-903) Store MasterInfo in ZK to enable
master web UI redirection etc.
Yan Xu created MESOS-903:
----------------------------
Summary: Store MasterInfo in ZK to enable master web UI redirection etc.
Key: MESOS-903
URL: https://issues.apache.org/jira/browse/MESOS-903
Project: Mesos
Issue Type: Improvement
Reporter: Yan Xu
Assignee: Yan Xu
Fix For: 0.17.0
Storing a ProtoBuf MasterInfo in ZK allows us to add more fields other than the PID to associate with the (leading) master so that other entities (e.g. the follower masters) get more information such as the public hostname.
The current solution that BenH and I have worked out:
## Introduce Group::Membership::label for backwards compatibility.
- Group: use the sequence number for membership `id` and `label_` for storing additional data. This way a ProtoBuf blob is never stored at the same path as a regular PID so that the backwards compatibility issue (parsing a PID string as ProtoBuf blob or vise versa) can be avoided.
- Group::Membership will include a label field. Group::join() writes `label_sequence` as ZNode name: `info_sequence` stores MasterInfo and plain `sequence` stores PID.
## Current version (v0: 0.16)
- Group operation ignores ZNodes whose names can't be parse into `int32`. So that when a slave is rolled back and reads from ZK which has v1 data, it ignores all the masters and stays idle.
## New version (v1: >= 0.17)
- Roll slaves first. New slaves can work with old ZK data.
- Master can be rolled back after slave roll.
See more: https://gist.github.com/xujyan/796d2e10b8fbddaf7979
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)