在阿里云上单机部署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台是禁用了虚拟内存 ...
随机推荐
- mysql字符集utf8和utf8mb4区别
1.起因 公司游戏项目上线第一天,出现单个区服异常宕机的问题,根据日志排查下来,连接数据的时候报错,后面排查是因为有玩家插入Emoji 等表情导致无法存储如数据库,数据库字符集编码为utf8,后续改成 ...
- vue 快速入门 系列 —— vue loader 下
其他章节请看: vue 快速入门 系列 vue loader 下 CSS Modules CSS Modules 是一个流行的,用于模块化和组合 CSS 的系统.vue-loader 提供了与 CSS ...
- 使用CI/CD工具Github Action发布jar到Maven中央仓库
之前发布开源项目Payment Spring Boot到Maven中央仓库我都是手动执行mvn deploy,在CI/CD大行其道的今天使用这种方式有点"原始".于是我一直在寻求一 ...
- POJ 1410 判断线段与矩形交点或在矩形内
这个题目要注意的是:给出的矩形坐标不一定是按照左上,右下这个顺序的 #include <iostream> #include <cstdio> #include <cst ...
- AvtiveMQ与SpringBoot结合
首先来了解下ActivieMQ的应用场景,消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题.实现高性能,高可用,可伸缩和最终一致性架构是大型分布式系统不可缺少的中间件 ...
- Linux基础 -03
2.2.3 head-tail 命令 #------head #head pass #查看头部内容,默认前10行 #head -n5 pass #查看头部前5行,使用-n指定 #-------tail ...
- PostgreSQL角色问题
角色 PostgreSQL使用角色的概念管理数据库访问权限. 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组数据库用户. 角色可以拥有数据库对象(比如表)以及可以把这些对象上的权限 ...
- Python装饰器-给你的咖啡加点料
今天你的咖啡加糖了吗? 让我们通过一个简单的例子来引出装饰器的概念及用法.在引出装饰器之前,我们先来了解一下函数的概念. 一.函数回顾 1.在python中函数是一等公民,函数也是对象.我们可以把函数 ...
- JavaScript编写计算器的发展史
JavaScript编写计算器的发展史: 编写一个普通的四则运算: <!DOCTYPE html> <html lang="en"> <head> ...
- postgresql安装及配置
目录 1. 安装 2. PostgrepSQL的简单配置 2.1 修改监听的ip和端口 2.2 修改数据库log相关的参数 2.3 内存参数 3. 数据库的基础操作 3.1 连接数据库控制台 3.2 ...