在阿里云上单机部署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台是禁用了虚拟内存 ...
随机推荐
- Duilib的双缓冲实现,附带GDI、WTL的双缓冲实现
前言: 闪烁问题,之前的经验是使用双缓冲,借此机会,把双缓冲的研究心得总结下. 双缓冲的含义: 缓冲这个词,相信大家都不陌生,Cache.主要是为了解决上下游(或者模块.或者系统)等性能不匹配问题.如 ...
- excel自动记录项目完成进度,是否逾期,逾期/提前完成天数,计算天数可以把now()改为today()
=IF(D38="",NOW()-C38,F38) 注:如果没有启用迭代计算,可以点击"文件"-"选项"-"公式"-&q ...
- centos安装配置和使用 Nexus
Nexus安装配置和使用 第一步安装jdk yum install java-1.8.0-openjdk-devel 第二步下载nexus-3.12.1-01-unix.tar.gzjdk 下载地址: ...
- WebService:CXF的JaxWsDynamicClientFactory实现调用WebService接口
首先需要引入依赖jar包 #版本只供参考,具体看项目 <dependency> <grouId>org.apache.cxf</grouId> <artifa ...
- Docker:Linux离线安装docker-17.03.2-ce,配置开机自启
1. 准备docker离线包 docker官方离线包下载地址 下载需要安装的docker版本,我此次下载的是:docker-17.03.2-ce.tgz 2. 准备docker.service 系统配 ...
- 基于Vue/React项目的移动端适配方案
本文的目标是通过下文介绍的适配方案,使用vue或react开发移动端及H5的时候,不需要再关心移动设备的大小,只需要按照固定设计稿的px值布局,提升开发效率. 下文给出了本人分别使用create-re ...
- ios关键字
self:类似JAVA中的this指针,是隐藏参数,指向当前调用方法的类 super:调用父类的方法 if(self=[super init]),是一种通用写法,赋值并测零是为了防止超类在初始化过程中 ...
- flask的常规使用二
一.路由(router) 路由指定了url 到函数之间的一个映射关系. url ---> flask框架拿到url 的路径部分和路由中的内容进行匹配,如果匹配成功了则执行对应的函数.如果没有找到 ...
- sql通用行列转换
-- 行转列 select 姓名, SUM(case 课程 when '语文' then 分数 else 0 end) as 语文, SUM(case 课程 when '数学' then 分数 els ...
- 深入浅出 Jest 框架的实现原理
English Version | 中文版 深入浅出 Jest 框架的实现原理 https://github.com/Wscats/jest-tutorial 什么是 Jest Jest 是 Face ...