Mesosphere DCOS快速部署手册及错误处理方法

 

Mesosphere DCOS快速部署手册

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

DCOSMesosphere开发的开源数据中心操作系统,除了mesos分布式内核外还集成marathonmesos-dns等组件,能够提供完整的服务治理、应用监控、权限管理能力,具体DCOS的使用我会在后面的分享里说明,这篇主要讲如何通过在线的方式快速安装部署DCOS

1.环境准备

注意!启动节点必须要单独一台,不能和master节点混用,另外master节点也必须是单独一台,不能和slave节点混用。boot节点以后如果DCOS崩溃的时候还可以用来恢复集群。

  • 单独一台boot节点
  • 单独一台master节点
  • 3slave节点

操作系统都要centos7以上版本,集群节点间网络要能互通,boot节点到其他节点要做ssh互信,所有节点都要关闭selinux和防火墙。

Master节点要可以上网。因为在安装dcos的时候,会更新软件和相关插件

先检查DNS是否可用,(ping百度)

ping baidu.com

 

然后查看ip

ifconfig

 

如果ping不同需要修改网络服务DNS

cd /etc/sysconfig/network-scripts

vi /etc/resolv.conf

DNS样例

nameserver 202.96.128.86

nameserver 202.96.128.166

nameserver 8.8.8.8

nameserver 8.8.4.4

修改完重启网卡服务

service network restart

traceroute 202.108.22.5

 

如果是新装的机器,可以方便配置修改主机名

主机名配置文件一

vi /etc/sysconfig/network

样例

HOSTNAME=master

HOSTNAME=slave1

HOSTNAME=slave2

HOSTNAME=slave3

HOSTNAME=slave4

 

主机名配置文件二

vi /etc/hosts

样例

10.1.131.11 master

10.1.131.12 slave1

10.1.131.13 slave2

10.1.131.14 slave3

10.1.131.15 slave4

 

需要boot节点到所有其他,masterslave节点的免验证登录

第一步:创建ssh-key

ssh-keygen -t rsa

       说明:多次回车后

第二步:cd ~/.ssh

说明:

~代表你的/home/用户明目录
假设你的用户名是x,那么~/就是/home/x/
.是代表此目录本身,但是一般可以不写
所以cd ~/. 和cd ~ 和cd ~/效果是一样的
但是.后面有东西又是另外一个问题,点在文件名头部,代表一个隐藏文件
~/.local是你的主目录下一个.local的文件夹的路径,并且从.可以看出,这是一个饮藏文件,如果不用ls -a的话,一般ls是无法看到的

拷贝公钥

第三步:catid_rsa.pub  >> authorized_keys

测试公钥

第六步:输入如下命令,测试是否成功

ssh localhost

 

输入yes后

再次  ssh localhost

本地主机自己的免登陆就完成了,接下来是其他主机免登陆,方法同上,依次拷贝添加

 

cd ~/.ssh

分发公钥到其他节点

scp ./id_rsa.pub hadoop-slave:~/.ssh/id_master.pub

ssh hadoop-slave1

cd ~/.ssh

cat id_master.pub >> authorized_keys

 

关闭防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service

systemctl stop iptables.service

systemctl disable iptables.service

 

关闭SELINUX

setenforce 0

sed -i'/^SELINUX=/c\SELINUX=disabled'/etc/selinux/config

 

*********注意!需要查询官网dcos现有版本支持那种版本的docker,博主一开始用的最新版本1.12docker结果安装各种问题,降级为1.11docker就没有问题,官网上当时支持到1.11版本的docker

yum install -y docker-engine-1.11.2

 

2.安装overlayFS docker
**
注意!**DCOS默认底层存储引擎要用overlayFS格式的,如果是按照devicemapper方式安装的docker在安装DCOS的时候会报错,提示服务器存储空间不够docker启动不起来,这个问题搞了好久,最后还是按照官方的要求重新安装docker才解决。另外说一下所有的节点都需要安装docker,包括boot节点。

建立overlay配置文件

tee /etc/modules-load.d/overlay.conf<<-'EOF'

overlay

EOF

 

验证overlayFS是否开启

命令:lsmod |grep overlay

结果 :overlay

 

配置docker启动使用overlayFS的方式

mkdir -p/etc/systemd/system/docker.service.d && sudo tee/etc/systemd/system/docker.service.d/override.conf <<- EOF

[Service]

ExecStart=

ExecStart=/usr/bin/docker daemon--storage-driver=overlay

EOF

2.1 升级系统内核
如果你直接安装的是centos7.2就不用升级了

yumupgrade--assumeyes--tolerantyumupdate--assumeyes

2.2 验证系统内核是3.1以上版本

uname -r

3.10.0-327.10.1.el7.x86_64

2.3打开 OverlayFS

tee /etc/modules-load.d/overlay.conf<<-'EOF'

overlay

EOF


2.4 重启系统

reboot


2.5 验证overlayFS是否开启

$ lsmod | grepoverlay

overlay2.6配置docker yum

这个版本的yum centos自带的yum源就不行了,需要加一个repo文件

 

tee /etc/yum.repos.d/docker.repo <<'EOF' 

[dockerrepo] 

name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/ enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg

