kubeadm部署k8s-v1.11.1集群

一、环境准备

  • master:192.168.0.8,kubelet,kubeadm,kubectl:apiserver,manager,scheduler,proxy,pause,etcd,coredns
  • node01:192.168.0.9,kubeadm,kubelet
  • node02:192.168.0.10,kubeadm,kubelet

节点网络:192.168.0.0/24

Service网络:10.96.0.0/12

Pod网络:10.244.0.0/16(flannel默认)

1、准备基础环境(所有节点)

1. 基于主机名解析
# vim /etc/hosts
192.168.0.8     master.dongfei.tech     master
192.168.0.9     node01.dongfei.tech     node01
192.168.0.10    node02.dongfei.tech     node02
2. 关闭firewalld
# systemctl disable firewalld
# systemctl stop firewalld
3. 关闭selinux
# vim /etc/selinux/config
SELINUX=disabled
# setenforce 0
# reboot
4. 时间同步
# yum install chrony
# vim /etc/chrony.conf
server ntp.aliyun.com iburst
stratumweight 0
driftfile /var/lib/chrony/drift
rtcsync
makestep 10 3
bindcmdaddress 127.0.0.1
bindcmdaddress ::1
keyfile /etc/chrony.keys
commandkey 1
generatecommandkey
logchange 0.5
logdir /var/log/chrony
# systemctl enable chronyd
# systemctl start chronyd
# chronyc
chronyc> waitsync #手动同步

2、准备docker环境(所有节点)

# vim /etc/yum.repos.d/docker-ce.repo
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
# yum localinstall http://mirrors.aliyun.com/centos-vault/7.3.1611/extras/x86_64/Packages/container-selinux-2.9-4.el7.noarch.rpm -y
# yum list docker-ce --showduplicates |sort -r  #列出docker可用版本
# yum install -y --setopt=obsoletes=0 docker-ce-17.12.1.ce-1.el7.centos
# systemctl start docker
# systemctl enable docker
# docker load < k8s-images-1.11.1.tar
# docker image ls
k8s.gcr.io/kube-proxy-amd64                            v1.11.1
k8s.gcr.io/kube-scheduler-amd64                        v1.11.1
k8s.gcr.io/kube-apiserver-amd64                        v1.11.1
k8s.gcr.io/kube-controller-manager-amd64               v1.11.1
k8s.gcr.io/coredns                                     1.1.3
k8s.gcr.io/etcd-amd64                                  3.2.18
k8s.gcr.io/pause                                       3.1    
#!/bin/bash
k8s='kube-apiserver-amd64:v1.11.1
kube-controller-manager-amd64:v1.11.1
kube-scheduler-amd64:v1.11.1
kube-proxy-amd64:v1.11.1
pause:3.1
etcd-amd64:3.2.18
coredns:1.1.3'
for i in $k8s; do docker pull k8s.gcr.io/$i; done
docker save $(docker images | grep -v REPOSITORY | awk 'BEGIN{OFS=":";ORS=" "}{print $1,$2}') -o k8s-images-1.11.1.tar

3、修改内核参数(所有节点)

# vim /etc/sysctl.conf
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward = 1
# sysctl -p
# cat /proc/sys/net/bridge/bridge-nf-call-iptables
# cat /proc/sys/net/bridge/bridge-nf-call-ip6tables
# cat /proc/sys/net/ipv4/ip_forward

二、部署k8s-master

1、配置yum源并安装k8s

# vim /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes Repo
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
# yum list kubeadm --showduplicates |sort -r
# yum install kubelet-1.11.1-0 kubeadm-1.11.1-0 kubectl-1.11.1-0 -y

2、初始化kubernetes_master

# systemctl enable kubelet
# vim /etc/sysconfig/kubelet
KUBELET_EXTRA_ARGS="--fail-swap-on=false"
# kubeadm init --kubernetes-version=v1.11.1 --pod-network-cidr=10.224.0.0/16 --service-cidr=10.96.0.0/12 --ignore-preflight-errors=Swap
kubeadm join 192.168.0.8:6443 --token 8zzav4.06acl9bocom2ee77 --discovery-token-ca-cert-hash sha256:31c20527733b81e0ab20daafe6a3f34e8d4b9da899dd0e1e6f6a47ec455e6d55

3、配置kubectl认证

# mkdir -p $HOME/.kube
# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
# chown $(id -u):$(id -g) $HOME/.kube/config
# kubectl get componentstatus  #查看组件状态
# kubectl get cs

4、部署flannel

# kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
# kubectl get nodes
# kubectl get pods -n kube-system

三、将node加入集群

  • 按照以上master的方法安装docker-ce
  • 按照以上master的方法配置kubernetes源
  • 按照以上master的方法导入docker镜像
  • 在所有的node节点上操作相同

1、安装kubeadm和kubelet

# yum list kubeadm --showduplicates |sort -r
# yum install kubelet-1.11.1-0 kubeadm-1.11.1-0 -y
# systemctl enable kubelet
# vim /etc/sysconfig/kubelet
KUBELET_EXTRA_ARGS="--fail-swap-on=false"

2、将node加入集群(以下信息从master初始化完成后打印到屏幕的信息获取)

