Kubernetes - 2 部署配置
Kubernetes 集群部署
在阿里云上,容器服务提供了一键式的Kubernetes部署,但很多场景应用下需要搭建自托管的Kubernetes集群。
Kubernetes 架构图
节点信息
System: CenOS 7.6 - x64
Master 172.20.1.202 kube-controller-manager kube-apiserver kube-scheduler etcd coredns kube-flannel kube-proxy docker-ce
Slave1 172.20.1.203 kube-flannel kube-proxy docker-ce
Slave2 172.20.1.204 kube-flannel kube-proxy docker-ce
在阿里云上,可以直接通过ECS云服务器来作为集群运行环境。
基础工具安装(以下配置每个节点都需要运行)
yum -y install ntpdate vim wget
修改各节点主机名
echo k8s-c01-p001 > /etc/hostname
echo k8s-c01-p002 > /etc/hostname
echo k8s-c01-p003 > /etc/hostname
修改时区及时间
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate 0.cn.pool.ntp.org
关闭内核防火墙及系统防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
sed -i 's/=enforcing/=disabled/' /etc/selinux/config
配置Hosts文件
tee /etc/hosts <<-'EOF'
172.20.1.202 k8s-c01-p001
172.20.1.203 k8s-c01-p002
172.20.1.204 k8s-c01-p003
EOF
内核信息修改
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/bridge/bridge-nf-call-iptables
echo "1" > /proc/sys/net/bridge/bridge-nf-call-ip6tables
tee /etc/sysctl.d/kubernetes.conf <<-'EOF'
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
Docker RPM仓库配置
wget -P /etc/yum.repos.d/ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Kubernetes RPM仓库配置
wget -P /etc/yum.repos.d/ https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
rpm --import /etc/yum.repos.d/rpm-package-key.gpg
tee /etc/yum.repos.d/kubernetes.repo <<-'EOF'
[kubernetes]
name=kubernetes Repo
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
enabled=1
EOF
安装Docker及Kube工具
yum install -y docker-ce kubelet kubeadm kubectl
启动docker
systemctl start docker
关闭虚拟内存
swapoff -a
echo "KUBELET_EXTRA_ARGS=\"--fail-swap-on=false\"" > /etc/sysconfig/kubelet
配置自启动
systemctl enable kubelet docker
查看需要用到的镜像,如果遇到墙的问题,可以在墙外下载完拉回来
kubeadm config images list
kubeadm config images pull
初始化管理节点 只需要Master运行
kubeadm init --kubernetes-version=v1.16.0 --pod-network-cidr=10.1.0.0/16 --service-cidr=10.2.0.0/16 --ignore-preflight-errors=Swap
配置kubectl连接信息
mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
配置网络插件
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
工作节点加入集群 只需要Slave运行
kubeadm join <Master>:6443 --token <Token> \
--discovery-token-ca-cert-hash sha256:<Cert>
集群部署完成,查看集群节点
kubectl get node -owi
查看集群节点上运行的Pod
kubectl get pods -n kube-system -owide
个人建议
优先使用阿里云ACK容器服务,较低运维成本,方便管理。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
docker容器指标监控ctop命令
ctop为多个容器提供了一个简洁凝练的实时指标概览。它是一个类 top 的针对容器指标的界面。它展示了容器指标比如 CPU 利用率、内存利用率、磁盘 I/O 读写、进程 ID(PID)和网络发送(TX - 从此服务器发送)以及接受(RX - 此服务器接受)。ctop 带有对 Docker 和 runc 的内建支持;对其他容器和集群系统的连接计划在未来版本中推出。它不需要任何参数并且默认使用 Docker 主机变量。 ctop的安装Linuxsudo wget https://github.com/bcicen/ctop/releases/download/v0.7.2/ctop-0.7.2-linux-amd64 -O /usr/local/bin/ctopsudo chmod +x /usr/local/bin/ctop 使用ctop 如图:
-
下一篇
帆软FineBI5.1集群模式踩坑指南
帆软FineBI5.1集群模式踩坑指南 安装之前,貌似没做任何准备,centos7.7 [hadoop@master ~]$ lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch Distributor ID: CentOS Description: CentOS Linux release 7.7.1908 (Core) Release: 7.7.1908 Codename: Core [hadoop@master finebi]$ ls -al total 628616 drwxr-xr-x. 2 hadoop hadoop 40 Oct 24 09:35 . drwxr-xr-x. 15 hadoop hadoop 4096 O...
相关文章
文章评论
共有0条评论来说两句吧...