kubeadm安装kubernetes-v1.13.1
kubeadm安装kubernetes-v1.13.1
centos虚拟机使用kubeadm安装k8s-v1.13.1。
机器信息如下:
| 主机名 | ip | 
|---|---|
| master | 192.168.239.200 | 
| node1 | 192.168.239.201 | 
| node2 | 192.168.239.202 | 
环境准备
设置主机名
192.168.239.200 master
192.168.239.201 node1
192.168.239.202 node2
关闭swap
swapoff -a
sed -i 's/.*swap.*/#&/' /etc/fstab
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
关闭selinux
setenforce 0
配置相关参数
net.ipv4.ip_forward=1
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
vm.swappiness=0
sysctl -p
docker安装
安装docker的yum源
yum-config-manager --add-repo  https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
查看docker版本
yum list docker-ce.x86_64  --showduplicates |sort -r
docker-ce.x86_64            3:18.09.0-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.1.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.06.1.ce-3.el7                   @docker-ce-stable
docker-ce.x86_64            18.06.0.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.03.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.09.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.09.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.06.2.ce-1.el7.centos            docker-ce-stable
安装docker
yum install -y --setopt=obsoletes=0 docker-ce-18.06.1.ce-3.el7
systemctl start docker
systemctl enable docker
安装kubeadm等
配置阿里云源
vim /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
node结点不用安装kubectl
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet
systemctl start kubelet
安装master结点
国内无法访问google的镜像源,需要自己生成放到docker hub。
如何自己生成镜像放到docker hub请看Docker Hub上自动制做Docker镜像
下载自己生成的镜像源
vim pull-kube-image.sh
#!/bin/bash
images=(kube-scheduler:v1.13.1
        kube-proxy:v1.13.1
        kube-controller-manager:v1.13.1
        kube-apiserver:v1.13.1
        pause:3.1
        coredns:1.2.6
        etcd:3.2.24)
for imagename in ${images[@]}; do
docker pull mathlsj/$imagename
docker tag mathlsj/$imagename k8s.gcr.io/$imagename
docker rmi mathlsj/$imagename
done
docker pull quay.io/coreos/flannel:v0.10.0-amd64
查看镜像源
docker images 
REPOSITORY                              TAG                 IMAGE ID            CREATED             SIZE
k8s.gcr.io/kube-scheduler               v1.13.1             9bf9c8fb24af        7 days ago          79.6MB
k8s.gcr.io/kube-proxy                   v1.13.1             6fbfd87ede1f        7 days ago          80.2MB
k8s.gcr.io/kube-controller-manager      v1.13.1             f5e8b3a9a6bf        7 days ago          146MB
k8s.gcr.io/kube-apiserver               v1.13.1             14219a09a24c        7 days ago          181MB
k8s.gcr.io/pause                        3.1                 68112c580347        8 days ago          742kB
k8s.gcr.io/coredns                      1.2.6               75ca836e805a        8 days ago          40MB
k8s.gcr.io/etcd                         3.2.24              c10486f7ea38        9 days ago          220MB
k8s.gcr.io/kubernetes-dashboard-amd64   v1.8.3              0c60bcf89900        11 months ago       102MB
quay.io/coreos/flannel                  v0.10.0-amd64       f0fad859c909        11 months ago       44.6MB
节点初始化
kubeadm init --kubernetes-version=v1.13.1 --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=192.168.239.200
看到Your Kubernetes master has initialized successfully!就表示初始化成功了。
要使用kubectl需要以下命令
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
查看初始化情况
kubectl get nodes
NAME     STATUS   ROLES    AGE     VERSION
master   Ready    master   3d1h    v1.13.2
kubectl get pod --all-namespaces
NAMESPACE     NAME                             READY   STATUS    RESTARTS   AGE
kube-system   coredns-86c58d9df4-2nhd5         0/1     Pending   0          35m
kube-system   coredns-86c58d9df4-l2wt9         0/1     Pending   0          35m
kube-system   etcd-master                      1/1     Running   0          34m
kube-system   kube-apiserver-master            1/1     Running   0          34m
kube-system   kube-controller-manager-master   1/1     Running   0          34m
kube-system   kube-proxy-fqjvp                 1/1     Running   0          35m
kube-system   kube-scheduler-master            1/1     Running   0          34m
安装flannel网络
wget https://raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml
kubectl apply -f kube-flannel.yml
安装node结点
在安装前,先完成前面的环境准备,docker安装和安装kubeadm等。
下载镜像源
vim pull-kube-image.sh
#!/bin/bash
images=(kube-proxy:v1.13.1
        pause:3.1
        coredns:1.2.6)
