首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
Mesos源码分析(2): Mesos Master的启动之一
】的更多相关文章
Mesos源码分析(5): Mesos Master的启动之四
5. Create an instance of allocator. 代码如下 Mesos源码中默认的Allocator,即HierarchicalDRFAllocator的位置在$MESOS_HOME/src/master/allocator/mesos/hierarchical.hpp,而DRF中对每个Framework排序的Sorter位于$MESOS_HOME/src/master/allocator/sorter/drf/sorter.cpp,可以查看其源码了解它的工作原…
Mesos源码分析(4) Mesos Master的启动之三
3. ModuleManager::load(flags.modules.get())如果有参数--modules或者--modules_dir=dirpath,则会将路径中的so文件load进来 代码中加载模块的代码如下 对应的命令行参数如下: 都可以写什么Module呢? 首先是Allocator 默认是内置的Hierarchical Dominant Resource Fairness allocator 要写一个自己的Allocator: 通过--mo…
Mesos源码分析(2): Mesos Master的启动之一
Mesos Master的启动参数如下: /usr/sbin/mesos-master --zk=zk://127.0.0.1:2181/mesos --port=5050 --log_dir=/var/log/mesos --hostname=192.168.56.101 --hostname_lookup=false --ip=192.168.56.101 --quorum=1 --registry=replicated_log --work_dir=/var/lib/mesos/maste…
Mesos源码分析(6): Mesos Master的初始化
Mesos Master的初始化在src/master/master.cpp中 在Mesos Master的log中,是能看到这一行的. 1.初始化role,并设置weight权重 2. 初始化Allocator 注意,Allocator的initialize函数中,传入的OfferCallback是Master::offer. 如果前面所述,没过allocation_interval,Allocator都会计算每个framework的offer,然后依次…
Mesos源码分析(3): Mesos Master的启动之二
2. process::firewall::install(move(rules));如果有参数--firewall_rules则会添加规则 对应的代码如下: // Initialize firewall rules. if (flags.firewall_rules.isSome()) { vector<Owned<FirewallRule>> rules; const Firewall firewall = flags.firewall_rules.get();…
Mesos源码分析(1): Mesos的启动过程总论
…
Mesos源码分析(9): Test Framework的启动
我们以Test Framework为例子解释Framework的启动方式. Test Framework的代码在src/examples/test_framework.cpp中的main函数 首先要指定executor的uri 配置ExecutorInfo 配置FrameworkInfo 创建TestScheduler和MesosSchedulerDriver 运行MesosSchedulerDriver MesosSchedulerDriver是写Framework的S…
Mesos源码分析
Mesos源码分析(1): Mesos的启动过程总论 Mesos源码分析(2): Mesos Master的启动之一 Mesos源码分析(3): Mesos Master的启动之二 Mesos源码分析(4) Mesos Master的启动之三 Mesos源码分析(5): Mesos Master的启动之四 Mesos源码分析(6): Mesos Master的初始化 Mesos源码分析(7): Mesos-Slave的启动 Mesos源码分析(8): Mesos-Slave的初始化 Mesos源…
Mesos源码分析(11): Mesos-Master接收到launchTasks消息
根据Mesos源码分析(6): Mesos Master的初始化中的代码分析,当Mesos-Master接收到launchTask消息的时候,会调用Master::launchTasks函数. void Master::launchTasks( const UPID& from, const FrameworkID& frameworkId, const vector<TaskInfo>& tasks, const Filters&a…
Mesos源码分析(10): MesosSchedulerDriver的启动及运行一个Task
MesosSchedulerDriver的代码在src/sched/sched.cpp里面实现. Driver->run()调用start() 首先检测Mesos-Master的leader 创建一个线程. SchedulerProcess的initialize()函数 里面主要注册消息处理函数. virtual void initialize() { install<Event>(&SchedulerProcess::rece…