dcos 1.7 安装

简介

dcos,不错的东西,想安装么??嘿嘿
安装当然要装docker了, 注意这个地方安装1.6以上的就好,关键是接下来要用cli的方式安装,因为下面的地方会有冲突:
1. web安装的方式,会对某个docker的文件进行覆盖,会使用-H fd://这种方式
2. docker在某个版本之后已经没有了-H了

为啥还要采用web安装的方式来?
因为会帮助你生成配置文件。

用cli安装的方式简单不?
就照着下面的命令打,出了问题也会有提示,可以不用重新来过。

node的添加简单么?
在boot角色的安装的地方,就是你打 bash xxx.sh之后,除了自动解压出来的tar文件之外,还有genconf这个文件夹,而且这个文件夹下面还有个serve文件将,这个文件夹一定要保存好了, 以后在安装agent的时候,直接拷贝过去,然后运行 bash dcos_install.sh slave,如果安装master,那么就把slave替换成master。

如果安装失败该咋办?
删掉重新来。删文件就是下面有一大串rm -rf,大胆的删,别犹豫,因为官方也没有提供一个uninstall的好方法。

安装docker

# 使用docker1.11
rm -f *.rpm
yum remove -y docker*
rsync -avzP soft.ops.ac.cn::ops1970/dcos/docker-1.11.2/*.rpm .
rpm -Uvh *.rpm

# 打开overlayfs
tee /etc/modules-load.d/overlay.conf <<-'EOF'
overlay
EOF

# 调整docker启动参数
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

# 
systemctl daemon-reload

systemctl restart docker

安装dcos(web方式)获取配置文件

安装dcos(cli方式)正式安装

cd ~
rsync -avzP soft.ops.ac.cn::ops1970/dcos/1.7/dcos_generate_config.sh .

# cli install
bash dcos_generate_config.sh --genconf
bash dcos_generate_config.sh --install-prereqs

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
systemctl daemon-reload
systemctl start docker

bash dcos_generate_config.sh --preflightsudo bash dcos_generate_config.sh --deploy
bash dcos_generate_config.sh --postflight

# 
http://192.168.126.16:8181/exhibitor/v1/ui/index.html
http://192.168.126.16/ dcos管理界面

添加node

# 清空过去安装的痕迹,或者说清空dcos服务
rm -rf /opt/mesosphere*
rm -rf /var/lib/zookeeper
rm -rf /etc/mesos*
rm -rf /opt/dcos-prereqs.installed
rm -rf /etc/systemd/system/dcos*
rm -rf /usr/lib/systemd/system/marathon.service
systemctl daemon-reload

# 准备安装使用的文件
cd /opt
rm -rf dcos_install_tmp
mkdir -p dcos_install_tmp
rsync -avzP soft.ops.ac.cn::ops1970/dcos/1.7/dcos-install.tar .
tar -xf dcos-install.tar -C dcos_install_tmp

# 部署detectip
mkdir -p /opt/mesosphere/bin
echo '
#!/bin/bash
IPDETECT=`ifconfig eno16777736|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"`
echo "$IPDETECT"

' >> /opt/mesosphere/bin/detect_ip

## 开始安装slave
cd dcos_install_tmp
bash dcos_install.sh slave

dcos状态检查

systemctl status dcos-mesos-slave

cli安装

# 安装
# install cli
pip install virtualenv

mkdir dcos && cd dcos
curl -O https://downloads.dcos.io/dcos-cli/install.sh
bash install.sh /opt/dcli http://192.168.126.16

dcos auth login

cli操作repo的添加和删除

测试的时候可以把dcos_install.sh加入set -x
dcos package repo list
dcos packagfe search nginx
dcos package repo remove lingqueyun
dcos package repo add [--index=<index>] <repo-name> <repo-url>

marathon-dns

# dcos默认安装 
http://blog.csdn.net/zouyee/article/details/51088665

marathon-lb

dcos package install marathon-lb

# 参考
https://github.com/mesosphere/marathon-lb
https://mesosphere.com/blog/2015/12/04/dcos-marathon-lb/
https://mesosphere.com/blog/2015/12/13/service-discovery-and-load-balancing-with-dcos-and-marathon-lb-part-2/

marathon 与 nginx 配合打造内部nginx

文件 options.json

{
  "marathon-lb":{
    "name":"marathon-lb-internal",
    "haproxy-group":"internal",
    "bind-http-https":false,
    "role":""
  }
}

dcos package install –options=options.json marathon-lb

文件 nginx-internal.json

# 内部 -nginx配置
# nginx-internal.json
{
  "id": "nginx-internal",
  "container": {
    "type": "DOCKER",
    "docker": {
      "image": "nginx:1.9.14",
      "network": "BRIDGE",
      "portMappings": [
        { "hostPort": 0, "containerPort": 80, "servicePort": 10001 }
      ],
      "forcePullImage":true
    }
  },
  "instances": 1,
  "cpus": 0.1,
  "mem": 65,
  "healthChecks": [{
      "protocol": "HTTP",
      "path": "/",
      "portIndex": 0,
      "timeoutSeconds": 10,
      "gracePeriodSeconds": 10,
      "intervalSeconds": 2,
      "maxConsecutiveFailures": 10
  }],
  "labels":{
    "HAPROXY_GROUP":"internal"
  }
}

nginx上线

dcos package install –options=nginx-internal.json nginx-internal

测试 :
curl http://marathon-lb-internal.marathon.mesos:10001/

TO BE Continue

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值