for imagename in ${images[@]}; do
docker pull mathlsj/$imagename
docker tag mathlsj/$imagename k8s.gcr.io/$imagename
docker rmi mathlsj/$imagename
done
docker pull quay.io/coreos/flannel:v0.10.0-amd64
查看镜像
docker images
REPOSITORY                              TAG                 IMAGE ID            CREATED             SIZE
k8s.gcr.io/kube-proxy                   v1.13.1             6fbfd87ede1f        7 days ago          80.2MB
k8s.gcr.io/pause                        3.1                 68112c580347        8 days ago          742kB
k8s.gcr.io/coredns                      1.2.6               75ca836e805a        8 days ago          40MB
quay.io/coreos/flannel                  v0.10.0-amd64       f0fad859c909        11 months ago       44.6MB
查看token,在master结点上看
kubeadm token list
TOKEN                     TTL       EXPIRES                     USAGES                   DESCRIPTION                                                EXTRA GROUPS
km7adp.vu3fugeopqgyj8rk   23h       2019-01-15T09:22:48-05:00   authentication,signing   The default bootstrap token generated by 'kubeadm init'.   system:bootstrappers:kubeadm:default-node-token
加入节点
kubeadm join --discovery-token km7adp.vu3fugeopqgyj8rk --discovery-token-ca-cert-hash sha256:4e05312726ad565688309951d6c8afb2965e1ce80f736d0123b4363581fcb106 192.168.239.200:6443
在master上查看状态
kubectl get nodes
NAME     STATUS   ROLES    AGE   VERSION
master   Ready    master   92m   v1.13.2
node1    Ready    <none>   41m   v1.13.2
kubectl get pods --all-namespaces -o wide
NAMESPACE     NAME                             READY   STATUS    RESTARTS   AGE   IP                NODE     NOMINATED NODE   READINESS GATES
kube-system   coredns-86c58d9df4-2nhd5         1/1     Running   0          84m   10.244.1.2        node1    <none>           <none>
kube-system   coredns-86c58d9df4-l2wt9         1/1     Running   0          84m   10.244.1.3        node1    <none>           <none>
kube-system   etcd-master                      1/1     Running   0          83m   192.168.239.200   master   <none>           <none>
kube-system   kube-apiserver-master            1/1     Running   0          83m   192.168.239.200   master   <none>           <none>
kube-system   kube-controller-manager-master   1/1     Running   0          83m   192.168.239.200   master   <none>           <none>
kube-system   kube-flannel-ds-amd64-786l8      1/1     Running   0          16m   192.168.239.200   master   <none>           <none>
kube-system   kube-flannel-ds-amd64-pc4fp      1/1     Running   0          16m   192.168.239.201   node1    <none>           <none>
kube-system   kube-proxy-fqjvp                 1/1     Running   0          84m   192.168.239.200   master   <none>           <none>
kube-system   kube-proxy-skndl                 1/1     Running   0          33m   192.168.239.201   node1    <none>           <none>
kube-system   kube-scheduler-master            1/1     Running   0          83m   192.168.239.200   master   <none>           <none>
参考文档
- http://blog.51cto.com/lullaby/2150610?utm_source=oschina-app
- https://my.oschina.net/u/2601623/blog/1634641
- https://kubernetes.io/docs/setup/independent/install-kubeadm/
kubeadm安装kubernetes-v1.13.1的更多相关文章
- Centos7 使用 kubeadm 安装Kubernetes 1.13.3
		目录 目录 什么是Kubeadm? 什么是容器存储接口(CSI)? 什么是CoreDNS? 1.环境准备 1.1.网络配置 1.2.更改 hostname 1.3.配置 SSH 免密码登录登录 1.4 ... 
- 使用 kubeadm 安装 kubernetes v1.16.0
		近日通过kubeadm 安装 kubernetes v1.16.0,踩过不少坑,现记录下安装过程. 安装环境: 系 统:CentOS Linux release 7.6 Docke ... 
- kubeadm安装kubernetes V1.11.1 集群
		之前测试了离线环境下使用二进制方法安装配置Kubernetes集群的方法,安装的过程中听说 kubeadm 安装配置集群更加方便,因此试着折腾了一下.安装过程中,也有一些坑,相对来说操作上要比二进制方 ... 
