Lei Xu created MESOS-6738:
-----------------------------

             Summary: Mesos master help message gives unformatted documents.
                 Key: MESOS-6738
                 URL: https://issues.apache.org/jira/browse/MESOS-6738
             Project: Mesos
          Issue Type: Bug
          Components: cli
    Affects Versions: 1.1.0
         Environment: Mesos 1.1.0
Ubuntu 16.04
            Reporter: Lei Xu
            Priority: Minor


build mesos from the release tarball and running the following command:

{code}
mesos master --help
{code}

it gives unformatted docs, but the slave/agent's help message is OK.

{code}
Usage: mesos-master [options]

  --acls=VALUE                                                                  
 The value could be a JSON-formatted string of ACLs
                                                                                
 or a file path containing the JSON-formatted ACLs used
                                                                                
 for authorization. Path could be of the form `file:///path/to/file`
                                                                                
 or `/path/to/file`.
                                                                                
 
                                                                                
 Note that if the flag `--authorizers` is provided with a value
                                                                                
 different than `local`, the ACLs contents
                                                                                
 will be ignored.
                                                                                
 
                                                                                
 See the ACLs protobuf in acls.proto for the expected format.
                                                                                
 
                                                                                
 Example:
                                                                                
 {
                                                                                
   "register_frameworks": [
                                                                                
     {
                                                                                
       "principals": { "type": "ANY" },
                                                                                
       "roles": { "values": ["a"] }
                                                                                
     }
                                                                                
   ],
                                                                                
   "run_tasks": [
                                                                                
     {
                                                                                
       "principals": { "values": ["a", "b"] },
                                                                                
       "users": { "values": ["c"] }
                                                                                
     }
                                                                                
   ],
                                                                                
   "teardown_frameworks": [
                                                                                
     {
                                                                                
       "principals": { "values": ["a", "b"] },
                                                                                
       "framework_principals": { "values": ["c"] }
                                                                                
     }
                                                                                
   ],
                                                                                
   "set_quotas": [
                                                                                
     {
                                                                                
       "principals": { "values": ["a"] },
                                                                                
       "roles": { "values": ["a", "b"] }
                                                                                
     }
                                                                                
   ],
                                                                                
   "remove_quotas": [
                                                                                
     {
                                                                                
       "principals": { "values": ["a"] },
                                                                                
       "quota_principals": { "values": ["a"] }
                                                                                
     }
                                                                                
   ]
                                                                                
 }
  --advertise_ip=VALUE                                                          
 IP address advertised to reach this Mesos master.
                                                                                
 The master does not bind using this IP address.
                                                                                
 However, this IP address may be used to access this master.
  --advertise_port=VALUE                                                        
 Port advertised to reach Mesos master (along with
                                                                                
 `advertise_ip`). The master does not bind to this port.
                                                                                
 However, this port (along with `advertise_ip`) may be used to
                                                                                
 access this master.
  --agent_ping_timeout=VALUE, --slave_ping_timeout=VALUE                        
 The timeout within which each agent is expected to respond to a
                                                                                
 ping from the master. Agents that do not respond within
                                                                                
 max_agent_ping_timeouts ping retries will be asked to shutdown.
                                                                                
 NOTE: The total ping timeout (`agent_ping_timeout` multiplied by
                                                                                
 `max_agent_ping_timeouts`) should be greater than the ZooKeeper
                                                                                
 session timeout to prevent useless re-registration attempts.
                                                                                
 (default: 15secs)
  --agent_removal_rate_limit=VALUE, --slave_removal_rate_limit=VALUE            
 The maximum rate (e.g., `1/10mins`, `2/3hrs`, etc) at which agents
                                                                                
 will be removed from the master when they fail health checks.
                                                                                
 By default, agents will be removed as soon as they fail the health
                                                                                
 checks. The value is of the form `(Number of agents)/(Duration)`.
  --agent_reregister_timeout=VALUE, --slave_reregister_timeout=VALUE            
 The timeout within which all agents are expected to re-register
                                                                                
 when a new master is elected as the leader. Agents that do not
                                                                                
 re-register within the timeout will be removed from the registry
                                                                                
 and will be shutdown if they attempt to communicate with master.
                                                                                
 NOTE: This value has to be at least 10mins. (default: 10mins)
  --allocation_interval=VALUE                                                   
 Amount of time to wait between performing
                                                                                
  (batch) allocations (e.g., 500ms, 1sec, etc). (default: 1secs)
  --allocator=VALUE                                                             
 Allocator to use for resource allocation to frameworks.
                                                                                
 Use the default `HierarchicalDRF` allocator, or
                                                                                
 load an alternate allocator module using `--modules`. (default: 
HierarchicalDRF)
  --[no-]authenticate_agents, --[no-]authenticate_slaves                        
 If `true`, only authenticated agents are allowed to register.
                                                                                
 If `false`, unauthenticated agents are also allowed to register. (default: 
false)
  --[no-]authenticate_frameworks, --[no-]authenticate                           
 If `true`, only authenticated frameworks are allowed to register. If
                                                                                
 `false`, unauthenticated frameworks are also allowed to register. For
                                                                                
 HTTP based frameworks use the `--authenticate_http_frameworks` flag. (default: 
false)
  --[no-]authenticate_http_frameworks                                           
 If `true`, only authenticated HTTP frameworks are allowed to register.
                                                                                
 If `false`, HTTP frameworks are not authenticated. (default: false)
  --[no-]authenticate_http_readonly                                             
 If `true`, only authenticated requests for read-only HTTP endpoints
                                                                                
 supporting authentication are allowed. If `false`, unauthenticated
                                                                                
 requests to such HTTP endpoints are also allowed. (default: false)
  --[no-]authenticate_http_readwrite, --[no-]authenticate_http                  
 If `true`, only authenticated requests for read-write HTTP endpoints
                                                                                
 supporting authentication are allowed. If `false`, unauthenticated
                                                                                
 requests to such HTTP endpoints are also allowed. (default: false)
  --authenticators=VALUE                                                        
 Authenticator implementation to use when authenticating frameworks
                                                                                
 and/or agents. Use the default `crammd5`
                                                                                
 or load an alternate authenticator module using `--modules`. (default: crammd5)
  --authorizers=VALUE                                                           
 Authorizer implementation to use when authorizing actions that
                                                                                
 require it.
                                                                                
 Use the default `local`, or
                                                                                
 load an alternate authorizer module using `--modules`.
                                                                                
 
                                                                                
 Note that if the flag `--authorizers` is provided with a value
                                                                                
 different than the default `local`, the
                                                                                
 ACLs passed through the `--acls` flag will be ignored.
                                                                                
 
                                                                                
 Currently there's no support for multiple authorizers. (default: local)
  --cluster=VALUE                                                               
 Human readable name for the cluster, displayed in the webui.
  --credentials=VALUE                                                           
 Path to a JSON-formatted file containing credentials.
                                                                                
 Path could be of the form `file:///path/to/file` or `/path/to/file`.
                                                                                
 Example:
                                                                                
 {
                                                                                
   "credentials": [
                                                                                
     {
                                                                                
       "principal": "sherman",
                                                                                
       "secret": "kitesurf"
                                                                                
     }
                                                                                
   ]
                                                                                
 }
  --external_log_file=VALUE                                                     
 Location of the externally managed log file.  Mesos does not write to
                                                                                
 this file directly and merely exposes it in the WebUI and HTTP API.
                                                                                
 This is only useful when logging to stderr in combination with an
                                                                                
 external logging mechanism, like syslog or journald.
                                                                                
 
                                                                                
 This option is meaningless when specified along with `--quiet`.
                                                                                
 
                                                                                
 This option takes precedence over `--log_dir` in the WebUI.
                                                                                
 However, logs will still be written to the `--log_dir` if
                                                                                
 that option is specified.
  --fair_sharing_excluded_resource_names=VALUE                                  
 A comma-separated list of the resource names (e.g. 'gpus')
                                                                                
 that will be excluded from fair sharing constraints.
                                                                                
 This may be useful in cases where the fair sharing
                                                                                
 implementation currently has limitations. E.g. See the
                                                                                
 problem of "scarce" resources:
                                                                                
   http://www.mail-archive.com/dev@mesos.apache.org/msg35631.html
                                                                                
   https://issues.apache.org/jira/browse/MESOS-5377
  --firewall_rules=VALUE                                                        
 The value could be a JSON-formatted string of rules or a
                                                                                
 file path containing the JSON-formatted rules used in the endpoints
                                                                                
 firewall. Path must be of the form `file:///path/to/file`
                                                                                
 or `/path/to/file`.
                                                                                
 
                                                                                
 See the `Firewall` message in `flags.proto` for the expected format.
                                                                                
 
                                                                                
 Example:
                                                                                
 {
                                                                                
   "disabled_endpoints" : {
                                                                                
     "paths" : [
                                                                                
       "/files/browse",
                                                                                
       "/metrics/snapshot"
                                                                                
     ]
                                                                                
   }
                                                                                
 }
  --framework_sorter=VALUE                                                      
 Policy to use for allocating resources
                                                                                
 between a given user's frameworks. Options
                                                                                
 are the same as for user_allocator. (default: drf)
  --[no-]help                                                                   
 Prints this help message (default: false)
  --hooks=VALUE                                                                 
 A comma-separated list of hook modules to be
                                                                                
 installed inside master.
  --hostname=VALUE                                                              
 The hostname the master should advertise in ZooKeeper.
                                                                                
 If left unset, the hostname is resolved from the IP address
                                                                                
 that the agent binds to; unless the user explicitly prevents
                                                                                
 that, using `--no-hostname_lookup`, in which case the IP itself
                                                                                
 is used.
  --[no-]hostname_lookup                                                        
 Whether we should execute a lookup to find out the server's hostname,
                                                                                
 if not explicitly set (via, e.g., `--hostname`).
                                                                                
 True by default; if set to `false` it will cause Mesos
                                                                                
 to use the IP address, unless the hostname is explicitly set. (default: true)
  --http_authenticators=VALUE                                                   
 HTTP authenticator implementation to use when handling requests to
                                                                                
 authenticated endpoints. Use the default
                                                                                
 `basic`, or load an alternate
                                                                                
 HTTP authenticator module using `--modules`.
                                                                                
 
                                                                                
 Currently there is no support for multiple HTTP authenticators. (default: 
basic)
  --http_framework_authenticators=VALUE                                         
 HTTP authenticator implementation to use when authenticating HTTP
                                                                                
 frameworks. Use the 
                                                                                
 `basic` authenticator or load an
                                                                                
 alternate authenticator module using `--modules`.
                                                                                
 Must be used in conjunction with `--http_authenticate_frameworks`.
                                                                                
 
                                                                                
 Currently there is no support for multiple HTTP framework
                                                                                
 authenticators.
  --[no-]initialize_driver_logging                                              
 Whether the master/agent should initialize Google logging for the
                                                                                
 Mesos scheduler and executor drivers, in same way as described here.
                                                                                
 The scheduler/executor drivers have separate logs and do not get
                                                                                
 written to the master/agent logs.
                                                                                
 
                                                                                
 This option has no effect when using the HTTP scheduler/executor APIs.
                                                                                
 By default, this option is true. (default: true)
  --ip=VALUE                                                                    
 IP address to listen on. This cannot be used in conjunction
                                                                                
 with `--ip_discovery_command`.
  --ip_discovery_command=VALUE                                                  
 Optional IP discovery binary: if set, it is expected to emit
                                                                                
 the IP address which the master will try to bind to.
                                                                                
 Cannot be used in conjunction with `--ip`.
  --[no-]log_auto_initialize                                                    
 Whether to automatically initialize the replicated log used for the
                                                                                
 registry. If this is set to false, the log has to be manually
                                                                                
 initialized when used for the very first time. (default: true)
  --log_dir=VALUE                                                               
 Location to put log files.  By default, nothing is written to disk.
                                                                                
 Does not affect logging to stderr.
                                                                                
 If specified, the log file will appear in the Mesos WebUI.
                                                                                
 NOTE: 3rd party log messages (e.g. ZooKeeper) are
                                                                                
 only written to stderr!
  --logbufsecs=VALUE                                                            
 Maximum number of seconds that logs may be buffered for.
                                                                                
 By default, logs are flushed immediately. (default: 0)
  --logging_level=VALUE                                                         
 Log message at or above this level.
                                                                                
 Possible values: `INFO`, `WARNING`, `ERROR`.
                                                                                
 If `--quiet` is specified, this will only affect the logs
                                                                                
 written to `--log_dir`, if specified. (default: INFO)
  --master_contender=VALUE                                                      
 The symbol name of the master contender to use.
                                                                                
 This symbol should exist in a module specified through
                                                                                
 the --modules flag. Cannot be used in conjunction with --zk.
                                                                                
 Must be used in conjunction with --master_detector.
  --master_detector=VALUE                                                       
 The symbol name of the master detector to use. This symbol
                                                                                
 should exist in a module specified through the --modules flag.
                                                                                
 Cannot be used in conjunction with --zk.
                                                                                
 Must be used in conjunction with --master_contender.
  --max_agent_ping_timeouts=VALUE, --max_slave_ping_timeouts=VALUE              
 The number of times an agent can fail to respond to a
                                                                                
 ping from the master. Agents that do not respond within
                                                                                
 `max_agent_ping_timeouts` ping retries will be asked to shutdown.
                                                                                
 (default: 5)
  --max_completed_frameworks=VALUE                                              
 Maximum number of completed frameworks to store in memory. (default: 50)
  --max_completed_tasks_per_framework=VALUE                                     
 Maximum number of completed tasks per framework to store in memory. (default: 
1000)
  --modules=VALUE                                                               
 List of modules to be loaded and be available to the internal
                                                                                
 subsystems.
                                                                                
 
                                                                                
 Use `--modules=filepath` to specify the list of modules via a
                                                                                
 file containing a JSON-formatted string. `filepath` can be
                                                                                
 of the form `file:///path/to/file` or `/path/to/file`.
                                                                                
 
                                                                                
 Use `--modules="{...}"` to specify the list of modules inline.
                                                                                
 
                                                                                
 Example:
                                                                                
 {
                                                                                
   "libraries": [
                                                                                
     {
                                                                                
       "file": "/path/to/libfoo.so",
                                                                                
       "modules": [
                                                                                
         {
                                                                                
           "name": "org_apache_mesos_bar",
                                                                                
           "parameters": [
                                                                                
             {
                                                                                
               "key": "X",
                                                                                
               "value": "Y"
                                                                                
             }
                                                                                
           ]
                                                                                
         },
                                                                                
         {
                                                                                
           "name": "org_apache_mesos_baz"
                                                                                
         }
                                                                                
       ]
                                                                                
     },
                                                                                
     {
                                                                                
       "name": "qux",
                                                                                
       "modules": [
                                                                                
         {
                                                                                
           "name": "org_apache_mesos_norf"
                                                                                
         }
                                                                                
       ]
                                                                                
     }
                                                                                
   ]
                                                                                
 }
                                                                                
 
                                                                                
 Cannot be used in conjunction with --modules_dir.
                                                                                
 
  --modules_dir=VALUE                                                           
 Directory path of the module manifest files.
                                                                                
 The manifest files are processed in alphabetical order.
                                                                                
 (See --modules for more information on module manifest files)
                                                                                
 Cannot be used in conjunction with --modules.
                                                                                
 
  --offer_timeout=VALUE                                                         
 Duration of time before an offer is rescinded from a framework.
                                                                                
 This helps fairness when running frameworks that hold on to offers,
                                                                                
 or frameworks that accidentally drop offers.
                                                                                
 If not set, offers do not timeout.
  --port=VALUE                                                                  
 Port to listen on. (default: 5050)
  --[no-]quiet                                                                  
 Disable logging to stderr (default: false)
  --quorum=VALUE                                                                
 The size of the quorum of replicas when using `replicated_log` based
                                                                                
 registry. It is imperative to set this value to be a majority of
                                                                                
 masters i.e., `quorum > (number of masters)/2`.
                                                                                
 NOTE: Not required if master is run in standalone mode (non-HA).
  --rate_limits=VALUE                                                           
 The value could be a JSON-formatted string of rate limits
                                                                                
 or a file path containing the JSON-formatted rate limits used
                                                                                
 for framework rate limiting.
                                                                                
 Path could be of the form `file:///path/to/file`
                                                                                
 or `/path/to/file`.
                                                                                
 
                                                                                
 See the RateLimits protobuf in mesos.proto for the expected format.
                                                                                
 
                                                                                
 Example:
                                                                                
 {
                                                                                
   "limits": [
                                                                                
     {
                                                                                
       "principal": "foo",
                                                                                
       "qps": 55.5
                                                                                
     },
                                                                                
     {
                                                                                
       "principal": "bar"
                                                                                
     }
                                                                                
   ],
                                                                                
   "aggregate_default_qps": 33.3
                                                                                
 }
  --recovery_agent_removal_limit=VALUE, --recovery_slave_removal_limit=VALUE    
 For failovers, limit on the percentage of agents that can be removed
                                                                                
 from the registry *and* shutdown after the re-registration timeout
                                                                                
 elapses. If the limit is exceeded, the master will fail over rather
                                                                                
 than remove the agents.
                                                                                
 This can be used to provide safety guarantees for production
                                                                                
 environments. Production environments may expect that across master
                                                                                
 failovers, at most a certain percentage of agents will fail
                                                                                
 permanently (e.g. due to rack-level failures).
                                                                                
 Setting this limit would ensure that a human needs to get
                                                                                
 involved should an unexpected widespread failure of agents occur
                                                                                
 in the cluster.
                                                                                
 Values: [0%-100%] (default: 100%)
  --registry=VALUE                                                              
 Persistence strategy for the registry;
                                                                                
 available options are `replicated_log`, `in_memory` (for testing). (default: 
replicated_log)
  --registry_fetch_timeout=VALUE                                                
 Duration of time to wait in order to fetch data from the registry
                                                                                
 after which the operation is considered a failure. (default: 1mins)
  --registry_gc_interval=VALUE                                                  
 How often to garbage collect the registry. The current leading
                                                                                
 master will periodically discard information from the registry.
                                                                                
 How long registry state is retained is controlled by other
                                                                                
 parameters (e.g., registry_max_agent_age, registry_max_agent_count);
                                                                                
 this parameter controls how often the master will examine the
                                                                                
 registry to see if data should be discarded. (default: 15mins)
  --registry_max_agent_age=VALUE                                                
 Maximum length of time to store information in the registry about
                                                                                
 agents that are not currently connected to the cluster. This
                                                                                
 information allows frameworks to determine the status of unreachable
                                                                                
 and removed agents. Note that the registry always stores information
                                                                                
 on all connected agents. If there are more than
                                                                                
 `registry_max_agent_count` partitioned or removed agents, agent
                                                                                
 information may be discarded from the registry sooner than indicated
                                                                                
 by this parameter. (default: 2weeks)
  --registry_max_agent_count=VALUE                                              
 Maximum number of disconnected agents to store in the registry.
                                                                                
 This informtion allows frameworks to determine the status of
                                                                                
 disconnected agents. Note that the registry always stores
                                                                                
 information about all connected agents. See also the
                                                                                
 `registry_max_agent_age` flag. (default: 102400)
  --registry_store_timeout=VALUE                                                
 Duration of time to wait in order to store data in the registry
                                                                                
 after which the operation is considered a failure. (default: 20secs)
  --[no-]registry_strict                                                        
 Whether the master will take actions based on the persistent
                                                                                
 information stored in the Registry.
                                                                                
 NOTE: This flag is *disabled* and will be removed in a future
                                                                                
 version of Mesos. (default: false)
  --roles=VALUE                                                                 
 A comma-separated list of the allocation roles that frameworks
                                                                                
 in this cluster may belong to. This flag is deprecated;
                                                                                
 if it is not specified, any role name can be used.
  --[no-]root_submissions                                                       
 Can root submit frameworks? (default: true)
  --user_sorter=VALUE                                                           
 Policy to use for allocating resources
                                                                                
 between users. May be one of:
                                                                                
   dominant_resource_fairness (drf) (default: drf)
  --[no-]version                                                                
 Show version and exit. (default: false)
  --webui_dir=VALUE                                                             
 Directory path of the webui files/assets (default: /usr/share/mesos/webui)
  --weights=VALUE                                                               
 A comma-separated list of role/weight pairs of the form
                                                                                
 `role=weight,role=weight`. Weights can be used to control the
                                                                                
 relative share of cluster resources that is offered to different
                                                                                
 roles. This flag is deprecated. Instead, operators should configure
                                                                                
 weights dynamically using the `/weights` HTTP endpoint.
  --whitelist=VALUE                                                             
 Path to a file which contains a list of agents (one per line) to
                                                                                
 advertise offers for. The file is watched, and periodically re-read to
                                                                                
 refresh the agent whitelist. By default there is no whitelist / all
                                                                                
 machines are accepted. Path could be of the form
                                                                                
 `file:///path/to/file` or `/path/to/file`.
                                                                                
 
  --work_dir=VALUE                                                              
 Path of the master work directory. This is where the persistent
                                                                                
 information of the cluster will be stored. Note that locations like
                                                                                
 `/tmp` which are cleaned automatically are not suitable for the work
                                                                                
 directory when running in production, since long-running masters could
                                                                                
 lose data when cleanup occurs. (Example: `/var/lib/mesos/master`)
  --zk=VALUE                                                                    
 ZooKeeper URL (used for leader election amongst masters)
                                                                                
 May be one of:
                                                                                
   `zk://host1:port1,host2:port2,.../path`
                                                                                
   `zk://username:password@host1:port1,host2:port2,.../path`
                                                                                
   `file:///path/to/file` (where file contains one of the above)
                                                                                
 NOTE: Not required if master is run in standalone mode (non-HA).
  --zk_session_timeout=VALUE                                                    
 ZooKeeper session timeout. (default: 10secs)
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to