Install

Bootstrap Node Installation

sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
setenforce 0
mkdir /tmp/dcos && cd /tmp/dcos && mkdir -p genconf
curl -O https://downloads.dcos.io/dcos/EarlyAccess/dcos_generate_config.sh
cat > genconf/config.yaml <<EOF
---
bootstrap_url: http://192.168.3.40:8080
cluster_name: 'WZSBigData'
exhibitor_storage_backend: static
check_time: 'true'
ip_detect_filename: /genconf/ip-detect
oauth_enabled: 'false'
telemetry_enabled: 'false'
master_list:
- 192.168.3.10
- 192.168.3.20
- 192.168.3.30
resolvers:
- 8.8.4.4
- 8.8.8.8
EOF

cat > genconf/ip-detect <<EOF
#!/usr/bin/env bash
set -o nounset -o errexit
export PATH=/usr/sbin:/usr/bin:$PATH
if [ -f /etc/sysconfig/network-scripts/ifcfg-ens32 ]; then
    echo $(ip addr show ens32 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
fi
if [ -f /etc/sysconfig/network-scripts/ifcfg-eno1 ]; then
    echo $(ip addr show eno1 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
fi
EOF

chmod +x genconf/ip-detect
yum install -y docker docker-registry
./dcos_generate_config.sh --genconf
docker run -d --restart=always -p 8111:80 -v /root/dcos1.11/genconf/serve:/usr/share/nginx/html:ro --name dcos_1.11_install_mode nginx
docker run -d --restart=always -p 8000:80 -v /usr/share/nginx/html:/usr/share/nginx/html:ro --name dcos_1.11_running_mode nginx

Master/Salve Node Installation

改ip (/etc/sysconfig/network-scripts/ifcfg-eno1)

BOOTPROTO=static
IPADDR=192.168.2.183
NETMASK=255.255.255.0
GATEWAY=192.168.2.1
DNS1=8.8.8.8
DNS2=8.8.4.4

安裝Node前的Linux系統設定

hostnamectl set-hostname dcosa83
yum install -y docker docker-registry unzip ipset chrony
groupadd nogroup
groupadd docker
yum install -y unzip ipset ntpdate
ntpdate tock.stdtime.gov.tw
systemctl enable chronyd
systemctl enable docker.service
systemctl start chronyd
systemctl stop docker
cat > /etc/sysctl.d/bridge.conf <<EOF
net.bridge.bridge-nf-call-arptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
systemctl restart systemd-sysctl.service
rm -rf /var/lib/docker
sed -i 's/--selinux-enabled/--selinux-enabled=false/' /etc/sysconfig/docker
sed -i 's/DOCKER_STORAGE_OPTIONS=/DOCKER_STORAGE_OPTIONS= -s overlay/' /etc/sysconfig/docker-storage
systemctl start docker
sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
systemctl stop firewalld
systemctl disable firewalld

安裝docker憑證

mkdir /etc/docker/certs.d/registry.marathon.mesos:5000

curl http://192.168.7.80:8000/docker-registry/ca.cert.pem -f -o /etc/docker/certs.d/registry.marathon.mesos:5000/ca.cert.pem
if [ $? != 0 ]; then printf '\e[41mdocker憑證安裝失敗!\e[0m\n'; fi
systemctl restart docker

DC/OS Node(Master/Slave/Slave_public,選一種角色)安裝

mkdir /tmp/dcos && cd /tmp/dcos
curl -O http://192.168.3.80:8111/dcos_install.sh
chmod 755 dcos_install.sh
./dcos_install.sh master
./dcos_install.sh slave
./dcos_install.sh slave_public

Expand Disk

yum install gdisk util-linux
gdisk /dev/sdc (n, enter,enter,enter,8e00,w)
pvcreate /dev/sdc1
vgextend vgVAR /dev/sdc1
lvextend --extents +100%FREE /dev/vgVAR/lvVAR /dev/sdc1
xfs_growfs /dev/mapper/vgVAR-lvVAR

Last updated

Was this helpful?