在阿里云上单机部署k8s1.18
系统:CentOS Linux release 8.1.1911
配置主机名
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# hostnamectl set-hostname lan
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# cat /etc/hosts
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
172.18.129.68 lan
关闭swap,我这台阿里云主机么有配置swap空间所以不需要改,步骤我也写一下吧
swapoff -a # 临时关闭swap
[root@k8s-master ~]# cat /etc/fstab # 修改fstab可永久关闭swap
#
# /etc/fstab
# Created by anaconda on Wed May 6 09:09:02 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=a69f20da-ece1-433f-9413-88212ae46a67 /boot xfs defaults 0 0
#/dev/mapper/centos-swap swap swap defaults 0 0
配置内核参数,将桥接流量传递到iptables的链
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# cat > /etc/sysctl.d/k8s.conf <<EOF
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# sysctl --system
安装开发者工具包
yum install -y yum-utils device-mapper-persistent-data lvm2
添加docker的yum源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docker-ce
$ sudo yum makecache fast
$ sudo yum install docker-ce
node: 如果出现以下报错
Error:
Problem: package docker-ce-3:19.03.8-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed
- cannot install the best candidate for the job
- package containerd.io-1.2.10-3.2.el7.x86_64 is excluded
- package containerd.io-1.2.13-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.2-3.3.el7.x86_64 is excluded
- package containerd.io-1.2.2-3.el7.x86_64 is excluded
- package containerd.io-1.2.4-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.5-3.1.el7.x86_64 is excluded
- package containerd.io-1.2.6-3.3.el7.x86_64 is excluded
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
需要手动安装containerd.io
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# wget https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# yum install containerd.io-1.2.6-3.3.el7.x86_64.rpm
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# yum -y install docker-ce
配置docker镜像加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://zggyaen3.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
安装kubectl, kubelet, kubeadm
添加阿里k8s源
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# cat <<EOF > /etc/yum.repos.d/kubernetes.repo
> [kubernetes]
> name=Kubernetes
> baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
> enabled=1
> gpgcheck=1
> repo_gpgcheck=1
> gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
> EOF
安装
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# yum install kubectl kubelet kubeadm
[root@iZwz9e3t4tj14jzewdtvj8Z ~]# systemctl enable kubelet
初始化集群
[root@lan ~]# kubeadm init --kubernetes-version=1.18.0 \
--apiserver-advertise-address=192.168.22.12 \
--image-repository registry.aliyuncs.com/google_containers \
--service-cidr=10.11.0.0/16 --pod-network-cidr=10.1.0.0/16
根据记录生成的最后部分内容,创建kubectl
[root@lan ~]# mkdir -p $HOME/.kube
[root@lan ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[root@lan ~]# chown $(id -u):$(id -g) $HOME/.kube/config
[root@lan ~]# source <(kubectl completion bash)
[root@lan ~]# kubectl get node
NAME STATUS ROLES AGE VERSION
lan NotReady master 50s v1.18.2
查看pod
[root@lan ~]# kubectl get pod --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-6fcbbfb6fb-56cpv 0/1 Pending 0 15s
kube-system calico-node-x9wqb 0/1 Init:0/3 0 15s
kube-system coredns-7ff77c879f-6jdsj 0/1 Pending 0 73s
kube-system coredns-7ff77c879f-kqpzb 0/1 Pending 0 73s
kube-system etcd-lan 1/1 Running 0 84s
kube-system kube-apiserver-lan 1/1 Running 0 84s
kube-system kube-controller-manager-lan 1/1 Running 0 84s
kube-system kube-proxy-mcrmm 1/1 Running 0 73s
kube-system kube-scheduler-lan 1/1 Running 0 84s
node节点为NotReady,因为corednspod没有启动,缺少网络pod
安装calico网络
[root@lan ~]# kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
[root@lan ~]# kubectl get pod --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-6fcbbfb6fb-56cpv 1/1 Running 0 22m
kube-system calico-node-x9wqb 1/1 Running 0 22m
kube-system coredns-7ff77c879f-6jdsj 1/1 Running 0 23m
kube-system coredns-7ff77c879f-kqpzb 1/1 Running 0 23m
kube-system etcd-lan 1/1 Running 0 23m
kube-system kube-apiserver-lan 1/1 Running 0 23m
kube-system kube-controller-manager-lan 1/1 Running 0 23m
kube-system kube-proxy-mcrmm 1/1 Running 0 23m
kube-system kube-scheduler-lan 1/1 Running 0 23m
清除污点
kubectl taint node --all node-role.kubernetes.io/master-
原文链接: https://www.cnblogs.com/sonyy/p/13156439.html
在阿里云上单机部署k8s1.18的更多相关文章
- 在阿里云上单机部署k8s
系统:CentOS Linux release 8.1.1911 配置主机名 [root@iZwz9e3t4tj14jzewdtvj8Z ~]# hostnamectl set-hostname la ...
- 阿里云上docker部署nginx实现反向代理
简介 需要从镜像仓库找到所需要的nginx版本pull下来.(地址:https://hub.docker.com/) 1.docker pull nginx 1.挂载目录 1.1 获取nginx. ...
- python web开发c6——阿里云上ubuntu+flask+gunicorn+nginx服务器部署(一)简单测试
简述 Nginx在服务器部署中的作用 请求通过Nginx实现反向代理,将请求提交给代理服务器.本文中只用了一台服务器,所以是代理到本机. gunicorn的作用 作为服务器代码的容器.接收Nginx的 ...
- 阿里云上部署了zabbix,突然无法收到报警邮件的解决办法
在阿里云上部署了zabbix,一直能正常接收到zbx发来的报警邮件(报警邮箱是163的),不知是什么原因,突然无法接收到报警邮件了. 但在服务器上手动执行echo "hello"| ...
- 如何在阿里云上部署war包到tomcat服务器
一. 准备工作:xshell和xftp 首先我们得确保,xshell能够远程连接阿里云ECS,xftp能够保证windows和linux之间的文件传输(当然也可以选择FileZilla,但xftp感觉 ...
- 从运维的角度分析使用阿里云数据库RDS的必要性--你不应该在阿里云上使用自建的MySQL/SQL Server/Oracle/PostgreSQL数据库
开宗明义,你不应该在阿里云上使用自建的MySQL or SQL Server数据库,对了,还有Oracle or PostgreSQL数据库. 云数据库 RDS(Relational Database ...
- 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建
准备: 两台配置CentOS 7.3的阿里云ECS服务器: hadoop-2.7.3.tar.gz安装包: jdk-8u77-linux-x64.tar.gz安装包: hostname及IP的配置: ...
- 云计算之路-阿里云上:从ASP.NET线程角度对“黑色30秒”问题的全新分析
在这篇博文中,我们抛开对阿里云的怀疑,完全从ASP.NET的角度进行分析,看能不能找到针对问题现象的更合理的解释. “黑色30秒”问题现象的主要特征是:排队的请求(Requests Queued)突增 ...
- 云计算之路-阿里云上:Web服务器遭遇奇怪的“黑色30秒”问题
今天下午访问高峰的时候,主站的Web服务器出现奇怪的问题,开始是2台8核8G的云服务器(ECS),后来又加了1台8核8G的云服务器,问题依旧. 而且3台服务器特地使用了不同的配置:1台是禁用了虚拟内存 ...
随机推荐
- Linux常用命令详解下
Linux常用命令详解 目录 一.Linux常用命令 1.1.查看及切换目录(pwd.cd.ls.du) 1.2.创建目录和文件(mkdir.touch.ln) 1.3.复制.删除.移动目录和文件(c ...
- python使用venv
venv模块支持使用自己的站点目录创建轻量级"虚拟环境",可选择与系统站点目录隔离.每个虚拟环境都有自己的Python二进制文件(与用于创建此环境的二进制文件的版本相匹配),并且可 ...
- 4、saltstack的使用
官方文档地址:http://repo.saltstack.com/#rhel 4.1.saltstatck介绍: 用户要一致,这里使用的是root用户: 用于批量管理成百上千的服务器: 并行的分发,使 ...
- 15、oracle多表查询
15.0.实验建表: --父表 create table class( id number(10)constraint class_id_pk primary key, class_name varc ...
- SpringBoot:SpringCloud与SpringBoot兼容版本参(其它组件兼容情况)
SpringCloud --- Springboot 版本兼容 SpringCloud SpringBoot Edgware.SR5 >=1.5.0.RELEASE and <=1.5.2 ...
- gitlab hostname修改
cd /var/opt/gitlab/gitlab-rails/etc vim gitlab.yml /home/git/gitlab/config/gitlab.yml production: &a ...
- 19 shell代码块重定向
代码块是由多条语句组成的一个整体,for.while.until循环或者if-else.case-in选择结构,或者由{ }包围起来的命令都可以称为代码块. 将重定向命令放在代码块的结尾处,就可以对代 ...
- PE文件头格式解析
前言: 昨天写了一题de1ctf的题,发现要脱壳,手脱之后发现要iat修复,我就发现自己在这块知识缺失了,win逆向,好像一直都是打ctf,然后用逆向方法论去肝的 其他方面倒是没有很深入学习,但实际上 ...
- 流媒体传输协议(rtp/rtcp/rtsp/rtmp/mms/hls)转
常用的流媒体协议主要有HTTP渐进下载和基于RTSP/RTP的实时流媒体协议两类.在流式传输的实现方案中,一般采用HTTP/TCP来传输控制信息,而用RTP/UDP来传输实时多媒体数据. 1 实时传输 ...
- 写了这么多年 CSS,initial 和 inherit 以及 unset 和 revert 还傻傻分不清楚?
经常会碰到,问一个 CSS 属性,例如 position 有多少取值. 通常的回答是 static.relative.absolute 和 fixed .当然,还有一个稍微生僻的 sticky .其实 ...