Apache Mesos
flags.hpp
Go to the documentation of this file.
1 // Licensed to the Apache Software Foundation (ASF) under one
2 // or more contributor license agreements. See the NOTICE file
3 // distributed with this work for additional information
4 // regarding copyright ownership. The ASF licenses this file
5 // to you under the Apache License, Version 2.0 (the
6 // "License"); you may not use this file except in compliance
7 // with the License. You may obtain a copy of the License at
8 //
9 // http://www.apache.org/licenses/LICENSE-2.0
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 
17 #ifndef __MASTER_FLAGS_HPP__
18 #define __MASTER_FLAGS_HPP__
19 
20 #include <cstdint>
21 
22 #include <string>
23 
24 #include <stout/duration.hpp>
25 #include <stout/option.hpp>
26 #include <stout/path.hpp>
27 
28 #include <mesos/mesos.hpp>
29 
31 
32 #include <mesos/module/module.hpp>
33 
34 #include "logging/flags.hpp"
35 
36 #include "messages/flags.hpp"
37 
38 namespace mesos {
39 namespace internal {
40 namespace master {
41 
42 class Flags : public virtual logging::Flags
43 {
44 public:
45  Flags();
46  bool version;
51  std::string registry;
61  std::string webui_dir;
63  std::string role_sorter;
64  std::string framework_sorter;
82  std::string authenticators;
83  std::string allocator;
90  std::string authorizers;
91  std::string http_authenticators;
105 
106  // The following flags are executable specific (e.g., since we only
107  // have one instance of libprocess per execution, we only want to
108  // advertise the IP and port option once, here).
109 
111  uint16_t port;
116 
117  // Optional IP discover script that will set the Master IP.
118  // If set, its output is expected to be a valid parseable IP string.
120 
121 #ifdef ENABLE_PORT_MAPPING_ISOLATOR
122  Option<size_t> max_executors_per_agent;
123 #endif // ENABLE_PORT_MAPPING_ISOLATOR
124 };
125 
126 } // namespace master {
127 } // namespace internal {
128 } // namespace mesos {
129 
130 #endif // __MASTER_FLAGS_HPP__
Option< std::string > weights
Definition: flags.hpp:68
bool root_submissions
Definition: flags.hpp:49
size_t max_operator_event_stream_subscribers
Definition: flags.hpp:93
std::string allocator
Definition: flags.hpp:83
bool authenticate_http_readonly
Definition: flags.hpp:72
Option< std::string > modulesDir
Definition: flags.hpp:81
Option< Duration > offer_timeout
Definition: flags.hpp:79
Definition: master.hpp:27
Definition: flags.hpp:29
std::string webui_dir
Definition: flags.hpp:61
bool memory_profiling
Definition: flags.hpp:115
std::string framework_sorter
Definition: flags.hpp:64
bool filter_gpu_resources
Definition: flags.hpp:85
Option< std::string > hooks
Definition: flags.hpp:87
Option< DomainInfo > domain
Definition: flags.hpp:104
bool publish_per_framework_metrics
Definition: flags.hpp:103
Option< std::string > hostname
Definition: flags.hpp:47
uint16_t port
Definition: flags.hpp:111
size_t registry_max_agent_count
Definition: flags.hpp:101
Duration agent_ping_timeout
Definition: flags.hpp:88
Option< std::string > cluster
Definition: flags.hpp:66
size_t max_completed_tasks_per_framework
Definition: flags.hpp:95
Definition: flags.hpp:42
Option< Firewall > firewall_rules
Definition: flags.hpp:77
std::string recovery_agent_removal_limit
Definition: flags.hpp:59
Option< std::string > ip_discovery_command
Definition: flags.hpp:119
Option< std::string > roles
Definition: flags.hpp:67
Duration registry_fetch_timeout
Definition: flags.hpp:55
Option< std::string > advertise_ip
Definition: flags.hpp:112
Definition: duration.hpp:32
bool hostname_lookup
Definition: flags.hpp:48
Duration zk_session_timeout
Definition: flags.hpp:53
std::string authorizers
Definition: flags.hpp:90
Option< std::string > master_contender
Definition: flags.hpp:97
bool registry_strict
Definition: flags.hpp:54
Option< std::string > ip
Definition: flags.hpp:110
Option< std::string > agent_removal_rate_limit
Definition: flags.hpp:60
size_t max_agent_ping_timeouts
Definition: flags.hpp:89
Duration allocation_interval
Definition: flags.hpp:65
bool authenticate_agents
Definition: flags.hpp:70
std::string min_allocatable_resources
Definition: flags.hpp:86
size_t max_unreachable_tasks_per_framework
Definition: flags.hpp:96
Duration authentication_v0_timeout
Definition: flags.hpp:71
Duration agent_reregister_timeout
Definition: flags.hpp:58
Duration registry_store_timeout
Definition: flags.hpp:56
Duration registry_max_agent_age
Definition: flags.hpp:100
Option< flags::SecurePathOrValue > zk
Definition: flags.hpp:114
Option< std::string > master_detector
Definition: flags.hpp:98
Option< RateLimits > rate_limits
Definition: flags.hpp:78
Definition: spec.hpp:26
Option< int > quorum
Definition: flags.hpp:52
std::string registry
Definition: flags.hpp:51
bool version
Definition: flags.hpp:46
Option< std::string > advertise_port
Definition: flags.hpp:113
Option< Path > whitelist
Definition: flags.hpp:62
Definition: attributes.hpp:24
Duration registry_gc_interval
Definition: flags.hpp:99
bool authenticate_http_frameworks
Definition: flags.hpp:74
Option< std::string > http_framework_authenticators
Definition: flags.hpp:92
Option< std::string > work_dir
Definition: flags.hpp:50
std::string http_authenticators
Definition: flags.hpp:91
Option< std::set< std::string > > fair_sharing_excluded_resource_names
Definition: flags.hpp:84
bool authenticate_http_readwrite
Definition: flags.hpp:73
std::string role_sorter
Definition: flags.hpp:63
Option< Modules > modules
Definition: flags.hpp:80
bool log_auto_initialize
Definition: flags.hpp:57
bool require_agent_domain
Definition: flags.hpp:102
size_t max_completed_frameworks
Definition: flags.hpp:94
Option< Path > credentials
Definition: flags.hpp:75
Option< ACLs > acls
Definition: flags.hpp:76
std::string authenticators
Definition: flags.hpp:82
bool authenticate_frameworks
Definition: flags.hpp:69