CentOS76 安装k8s1.18的简单步骤
1. 前提条件就不再详细描写了:
关闭防火墙
升级内核到至少4.
关闭swap
关闭selinux 等
2. 本次安装采用酸酸乳和privoxy的方式进行, 不过发现部分rpm 包还是特别慢,没办法用vps从境外下载rpm包进行安装.
酸酸乳的方式不在描述
我这边是买了一个 某商的月5.88刀的service
设置到CentOS的服务器上面
然后设置privoxy
设置 proxy
我还有有一个年费49刀的vps
(自费 !-_-!)
3. 发现docker iamges 可以pull 但是 rpm包 下载实在是非常非常的缓慢, 没办法 改用某商vps下载rpm包
在 vps 上面上 首先创建 rpm 源
vim /etc/yum.repos.d/kubernetes.repo 添加内容 [kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=
gpgcheck=
repo_gpgcheck=
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
下载最新的rpm包
yumdownloader kubelet-1.18.- kubectl-1.18.- kubeadm-1.18. --disableexcludes=kubernetes
将下载好的文件放到 安装好 酸酸乳的centos服务器上面
4. centos 上面安装这三个包
yum localinstall *.rpm
5. kubeadm 进行初始化
kubeadm init --pod-network-cidr=10.244.0.0/ 注意如果之前有 kubeadm的集群的化 需要先执行
kubeadm reset
等待教程时间就可以完成操作了 注意 这个时候需要能连网下载部分images才可以
注意设置好了之后需要进行一下 配置文件更新
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
这样就可以直接执行命令
kubectl get nodes
注意单节点测试服务时需要将master节点设置能够部署pod
kubectl taint nodes --all node-role.kubernetes.io/master-
不然无法使用.
另外部署calico 时 要保证 80端口不被占用
lsof -i:80
如果端口被占用 会造成 pod无法正常开启.
6. 安装calico
一般说 flannel的性能不如calico 所以这次实验改用 calico
建议还是在能上外网的情况下进行 获取配置文件
mkdir /root/calico
wget -c https://docs.projectcalico.org/v3.8/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml
下载完成之后执行命令
kubectl apply -f calico.yaml
7. 安装ingress-nginx
mkdir /root/ingress-nginx
wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml 修改一下配置文件 在 image 上一层的配置文件加上
hostNetwork: true
使之能够提供服务
注意层级与containers 这一层相同
spec:
# wait up to five minutes for the drain of connections
terminationGracePeriodSeconds:
serviceAccountName: nginx-ingress-serviceaccount
hostNetwork: true
nodeSelector:
kubernetes.io/os: linux
containers:
- name: nginx-ingress-controller
image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.30.0 然后一样的执行一下 kubectl apply -f manadatory.yaml 即可
8. 重启一下服务器进行验证
我这边的效果为
[root@k8s143 ingress-nginx]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s143 Ready master 51m v1.18.0
[root@k8s143 ingress-nginx]# kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
ingress-nginx nginx-ingress-controller-77db54fc46-cfnsl / Running 34m
kube-system calico-kube-controllers-77c5fc8d7f-pwk68 / Running 26m
kube-system calico-node-lsqg2 / Running 26m
kube-system coredns-66bff467f8-gv4m7 / Running 51m
kube-system coredns-66bff467f8-hnrxb / Running 51m
kube-system etcd-k8s143 / Running 51m
kube-system kube-apiserver-k8s143 / Running 51m
kube-system kube-controller-manager-k8s143 / Running 51m
kube-system kube-proxy-hx74q / Running 51m
kube-system kube-scheduler-k8s143 / Running 51m
[root@k8s143 ingress-nginx]#
9. 下载好的 images和rpm包如下
REPOSITORY TAG IMAGE ID CREATED SIZE
calico/node v3.8.8- 3610c051aa19 days ago 192MB
calico/cni v3.8.8- ca2a236d9210 days ago 161MB
calico/kube-controllers v3.8.8 7125b7d47e9f days ago .9MB
k8s.gcr.io/kube-proxy v1.18.0 43940c34f24f days ago 117MB
k8s.gcr.io/kube-controller-manager v1.18.0 d3e55153f52f days ago 162MB
k8s.gcr.io/kube-apiserver v1.18.0 74060cea7f70 days ago 173MB
k8s.gcr.io/kube-scheduler v1.18.0 a31f78c7c8ce days ago .3MB
calico/pod2daemon-flexvol v3.8.8 cacd6d732f12 weeks ago .38MB
quay.io/kubernetes-ingress-controller/nginx-ingress-controller 0.30. 89ccad40ce8e weeks ago 323MB
k8s.gcr.io/pause 3.2 80d28bedfe5d weeks ago 683kB
k8s.gcr.io/coredns 1.6. 67da37a9a360 months ago .8MB
sapcc/tiller v2.15.2 9bdad03644c7 months ago .1MB
k8s.gcr.io/etcd 3.4.- 303ce5db0e90 months ago 288MB
需要的rpm包为
-rw-r--r-- root root Apr : 2d6ec4ae24a355c5818174f39e212f116cbd796cabcc113a68fc613d3d1fe147-kubeadm-1.18.-.x86_64.rpm
-rw-r--r-- root root Apr : 3d1298e3f34961565204febc5da169d1ac3673b7eb772a7bc19c2b310526b0e8-kubelet-1.18.-.x86_64.rpm
-rw-r--r-- root root Apr : cf6754a3497c5c05de050f2409eb3b2854467967cf359a8ed9c6e6c32808c7de-kubectl-1.18.-.x86_64.rpm
CentOS76 安装k8s1.18的简单步骤的更多相关文章
- Flume1.9.0的安装、部署、简单应用(含分布式、与Hadoop3.1.2、Hbase1.4.9的案例)
目录 目录 前言 什么是Flume? Flume的特点 Flume的可靠性 Flume的可恢复性 Flume的一些核心概念 Flume的官方网站在哪里? Flume在哪里下载以及如何安装? 设置环境变 ...
- VMware 安装CentOS 6.5图文步骤 以及安装后无法联网的解决办法
一.VMwareWorkstation10 中安装Centos6.5(64位)步骤: 首先下载vmware 和centos6.5 1. 打开VMware-workstation点击“新建虚拟机”,到向 ...
- dell 7559 安装Manjaro 18
本来是装黑苹果的,折腾好几天都装好了,是可以正常使用的,可是clover始终有一个问题,每次启动前需要覆盖一遍EFI分区内EFI目录的CLOVER目录内的所有文件,方能引导MAC. 不然就卡Init ...
- linux下vsftpd的安装及配置使用详细步骤(推荐)
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...
- eclipse安装Axis2插件和简单的webservice发布
2019独角兽企业重金招聘Python工程师标准>>> Axis2与CXF是现在很主流的WebService开发框架(java6也已经支持了),项目上还都是基本上用前两种做开发,今天 ...
- Nodejs学习笔记(1) Nodejs安装+借助express模块简单部署服务器
1 安装 1.1 下载和安装 1.2 什么是REPL?如何使用? 1.3 npm对单一模块的安装和删除功能 1.4 通过package.json自定义模块(安装模块) 1.5 设置全局目录 2 部署网 ...
- 使用autotools工具用configure、make、make install编译安装linux工程的详细步骤
使用autotools工具用configure.make.make install编译安装linux工程的详细步骤 转载tmxkwzy 最后发布于2016-11-24 10:20:15 阅读数 324 ...
- kubespray-2.14.2安装kubernetes-1.18.10(ubuntu-20.04.1)
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- VirtualBox安装Debian6的方法和步骤(详细)
下面是用VirtualBox安装Debian6的方法和步骤 l 新建一个文件夹,用于存放虚拟硬盘,如Debian l 打开VirtualBox,点击新建 l 输入虚拟机名称,Debian_6 l 给虚 ...
随机推荐
- LeetCode--二叉树1--树的遍历
LeetCode--二叉树1--树的遍历 一 深度遍历 深度遍历里面由 三种遍历方式,两种实现方法.都要熟练掌握. 值得注意的是,当你删除树中的节点时,删除过程将按照后序遍历的顺序进行. 也就是说,当 ...
- mongoDb性能提升
最近在弄MongoDB的时候 发现只按照官网的方式进行操作的话,性能不行,想着用单例模式封装一下,提升一下性能,代码如下: //引入mongodb相关的模块 const MongoClient = r ...
- Asp.Net Core EndPoint 终点路由工作原理解读
一.背景 在本打算写一篇关于Identityserver4 的文章时候,确发现自己对EndPoint -终结点路由还不是很了解,故暂时先放弃了IdentityServer4 的研究和编写:所以才产生了 ...
- 【Amaple教程】6. 路由配置
在 第1节<启动路由> 章节中为了能让单页应用顺利跑起来,我们提前介绍了简单的路由配置方法.我们已了解路由配置的目的是指定不同的url下对应的 模块节点(也叫做模块容器)内应该显示哪个模块 ...
- 前端每日实战:70# 视频演示如何用纯 CSS 创作一只徘徊的果冻怪兽
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/VdOKQG 可交互视频 此视频是可 ...
- DUBBO 面试灵魂18问
一.Dubbo 是什么 dubbo 是一个分布式框架,是一个远程服务调用的分布式框架,其核心部分包含: 1)集群容错: 提供基于接口方法的透明远程过程调用,包含多协议支持,以及软负债均衡.失败容错.地 ...
- JAVA有关位运算的全套梳理
一.在计算机中数据是如何进行计算的? 1.1:java中的byte型数据取值范围 我们最开始学习java的时候知道,byte类型的数据占了8个bit位,每个位上或0或1,左边第一位表示符号位,符号位如 ...
- 移动webApp必备技能一、WebApp 里Meta标签大全,webappmeta标签大全
1.先说说mate标签里的viewport: viewport即可视区域,对于桌面浏览器而言,viewport指的就是除去所有工具栏.状态栏.滚动条等等之后用于看网页的区域.对于传统WEB页面来说,9 ...
- es6的解构函数
话说,解构无处不在啊,鄙人自从用了vue写项目以来,总是遇到各路大神莫名其妙的写法,然并未出任何错,查之,然解构也,呜呼哀哉,进而习之. 解构(Destructuring):是将一个数据结构分解为更小 ...
- 编写程序实现根据考试成绩将成绩分为A,B,C,D四档。
score = float(input("请输入你的成绩:"))if 90 <= score <= 100: print("你的成绩为A档")eli ...