DCOS安装
安装pre-flight
master机器会安装上安装文件(同时check条件是否满足要求),其他的agent设备只是check各种条件是否具备。
确保53/2181端口没有被占用;centos7每次启动机器都会启动dnsmasq服务(占用53端口),坑爹的是服务已经被disable,还是会被启动,估计是在rc.local里面做的。
deploy流程
实时监控(包括定位问题):
journalctl -xe -fu dcos-setup.service --no-pager
需要detect脚本的py是这个,要读源码的看这:
/opt/mesosphere/packages/exhibitor--5ecf040aa74a1c1f29ab543b4d5a23a738975c5f/usr/exhibitor/start_exhibitor.py
NTP惹的祸
Master之前的dcos-navstar.service服务异常,只是因为NTP服务没有启动;导致了部署失败;使得master节点以及一个agent节点,就是因为NTP没有启动,而挂在那里了。
操作
成功后的联网问题
部署成功后,可能将会要求你使用github,google,microsoft账号登录,但是登录之后爆出异常:
Unable to login to your DC/OS cluster. Clusters must be connected to the internet.
如果不想要认证,可以在安装的时候,不要勾选aunthentication选项(GUI安装页面的底部);或者是安装的配置文件中添加一句:
oauth_enabled: false
推测应该是只有企业版本才可以通过认证的方式来进行操作。
记得关闭防火墙
进入到了管理页面之后,发现一个节点总是连接不上,重启了dcos-spartan.service服务之后,发现重新注册,但是仍然是连接不上状态;后来发现原来这个节点的firewalld服务是打开的。
扩展节点
官网介绍地址:https://dcos.io/docs/1.10/administering-clusters/add-a-node/
1.打包扩展安装包(其实就是把install以及配置文件打包)
1 cd genconf/serve 2 sudo tar cf dcos-install.tar *
2. 在扩展节点上的准备工作
1 sudo mkdir -p /opt/dcos_install_tmp 2 sudo tar xf dcos-install.tar -C /opt/dcos_install_tmp
3. 启动
private slave节点
sudo bash /opt/dcos_install_tmp/dcos_install.sh slave
public slave节点
sudo bash /opt/dcos_install_tmp/dcos_install.sh slave_public
调试
日志排查
定位问题,就是journalctl -fu XXX,XXX来自于systemctl | grep dcos,逐个排查。
master部署后,频繁的看到下面的日志,期初以为是什么服务挂了,老重启,后来调查才发现:这是正常的是exhibitor周期性发送的连接,可以调周期(但是不知道在哪里调)。
Accepted socket connection from /127.0.0.1:58444
Processing srvr command from /127.0.0.1:58444
[Thread-520:NIOServerCnxn@1044] - Closed socket connection for client /127.0.0.1:51144 (no session established for client)
重启
重启dcos-mesos-slave-public/dcos-mesos-slave服务,遇到下面的问题,八成就是因为detect_ip脚本返回的不正确;
ping: ready.spartan: Name or service not known