kubeadm搭建k8s集群

本文为博客 VIP 文章,开通 VIP 后可阅读全文

开通 VIP

一、初始化k8s实验环境

K8s集群角色 IP地址 主机名 安装的组件
控制节点 192.168.88.180 k8s-master1 kube-apiserver、kube-controller-manager、kube-scheduler、docker、etcd、calico
工作节点 192.168.88.181 k8s-node1 kubelet、kube-proxy、docker、calico、coreDNS
工作节点 192.168.88.182 k8s-node2 kubelet、kube-proxy、docker、calico、coreDNS

1、kubeadm和二进制安装k8s适用场景分析

kubeadm是官方提供的开源工具,用于快速搭建kubernetes集群,目前比较方便和推荐使用的。

kubeadmi int 以及 kubeadm join 这两个命令可以快速创建 kubernetes集群。kubeadm 初始化 k8s,所有的组件都是以pod形式运行的,具备故障自恢复能力。

kubeadm 是工具,可以快速搭建集群,也就是相当于程序脚本自动部署,简化操作。证书、组件资源清单文件都是自动创建的,屏蔽了很多细节,使得对各个模块感知很少。

kubeadm适合经常部署k8s集群的场景,或对自动化要求比较高的场景。

二进制:在官网下载相关组件的二进制包,如果手动安装,对k8s理解更加清楚,对集群组件的安装部署更加了解。

kubeadm和二进制都适合生产环境,在生产环境运行很稳定,具体根据实际项目评估。

2、创建虚拟机,修改IP

如下所示修改网卡信息,下面是控制节点的配置信息,工作节点仅IP地址不同。

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=92c69021-2981-4c15-8c9a-2d1efb6bb011
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.88.180
NETMASK=255.255.255.0
GATEWAY=192.168.88.2
DNS=114.114.114.114

# 重启网络
[root@localhost ~]# systemctl restart network

3、配置主机名和hosts文件

配置机器主机名:

# 在192.168.88.180上执行
[root@localhost ~]# hostnamectl set-hostname k8s-master1 && bash
# 在192.168.88.181上执行
[root@localhost ~]# hostnamectl set-hostname k8s-node1 && bash
# 在192.168.88.182上执行
[root@localhost ~]# hostnamectl set-hostname k8s-node2 && bash

配置主机hosts文件,相互间通过主机名访问:

echo '''192.168.88.180 k8s-master1 
192.168.88.181 k8s-node1
192.168.88.182 k8s-node2''' >> /etc/hosts

4、配置主机间免密登录

