update EdgeGallery version 1.5
[eliot.git] / scripts / common_centos.sh
1 #!/bin/bash -ex
2
3 ##############################################################################
4 # Copyright (c) 2019 Huawei Tech and others.                                 #
5 #                                                                            #
6 # All rights reserved. This program and the accompanying materials           #
7 # are made available under the terms of the Apache License, Version 2.0      #
8 # which accompanies this distribution, and is available at                   #
9 # http://www.apache.org/licenses/LICENSE-2.0                                 #
10 ##############################################################################
11
12 # constants
13
14 DOCKER_VERSION=18.09.6
15 KUBE_VERSION=1.15.0-0
16 MACHINE=$(uname -m)
17
18 # start
19
20 # This script will install docker, kubeadm on both Eliot Master and Edge nodes
21
22 sudo sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' \
23 /etc/sysconfig/selinux
24
25 sudo modprobe br_netfilter
26 _conf='/etc/sysctl.d/99-akraino-eliot.conf'
27 echo 'net.bridge.bridge-nf-call-iptables = 1' |& sudo tee "${_conf}"
28 sudo sysctl -q -p "${_conf}"
29
30 #echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables
31
32 swapoff -a
33
34 sudo yum install -y yum-utils device-mapper-persistent-data lvm2
35
36 sudo yum-config-manager \
37 --add-repo https://download.docker.com/linux/centos/docker-ce.repo
38
39 sudo yum install docker-ce-${DOCKER_VERSION} docker-ce-cli-${DOCKER_VERSION} \
40 containerd.io
41
42 # Kubernetes repository set
43
44 cat <<-EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
45 [kubernetes]
46 name=Kubernetes
47 baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-${MACHINE}
48 enabled=1
49 gpgcheck=1
50 repo_gpgcheck=1
51 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
52         https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
53 EOF
54
55 # Set SELinux in permissive mode (effectively disabling it)
56 setenforce 0
57 sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
58
59 yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
60 systemctl enable --now kubelet
61
62 sudo yum install -y kubeadm-${KUBE_VERSION}
63 sudo systemctl start docker && sudo systemctl enable docker
64
65 sudo systemctl daemon-reload