# kubeadm join 192.168.0.8:6443 --token 8zzav4.06acl9bocom2ee77 --discovery-token-ca-cert-hash sha256:31c20527733b81e0ab20daafe6a3f34e8d4b9da899dd0e1e6f6a47ec455e6d55 --ignore-preflight-errors=Swap

3、master上查看nodes状态

# kubectl get nodes
# kubectl get pods -n kube-system -o wide

原文地址:https://www.cnblogs.com/L-dongf/p/10294385.html

时间: 2024-08-01 12:29:38

kubeadm部署k8s-v1.11.1集群的相关文章

使用kubeadm部署K8S v1.17.0集群

kubeadm部署K8S集群 安装前的准备 集群机器 172.22.34.34 K8S00 172.22.34.35 K8S01 172.22.34.36 K8S02 注意: 本文档中的 etcd .master 节点.worker 节点均使用这三台机器: 需要使用 root 账号执行这些命令: 未做特殊说明,就表示集群的所有机器都要进行操作 查看CentOS版本 [[email protected] ~]# cat /etc/redhat-release CentOS Linux releas

使用kubeadm快速部署Kubernetes(v1.12.1)集群---来源:马哥教育马哥原创

使用kubeadm快速部署Kubernetes(v1.12.1)集群------来源:马哥教育马哥原创 Kubernetes技术已经成为了原生云技术的事实标准,它是目前基础软件领域最为热门的分布式调度和管理平台.于是,Kubernetes也几乎成了时下开发工程师和运维工程师必备的技能之一. 一.主机环境预设 1.测试环境说明 测试使用的Kubernetes集群可由一个master主机及一个以上(建议至少两个)node主机组成,这些主机可以是物理服务器,也可以运行于vmware.virtualbo

Ubuntu16.04搭建kubernetes v1.11.2集群

1.节点介绍         master      cluster-1      cluster-2      cluster-3 hostname        k8s-55      k8s-54        k8s-53        k8s-52    ip               10.2.49.55    10.2.49.54    10.2.49.53 10.2.49.52 2.配置网络,配置/etc/hosts     略过.... 3.安装kubernets 1 sud

k8s v1.13.4 集群部署

部署环境 主机节点清单 服务器名 ip地址 etcd K8S server K8s node node01 172.16.50.111 Y Y node02 172.16.50.113 Y Y node03 172.16.50.115 Y Y node04 172.16.50.116 Y node05 172.16.50.118 Y node06 172.16.50.120 Y node07 172.16.50.128 Y 版本信息 Linux版本:CentOS 7.6.1810 内核版本:3.

kubeadm部署k8s1.9高可用集群--4部署master节点

部署master节点 kubernetes master 节点包含的组件: kube-apiserver kube-scheduler kube-controller-manager 本文档介绍部署一个三节点高可用 master 集群的步骤,分别命名为k8s-host1.k8s-host2.k8s-host3: k8s-host1:172.16.120.154 k8s-host2:172.16.120.155 k8s-host3:172.16.120.156 安装docker 在每台主机安装do

基于腾讯云CLB实现K8S v1.10.1集群高可用+负载均衡

概述: 最近对K8S非常感兴趣,同时对容器的管理等方面非常出色,是一款非常开源,强大的容器管理方案,最后经过1个月的本地实验,最终决定在腾讯云平台搭建属于我们的K8S集群管理平台~ 采购之后已经在本地部署了不下百次模拟线上生成环境,尽可能还原本地搭建过程,于是修改了安装脚本以及镜像文件. 基础环境 主机 地址 Type k8s-host1 192.168.100.121 master node k8s-host2 192.168.100.122 master node k8s-host3 192

使用kubeadm部署k8s集群01-初始化

使用kubeadm部署k8s集群01-初始化 2018/1/3 节点配置 master x3 OS version: centos7 swapoff ### 阿里云默认:off hosts ### 每个节点上配置: [[email protected] ~]# cat /etc/hosts ### k8s master @envDev 10.10.9.67 tvm-00 10.10.9.68 tvm-01 10.10.9.69 tvm-02 Docker version: latest(17.0

Kubernetes学习之路(一)之Kubeadm部署K8S集群

一个星期会超过多少阅读量呢??发布一篇,看看是否重新在51上写学习博文,有老铁支持嘛?? 使用kubeadm部署集群 节点名称 ip地址 部署说明 Pod 网段 Service网段 系统说明 k8s-master 192.168.56.11 docker.kubeadm.kubectl.kubelet 10.244.0.0/16 10.96.0.0/12 Centos 7.4 k8s-node01 192.168.56.12 docker.kubeadm.kubelet 10.244.0.0/1

使用kubeadm部署k8s集群08-配置LB指向kube-apiserver

使用kubeadm部署k8s集群08-配置LB指向kube-apiserver 2018/1/4 配置 LB 指向 kube-apiserver 小目标:在 3 个 master 节点前,还需配置一个 LB 来作为 apiserver 的入口 LB -> master x3 直接使用阿里云内网 SLB L4 proxy 资源(本次实例是 4 层而不使用 7 层的原因是:跳过了处理证书的环节) 申请下来资源后,将得到一个 vip 指向上述 3 个 master 节点的 IP 作为后端真实服务器 注