# 1、三台机器都生成ssh密钥,一路回车
[root@k8s-master1 ~]# ssh-keygen
[root@k8s-node1 ~]# ssh-keygen
[root@k8s-node2 ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:56kFtc+z1a7/cWTg9Hlh7xLcf8PHLh/LSQF113kK8os root@k8s-master1
The keys randomart image is:
+---[RSA 2048]----+
|               .=|
|          . . ..=|
|          .o oo+.|
|         . ..++++|
|        S o. .+oB|
|         +E+. .B+|
|          + + o*O|
|         o   +++X|
|        .   . .OB|
+----[SHA256]-----+

# 三台机器都执行将公钥拷贝到其他机器
[root@k8s-master1 ~]# ssh-copy-id k8s-master1
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host 'k8s-master1 (192.168.88.180)' can't be established.
ECDSA key fingerprint is SHA256:u7nlxwc8AwCbT5fFs2kWLcQQJpZ4cTlLBhl8qWRZtis.
ECDSA key fingerprint is MD5:80:39:be:e6:78:40:82:6b:30:de:69:74:64:11:a0:7d.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@k8s-master1's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'k8s-master1'"
and check to make sure that only the key(s) you wanted were added.

[root@k8s-master1 ~]# ssh-copy-id k8s-node1
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host 'k8s-node1 (192.168.88.181)' can't be established.
ECDSA key fingerprint is SHA256:u7nlxwc8AwCbT5fFs2kWLcQQJpZ4cTlLBhl8qWRZtis.
ECDSA key fingerprint is MD5:80:39:be:e6:78:40:82:6b:30:de:69:74:64:11:a0:7d.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@k8s-node1's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'k8s-node1'"
and check to make sure that only the key(s) you wanted were added.

[root@k8s-master1 ~]# ssh-copy-id k8s-node2
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host 'k8s-node2 (192.168.88.182)' can't be established.
ECDSA key fingerprint is SHA256:u7nlxwc8AwCbT5fFs2kWLcQQJpZ4cTlLBhl8qWRZtis.
ECDSA key fingerprint is MD5:80:39:be:e6:78:40:82:6b:30:de:69:74:64:11:a0:7d.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@k8s-node2's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'k8s-node2'"
and check to make sure that only the key(s) you wanted were added.

5、关闭交换分区

SWAP是交换分区,如果机器内存不够,会使用swaq分区,但是swap分区的性能较低,k8s设计时为了提升性能,默认不允许使用交换分区。

kubeadm初始化的时候会监测swap是否关闭,若没有关闭,则初始化失败。如不想关闭交换分区,安装k8s的时候可以指定————ignore-preflight-error=Swap 来解决。

# 临时关闭交换分区
[root@k8s-master1 ~]# swapoff -a
[root@k8s-node1 ~]# swapoff -a
[root@k8s-node2 ~]# swapoff -a
[root@k8s-master1 ~]# free -m
              total        used   
利用kubeadm搭建测试kubernetes集群 使用工具     https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/ kubeadm简介:     kubeadmkubernetes自带的快速搭建kubernetes集群的工具,方便快捷,并且很好的支持自定义搭建。它在开源社区还是很有活力的,虽然目前kubeadm目前还不能用于生产环境,但是伴随着kub... 阅读详情

相关推荐

K8S集群kubeadm搭建(多master单node)

架构图: k8s环境规划: podSubnet(pod网段) 10.244.0.0/16 serviceSubnet(serivce网段) 10.10.0.0/16 实验环境规划: 操作系统: Centos7.9 配置: 2G内存/4vCPU/40G磁盘 网络:NAT模式 开启虚拟机的虚拟化 集群ip以及常见的需要安装的组件 常见的两种安装方式: kubeadm以及二进制安装 目前是按照kubeadm安装#修改/etc/sysconfig/network-scrips/ifcfg-ens33文件

Aaron.无剑 2495

Python+Vue计算机毕业设计个人博客22zq6(源码+程序+LW+部署)

Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+Vue+Pychram社区版。2. 前端:vue+css+javascript+jQuery+easyUI+highcharts。2.IDE环境:Python和Python 社区版都可以。Django + Vue +Python+Mysql 等等组成,B/S模式等等。该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。1. 后端:Python、Vue、Django、Mysql。

qha111的博客 92

一种基于机载LiDAR点云电力线自动提取方法

文章目录一、引言二、算法实现2.1实现步骤2.2实现代码 一、引言 二、算法实现 2.1实现步骤 (1)首先采用首先采用高程滤波方法去除地面点和低矮地物点,滤波后的点云数据中除电力线点云外还含部分杆塔点、高植被点和噪声点。 (2)根据点云空间维度特征提取电力线点,使用空间密度聚类的方法实现单根电力线精确分离。 2.2实现代码 在这里插入代码片 ...

dayuhaitang1的博客 5120

K8S集群 (kubeadm搭建方式-单Master-最详细版)

我的开源微服务前后端分离博客项目地址,欢迎各位star 觉得不错关注下博主 博主技术博客地址 欢迎大家进群,一起讨论学习 前言: Kubernetes这个单词来自于希腊语,含义是 舵手 或 领航员; Production-Grade Container Orchestration Automated container deployment, scaling, and management 生产环境级别的容器编排 编排是什么意思? 按照一定的目的依次排列; 调配、安排; Kubernetes,也称为K

bright的博客 2174

kubeadm安装k8s集群详细步骤

k8s安装保姆级教程,不会来锤我

a142151的博客 1183

Kubeadm方式搭建k8s集群全流程

执行kubectl get pod,svc后,有一个端口号,在浏览器输入任意一个node的IP加上这个端口号,能访问nginx说明搭建成功。默认token有效期为24小时,当过期之后,该token就不可用了。②硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多。④部署kubernetes node,将节点加入kubernetes集群中。通过以上命令,部署CNI失败,试了好多次仍然不成功,试试下面这种办法。①master文件中创建文件,将下述内容粘到文件中,然后进行后续安装。

zhangsaho的博客 4493

Kubernetes 系列之 kubeadm 搭建k8s集群

Kubeadm 搭建k8s集群 注意:Kubernetes 系列 所采用的kuberntetes版本都是 1.15+ 1 Master 节点安装 1.1 系统环境配置 1.1.1 设置主机名称 hostnamectl set-hostname kmaster-01 hostnamectl set-hostname knode-01 hostnamectl set-hostname knode-...

csdn_welearn的博客 1588

云原生Kubernetes搭建 k8s 集群(Kubeadm 方式)

kubeadm 方式搭建 k8s 集群,包含详细步骤及解析。

商务合作 | 共同学习 | 携手共进 7万+

搭建k8s集群kubeadm搭建Kubernetes二进制搭建Kubernetes集群

搭建k8s集群kubeadm搭建Kubernetes二进制搭建Kubernetes集群

风水道人 456

云原生-K8s-1】kubeadm搭建k8s集群(一主两从)完整教程及kubernetes简介

Kubernetes(简称:k8s) 是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了资源调度、部署管理、服务发现、扩容缩容、监控,维护等一整套功能。

liu_chen_yang的博客 5758

Kubernetes集群部署,基于kubeadm的快速搭建k8s集群模式。

基于kubeadm的快速搭建k8s集群模式,快速搭建k8s集群,看这一篇就够了。

无求道贾的博客 1700

使用kubeadm方式搭建K8S集群

kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。

weixin_72525373的博客 1006

使用kubeadm搭建高可用的K8s集群

kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。

furenqiang的博客 1075

云原生--KubernetesKubeadm搭建k8s集群

KubeadmKubeadm是一个K8s部署工具,提供kubeadminit和kubeadmjoin,用于快速部署Kubernetes集群。二进制包从github下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群Kubeadm降低部署门槛,但屏蔽了很多细节,遇到问题很难排查。如果想更容易可控,推荐使用二进制包部署Kubernetes集群,虽然手动部署麻烦点,期间可以学习很多工作原理,也利于后期维护。.........

夏颜的博客 944

Kubeadm搭建kubernetesk8s集群

目前生产部署Kubernetes集群主要有两种方式①、KubeadmKubeadm是一个K8s部署工具,提供kubeadminit和kubeadmjoin,用于快速部署Kubernetes集群。②、二进制包从github下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群Kubeadm降低部署门槛,但屏蔽了很多细节,遇到问题很难排查。...

weixin_56270746的博客 700

Kubernetes部署篇】Kubeadm方式搭建K8s集群 1.27.0版本

ctr支持多种容器运行时,包括Docker、containerd、CRI-O等,而crictl只支持CRI(Container Runtime Interface)兼容的容器运行时,如CRI-O、containerd等。5、查看镜像,咱们使用containerd拉取的镜像,使用docker images命令是查看不到镜像的。ctr提供了更多的功能,如镜像管理、网络管理、卷管理等,而crictl只提供了基本的容器管理功能,如容器创建、删除、启动、停止等。

秦子腾 9万+

基于 kubeadm 搭建 k8s 集群

keepalived默认工作在抢占模式下。在抢占模式中,主节点的state设为MASTER,备节点的state设为BACKUP,主节点的优先级要比备节点的优先级要高。两者的state都设为BUAKUP(官网说的),一个节点的优先级要比另一个节点的优先级要高,同时高优先级的节点设置nopreempt参数,该参数表示不抢占vip。这样,当高优先级的节点挂了之后,vip就会漂移到低优先级的节点上,但是当高优先级的节点再次恢复正常后再次起来后不会再抢回vip,因为它加了nopreempt参数。

2302_78308374的博客 1259

云原生kubeadm快速搭建K8s集群Kubernetes1.19.0

Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。 Kubernetes 拥有一个庞大且快速增长的生态,其服务、支持和工具的使用范围相当广泛。 Kubernetes 这个名字源于希腊语,意为“舵手”或“飞行员”。k8s 这个缩写是因为 k 和 s 之间有八个字符的关系。 Google 在 2014 年开源了 Kubernetes 项目。 Kubernetes 建立在Google 大规模运行生产工作负载十几年经验的基础上, 结合了社区中最优秀的想

康师傅没有眼泪 5819

kubernetes 概述和kubeadm方式集群搭建

kubernetes 概述和kubeadm方式集群搭建kubernetes 概述k8s的功能K8S集群架构组件K8S核心概念集群搭建kubeadm 部署方式1.系统初始化master和node1,2安装 Docker/kubeadm/kubelet部署 Kubernetes Master加入 Kubernetes Node安装 Pod 网络插件(CNI)测试 kubernetes 集群 kubernetes 概述 K8S是谷歌在2014年开发的容器集群管理系统 使用K8S进行容器化应用部署 使用K8S有利

weixin_55609829的博客 582

使用xlwings在Python中对Excel表格进行操作是非常方便的,可以实现自动化处理、批量数据处理等功能

使用xlwings在Python中对Excel表格进行操作是非常方便的,可以实现自动化处理、批量数据处理等功能。本篇文章主要介绍如何使用xlwings对Excel表格进行多行多列数据设置和操作,并给出相应的源代码。接着,我们可以对这个范围内的所有单元格进行操作,如设置字体颜色、填充颜色、对齐方式等。以上就是使用xlwings对Excel表格进行多行多列数据操作和设置字体颜色、填充色和对齐方式的全部内容。最后,我们可以将数据写入到单元格中,也可以从单元格中读取数据。在Excel中,可以通过。

BUG?不存在的! 695

arcgis地形图符号库下载

1:1万arcgis地形图符号库下载,style文件

上一篇: kubernetes介绍
下一篇: HCIE云计算方向
休耕
博客等级 码龄14年 298粉丝 · 386原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

休耕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值