linux cpu占用率如何看
262
2022-11-12
配置多mesos-master环境实战
Apache Mesos概述
Apache Mesos是一款基于多资源调度的开源集群管理套件,使容错和分布式系统更加容易使用实现,采用Master/Slave结构简化设计,将Master尽可能轻量级,进保存了Mesos Slave的状态信息
常见集群管理工具
工具 | 特点 | 优势 |
---|---|---|
Apache Mesos | 需要独立部署mesos-slave进程;依赖framework的功能;可管理docker容器;成本较高 | 应为经过许多互联网公司的大规模实践,稳定性具有保障 |
Docker Swarm | Docker 官方群集工具,需要Docker deamon 启用tcp端口学习;Swarm的命令兼容Docker;学习成本非常低 | 公有云环境Machine 和 Swarm 搭配使用效率更高 |
Google Kubernetes | 完全DOcker化的管理工具,功能迭代非常快;群集管理能力比mesos稍差 | 功能模块集成度高 |
Apache Mesos工作原理
Apache Mesos配置实战
实验环境:
实验环境 | IP地址 | 内核版本3.10以上 |
---|---|---|
master | 192.168.10.157 | 3.10.0-693.el7.x86_64 |
master1 | 192.168.10.132 | 3.10.0-693.el7.x86_64 |
master2 | 192.168.10.133 | 3.10.0-693.el7.x86_64 |
slave1 | 192.168.10.135 | 3.10.0-693.el7.x86_64 |
slave2 | 192.168.10.134 | 3.10.0-693.el7.x86_64 |
安装Apache Mesos
1:配置Java环境
tar zxvf jdk-8u91-linux-x64.tar.gz -C /usr/local/ cd /usr/local mv jdk1.8.0_91/ java #在/etc/profile配置环境变量 vim /etc/profile export JAVA_HOME=/usr/local/java export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar //末行添加 source /etc/profile //加载立即生效
2:安装相关环境
(1)安装开发工具
yum groupinstall -y "Development Tools" //安装开发工具的时候可能会出现没有相关的软件包这时候要根据报错提示先安装相关依赖包
(2)添加Apache-maven源
wget -O /etc/yum.repos.d/epel-apache-maven.repo
(3)安装相关依赖包
yum install -y apache-maven python-devel zlib-devel libcurl-devel openssl-devel cyrus-sasl-devel cyrus-sasl-md5 apr-devel apr-util-devel subversion-devel
(4)配置WANdiscoSVN网络源
vim /etc/yum.repos.d/wandisco-svn.repo [WANdiscoSVN] name=WANdisco SVN Repo 1.9 enabled=1 baseurl=http://opensource.wandisco.com/centos/7/svn-1.9/RPMS/$basearch/ gpgcheck=1 gpgkey=/etc/profile export MESOS_NATIVE_JAVA_LIBRARY=/usr/local/lib/libmesos.so export MESOS_NATIVE_LIBRARY=/usr/local/lib/libmesos.so source /etc/profile
4:构建Mesos
编译安装Mesos
wget //下载软件包 tar zxvf mesos-0.25.0.tar.gz -C /opt/ mv mesos-0.25.0/ /root/ cd /root/mesos-0.25.0 mkdir build cd build ../configure make //等待时间长(在线状态) make check make install 由于安装mesos用时较长,而实验每台主机都需安装mesos,所以建议克隆虚拟机
配置多台mesos-master
hostnamectl set-hostname master //修改主机名 #在hosts文件里面写入三台master 两台slave的主机IP地址 vim /etc/hosts 192.168.10.157 master 192.168.10.132 master1 192.168.10.133 master2 192.168.10.135 slave1 192.168.10.134 slave2 #可以直接用scp发送至另外四台服务器 scp /etc/profile 192.168.10.132:/etc/profile //其他主机类似 #建立软连接 ln -sf /root/mesos-0.25.0/build/bin/mesos-slave.sh /usr/sbin/mesos-slave
mesos-slave配置
此前应已经安装完mesos,并修改了主机名和/etc/hosts文件 ln -sf /root/mesos-0.25.0/build/bin/mesos-slave.sh /usr/sbin/mesos-slave //建立软链接 //安装docker并开启 yum install docker -y systemctl start docker.servicev #运行 systemctl enable docker.service #开机自启动
配置多mesos-master环境
在三个Mesos-master节点上安装Zookeeper
tar zxvf zookeeper-3.4.6.tar.gz -C /home/q/ cd /home/q/zookeeper-3.4.6/conf/ mv zoo_sample.cfg zoo.cfg vim zoo.cfg dataDir=/home/q/zookeeper-3.4.6/data //重新定义数据存放位置 dataLogDir=/home/q/zookeeper-3.4.6/datalog server.1=192.168.10.157:2888:3888 server.2=192.168.10.132:2888:3888 server.3=192.168.10.133:2888:3888
#按照zoo.cfg配置文件的swerver1、2、3修改每台master的myid //在master主机上操作(/opt/home/zookeeper-3.4.6/中) mkdir data datalog echo 1 > data/myid cat data/myid
//在master1主机上操作(/opt/home/zookeeper-3.4.6/中) mkdir data datalog echo 2 > data/myid cat data/myid
//在master2主机上操作(/opt/home/zookeeper-3.4.6/中) mkdir data datalog echo 3 > data/myid cat data/myid
启动zookeeper
//在master主机上启动服务 ./bin/zkServer.sh start conf/zoo.cfg //查看zookeeper状态 ./bin/zkServer.sh status
//在master1主机上启动服务 ./bin/zkServer.sh start conf/zoo.cfg //查看zookeeper状态 ./bin/zkServer.sh status
//在master2主机上启动服务 ./bin/zkServer.sh start conf/zoo.cfg //查看zookeeper状态 ./bin/zkServer.sh status
//master1 mesos-master --work_dir=/opt/home/mesos/data --log_dir=/opt/home/mesos/logs --no-hostname_lookup --ip=0.0.0.0 --zk=zk://192.168.10.132:2181/mesos --quorum=2 //master mesos-master --work_dir=/opt/home/mesos/data --log_dir=/opt/home/mesos/logs --no-hostname_lookup --ip=0.0.0.0 --zk=zk://192.168.10.157:2181/mesos --quorum=2 //master2 mesos-master --work_dir=/opt/home/mesos/data --log_dir=/opt/home/mesos/logs --no-hostname_lookup --ip=0.0.0.0 --zk=zk://192.168.10.133:2181/mesos --quorum=2
启动mesos-slave
slave1 mesos-slave --containerizers="mesos,docker" --work_dir=/opt/home/mesos/data --log_dir=/opt/home/mesos/logs --master=zk://192.168.10.157:2181,192.168.10.132:2181,192.168.10.133:2181/mesos --no-hostname_lookup --ip=0.0.0.0 slave2 mesos-slave --containerizers="mesos,docker" --work_dir=/opt/home/mesos/data --log_dir=/opt/home/mesos/logs --master=zk://192.168.10.157:2181,192.168.10.132:2181,192.168.10.133:2181/mesos --no-hostname_lookup --ip=0.0.0.0
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~