? ? ?
--whitelist=VALUE 文件路径,包括发送 offer 的 slave 名单,默认为 None --zk_session_timeout=VALUE session 超时,默认为 10secs
--max_executors_per_slave=VALUE 配置了 --with-network-isolator 时可用,限
制每个 slave 同时执行任务个数
slave 专属配置项
?
--master=VALUE 必备项,master 所在地址,或 zookeeper 地址,或文件路径,可以
是列表
? ? ?
--attributes=VALUE 机器属性
--authenticatee=VALUE 跟 master 进行认证时候的认证机制
--[no-]cgroups_enable_cfs 采用 CFS 进行带宽限制时候对 CPU 资源进行限制,
默认为 false
? ? ? ? ?
--cgroups_hierarchy=VALUE cgroups的目录根位置,默认为 /sys/fs/cgroup --[no-]cgroups_limit_swap 限制内存和 swap,默认为 false,只限制内存 --cgroups_root=VALUE 根cgroups的名称,默认为mesos
--container_disk_watch_interval=VALUE 为容器进行硬盘配额查询的时间间隔 --containerizer_path=VALUE 采用外部隔离机制(--isolation=external)时候,
外部容器机制执行文件路径
? ? ? ? ? ? ? ? ? ? ?
--containerizers=VALUE 可用的容器实现机制,包括mesos、external、docker --credential=VALUE 加密后凭证,或者所在文件路径
--default_container_image=VALUE 采用外部容器机制时,任务缺省使用的镜像 --default_container_info=VALUE 容器信息的缺省值 --default_role=VALUE 资源缺省分配的角色
--disk_watch_interval=VALUE 硬盘使用情况的周期性检查间隔,默认为 1mins --docker=VALUE docker执行文件的路径
--docker_remove_delay=VALUE 删除容器之前的等待时间,默认为 6hrs --[no-]docker_kill_orphans 清除孤儿容器,默认为 true
--docker_sock=VALUE docker sock 地址,默认为 /var/run/docker.sock
--docker_mesos_image=VALUE 运行 slave 的docker镜像,如果被配置,docker会假
定 slave 运行在一个docker容器里
? ? ? ?
--docker_sandbox_directory=VALUE sandbox 映射到容器里的哪个路径
--docker_stop_timeout=VALUE 停止实例后等待多久执行 kill 操作,默认为 0secs --[no-]enforce_container_disk_quota 是否启用容器配额限制,默认为 false --executor_registration_timeout=VALUE 执行应用最多可以等多久再注册到 slave,
否则停止它,默认为 1mins
?
--executor_shutdown_grace_period=VALUE 执行应用停止后,等待多久,默认为
5secs
?
--external_log_file=VALUE 外部日志文件
? ? ?
--frameworks_home=VALUE 执行应用前添加的相对路径,默认为空 --gc_delay=VALUE 多久清理一次执行应用目录,默认为 1weeks
--gc_disk_headroom=VALUE 调整计算最大执行应用目录年龄的硬盘留空量,默认为
0.1
?
--hadoop_home=VALUE hadoop安装目录,默认为空,会自动查找 HADOOP_HOME 或
者从系统路径中查找
? ? ?
--hooks=VALUE 安装在 master 中的 hook 模块列表 --hostname=VALUE slave 节点使用的主机名
--isolation=VALUE 隔离机制,例如 posix/cpu,posix/mem(默认)或
者 cgroups/cpu,cgroups/mem
? ? ? ? ? ? ?
--launcher_dir=VALUE mesos可执行文件的路径,默认为 /usr/local/lib/mesos --modules=VALUE 要加载的模块,支持文件路径或者 JSON
--perf_duration=VALUE perf采样时长,必须小于perf_interval,默认为 10secs --perf_events=VALUE perf采样的事件 --perf_interval=VALUE perf采样的时间间隔 --recover=VALUE 回复后是否重连上旧的执行应用
--recovery_timeout=VALUE slave 恢复时的超时,太久则所有相关的执行应用将自行
退出,默认为 15mins
?
--registration_backoff_factor=VALUE 跟 master 进行注册时候的重试时间间隔
算法的因子,默认为 1secs,采用随机指数算法,最长 1mins
?
--resource_monitoring_interval=VALUE 周期性监测执行应用资源使用情况的间隔,
默认为 1secs
? ?
--resources=VALUE 每个 slave 可用的资源
--slave_subsystems=VALUE slave 运行在哪些cgroup子系统中,包括 memory,
cpuacct等,缺省为空
? ? ? ? ?
--[no-]strict 是否认为所有错误都不可忽略,默认为 true --[no-]switch_user 用提交任务的用户身份来运行,默认为 true --fetcher_cache_size=VALUE fetcher 的 cache 大小,默认为 2 GB
--fetcher_cache_dir=VALUE fetcher cache 文件存放目录,默认为 /tmp/mesos/fetch --work_dir=VALUE framework 的工作目录,默认为 /tmp/mesos
下面的选项需要配置 --with-network-isolator 一起使用
?
--ephemeral_ports_per_container=VALUE 分配给一个容器的临时端口,默认为
1024
? ? ?
--eth0_name=VALUE public 网络的接口名称,如果不指定,根据主机路由进行猜测 --lo_name=VALUE loopback 网卡名称
--egress_rate_limit_per_container=VALUE 每个容器的 egress 流量限制速率
? --[no-]network_enable_socket_statistics 是否采集每个容器的 socket 统计信
息,默认为 false
Mesos常见框架
framework 是实际干活的,可以理解为mesos上跑的 应用,需要注册到 master 上。
长期运行的服务
Aurora
利用mesos调度安排的任务,保证任务一直在运行。 提供 REST 接口,客户端和webUI(8081 端口)
Marathon
一个PaaS平台。
保证任务一直在运行。如果停止了,会自动重启一个新的任务。 支持任务为任意 bash 命令,以及容器。
提供 REST 接口,客户端和webUI(8080 端口)
Singularity
一个PaaS平台。
调度器,运行长期的任务和一次性任务。
提供 REST 接口,客户端和webUI(7099、8080 端口),支持容器。
大数据处理
Cray Chapel
支持 Chapel 并行编程语言的运行框架。
Dpark
Spark 的 Python 实现。
Hadoop
经典的 map-reduce 模型的实现。
Spark
跟 Hadoop 类似,但处理迭代类型任务会更好的使用内存做中间状态缓存,速度要快一些。
Storm
分布式流计算,可以实时处理数据流。
批量调度
Chronos
Cron的分布式实现,负责任务调度。
Jenkins
大名鼎鼎的 CI 引擎。使用mesos-jenkins插件,可以将jenkins的任务被mesos来动态调度执行。
ElasticSearch
功能十分强大的分布式数据搜索引擎。
数据存储
Cassandra
高性能分布式数据库。