- 使用kubeadm安装kubernetes v1.14.1
		使用kubeadm安装kubernetes v1.14.1 一.环境准备 操作系统:Centos 7.5  ⼀ 一台或多台运⾏行行着下列列系统的机器器:  Ubuntu 16.04+  Debi ... 
- [转] CentOS7 用 kubeadm 快速安装 Kubernetes v1.13.4 最新教程
		[转 + 编辑][From] https://www.jianshu.com/p/4d61f18bc62d , https://www.jianshu.com/p/5ff6e26d1912 时间是2 ... 
- kubeadm安装kubernetes 1.13.1集群完整部署记录
		k8s是什么 Kubernetes简称为k8s,它是 Google 开源的容器集群管理系统.在 Docker 技术的基础上,为容器化的应用提供部署运行.资源调度.服务发现和动态伸缩等一系列完整功能,提 ... 
- 使用kubeadm安装Kubernetes v1.10
		关于K8S: Kubernetes是Google开源的容器集群管理系统.它构建于docker技术之上,为容器化的应用提供资源调度.部署运行.服务发现.扩 容缩容等整一套功能,本质上可看作是基于容器技术 ... 
- 使用kubeadm部署Kubernetes v1.13.3
		kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具. 这个工具能通过两条指令完成一个kubernetes集群的部署: 1. 安装要求 在开始之前,部署Kubernetes集群 ... 
- kubeadm安装Kubernetes V1.10集群详细文档
		https://www.kubernetes.org.cn/3808.html?tdsourcetag=s_pcqq_aiomsg 1:服务器信息以及节点介绍 系统信息:centos1708 mini ... 
- K8S学习笔记之二进制部署Kubernetes v1.13.4 高可用集群
		0x00 概述 本次采用二进制文件方式部署,本文过程写成了更详细更多可选方案的ansible部署方案 https://github.com/zhangguanzhang/Kubernetes-ansi ... 
随机推荐
- MAVEN简介之——pom.xml
			maven构建的生命周期 maven是围绕着构建生命周期这个核心概念为基础的.maven里有3个内嵌的构建生命周期,default,clean和site. default是处理你项目部署的:clean ... 
- Excel控制AutoCad进行坐标标注
			做过工程测绘,平面设计,使用过Autocad制图的朋友们,都经常要在CAD上标注点或者线的坐标,CAD自身的标注功能,并不能同时标注X和Y坐标,,要同时标注X和Y坐标,可以使用南方CASS软件,或者一 ... 
- 博客系统(cnblog)
			1.用户表:Userinfo 2.博客站点表:Blog 3.标签表:Tag 4.分类表:Category 5.文章表:Article 6.点赞踩表:ArticelUpDown 7.评论表:Commen ... 
- [NOIP2017赛前复习第二期]复赛考试技巧与模版-普及组
			考试技巧 1.拿到考卷首先通看题目,按自己感觉的难度排序(普及一般是1-2-3-4了~还是相信出题人不会坑我们的2333) 2.一般来说,普及组前两道题比较简单(大水题啊233~),但是通常坑很多,例 ... 
- python-列表与元组
			列表(List) 特性: 列表也是一种Sequence 类型 下标 能切片 可以存储任何类型的数据,每个元素是任意类型,可以存放任 ... 
- 原生JS实现表单序列化serialize()
			有一个form表单,要用AJAX后台提交,原来想拼接json,但是数据多了麻烦,不灵活. 用HTML5的FormData来初始化表单 var formdata=new FormData(documen ... 
- CCF CSP 201712-1 最小差值
			题目链接:http://118.190.20.162/view.page?gpid=T68 问题描述 试题编号: 201712-1 试题名称: 最小差值 时间限制: 1.0s 内存限制: 256.0M ... 
- iOS绘制坐标图,折线图-Swift
			坐标图,经常会在各种各样的App中使用,最常用的一种坐标图就是折线图,根据给定的点绘制出对应的坐标图是最基本的需求.由于本人的项目需要使用折线图,第一反应就是搜索已经存在的解决方案,因为这种需求应该很 ... 
- 复旦大学2017--2018学年第二学期高等代数II期末考试情况分析
			一.期末考试成绩班级前十名 张菲诺(95).刘宇其(95).魏一鸣(93).郭宇城(92).程梓兼(91).葛珈玮(90).汪子怡(90).余张伟(90).张昰昊(89).朱柏青(89) 二.总成绩计 ... 
- python 之生成器的介绍
			# 用生成器(generators)方便地写惰性运算 def double_numbers(iterable): for i in iterable: yield i + i # 生成器只有在需要时才 ... 