EOF

 

 2.7 配置docker启动使用overlayFS的方式

mkdir -p /etc/systemd/system/docker.service.d && sudo tee/etc/systemd/system/docker.service.d/override.conf <<- EOF

[Service]

ExecStart=

ExecStart=/usr/bin/docker daemon --storage-driver=overlay -H fd://

EOF2.8 安装启动docker

yuminstall--assumeyes--tolerantdocker-enginesystemctlstartdockersystemctlenabledocker如果启动成功的话,应该能看到

Complete!

Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

2.9 测试docker安装成功否

 docker ps3.boot节点上下载DCOS安装文件

这个安装文件大概500m500msh文件,很奇怪吧:)其实是官方把安装镜像也包里边去了,只要下一个这个就够了。

curl -O https://downloads.dcos.io/dcos/EarlyAccess/dcos_generate_config.sh4.运行安装脚本

bashdcos_generate_config.sh--web

输出结果

Running mesosphere/dcos-genconf docker with BUILD_DIR setto /home/centos/genconf

16:36:09 dcos_installer.action_lib.prettyprint:: ====> Starting DC/OS installerin web mode

16:36:09 root:: Starting server ('0.0.0.0', 9000)

万一启动失败了,你可以用这个命令看更精细的输出,方便调试 

bash dcos_generate_config.sh --web

5.进入web安装界面

http://boot节点IP:9000

6.输入配置信息

Master Private IP List master节点IP,有多台用逗号分隔
Agent Private IP List
slave节点IP,有多台用逗号分隔
Master Public IP
master节点的外网IP,这个应该是从master列表中选一台

SSH Username ssh用户名,尽量用root

SSH Listening Port ssh端口

SSH Key boot节点的ssh私钥,id_rsa文件,从头到尾拷贝全了

cd ~/.ssh

cat id_rsa

Upstream DNS Serversdns服务器,建议用本地集群内的dns8.8.8.8
IP Detect Script
要在节点上运行的ip探测脚本,我自己写了一个大家可以照着改,别忘了设定脚本权限。

#!/bin/bash

IPDETECT=`ifconfig em1|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr-d "addr:"`

echo"$IPDETECT"

 

注意!一旦DCOS安装完成这个节点的IP是不能改的,如果要改的话就得卸载节点重新再添加,所以这个IP地址一定要是静态的,不能用DHCP分配的。其实也是有办法添加的,比较麻烦,无法从界面上添加,需要从后台添加

7.开始环境检查
点击Run Pre-Flight 就开始了,boot节点会检查其他节点的系统环境符不符合安装要求,是不是有配置错误,或者缺包、版本不对等问题。全套下来大约需要15分钟左右,一般出问题都是在这个环节,一旦出了问题,他会提示你哪个节点有问题,然后你可以点开看,一大串下拉列表,都是一项项的检查环节,从中挑带error的,然后再ssh登陆到各个节点该配置配置该装包装包,等都处理完了,在返回web界面的上一步,重新执行Run Pre-Flight

注意!这个过程中一定不能关闭这个web安装界面,如果你必须重启boot节点,或者网络掉线了,那么你在重新启动web安装过程前,必须登陆到各个节点做个清理工作。

***注意!,如果安装失败,需要清理以下文件再安装

执行自卸载命令,如果显示节点都卸载成功,可以安心重装,若卸载失败需要清理以下目录

自卸载命令

bash dcos_generate_config.sh uninstall

 

清理的目录

rm –rf /opt/mesosphere

这个是安装完成后,会生成的mesosphere目录

 

rm –rf /etc/systemd/system/dcos.target.wants

安装临时目录,不删除会报错

 

rm –rf /var/lib/zookeeper

master节点会安装zookeeper,重新安装需要清理

 

rm –rf  /var/lib/mesos

这个是安装完成后,会生成的mesos库,重新安装需要清理

 

 

8.集群部署安装文件
在上一步环境检查顺利通过以后,执行deploy,其实就是从boot节点把安装镜像下发到各个节点而已,上一步没问题这一步一般也不会出错。

9.启动DCOS后台服务
部署执行完以后,再点击run Post-Flight ,这步其实就是boot去各个节点把docker镜像拉起来,DCOS的那些组件像mesos master slave marathonmesos-dns等都是运行在docker里,另外具体配置信息也是boot节点通过环境变量这种方式帮你注入进去,这一步一般也不会出现问题。

执行完成以后我们的DCOS安装阶段就成功了!

10.登陆DCOS
登陆DCOS只能通过微软、githubgmail这三种账户登陆,一般用git账户吧,需要用浏览器先登陆到github,然后再选择DCOS界面上的git login,就能登陆上了,看到系统监控界面。

11.DCOS
软件库
DCOS
也提供了类似docker repository的功能,叫做Universe,里边提供了很多分布式应用的package,包括chronossparkJenkinsKafaka等,但是很遗憾目前上边还有没有hadoop,只有hdfs

12.最后
其实我这篇文章主要是基于mesosphere的官方文档写的,上边的内容很详实,像hadoop的文档一样好用,大家有问题可以上去参考。
https://dcos.io/docs/1.7/

中国联通研究院——软件与系统实验室

.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值