使用Ubuntu22.04搭建k8s环境和一些k8s基础知识

news2024/11/19 10:28:21

minikube搭建

基本环境

  • 我使用virtualBox构建的ubuntu,选择4核4G内存
  • minikube是一个K8S集群模拟器,可以快速构建一个单节点的集群,用于在本地测试和开发
  • 首先使用官方脚本安装docker
curl -fsSL https://test.docker.com -o test-docker.sh
sudo sh test-docker.sh

然后参考官方文档安装minikube
安装好了以后启动minikube start报错
在这里插入图片描述

  • 我没有添加用户到docker中,执行sudo usermod -aG docker vboxuser && newgrp docker之后再启动,注意这里要添加你的用户
    在这里插入图片描述
  • 目前看起来比较正常,安装好了以后安装kubectl,这是k8s的一种命令行工具,参考官网
  • 然后kubectl get services可以获取当前服务
  • 这样一个单节点集群就搭建好了

k8s

  • k8s全称是kubernetes,因为k和s中间正好8个字符,所以简写为k8s

概念

  1. Cluster(集群),它是计算、存储和网络资源的集合,kubernetes利用这些资源运行各种基于容器的应用
  2. Master(主节点),它是Cluster的大脑,主要职责是调度,觉醒将应用放在哪里运行。Master运行linux操作系统,可以是物理机或者虚拟机,为了实现高可用,可以运行多个Master
  3. Node(节点),它的职责是运行容器应用,由主节点Master管理,Node负责监控并汇报容器的状态,同时根据Master的要求管理容器的生命周期,Node运行在Linux操作系统上,可以是虚拟机或者物理机
  4. Pod,它是kubernetes的最小工作单元,每个Pod包含一个或多个容器,Pod中的容器会作为一个整体被Master调度到一个Node上运行。Pod提供了比容器更高层次的抽象,将它们封装到一个部署单元中。Kubernetes以Pod为最小单位进行调度、扩展、共享资源、管理生命周期;Pod中的所有容器使用同一个网络namespace,即相同的IP地址和Port空间。它们可以直接用localhost通信,同样的,这些容器可以共享存储,当Kubernetes挂载volume到Pod,本质上是将volume挂载到Pod中的每一个容器。Pod中可能有一个或者多个容器,无论哪种情况,Kubernetes都是对Pod进行管理而非容器,如果想在一个Pod中部署多个容器,那么推荐是这些容器联系必须十分紧密,而且需要直接共享资源
  5. Controller,Kubernetes通常是通过Controller来管理Pod的。Controller中定义了Pod的部署特性,比如有几个副本、在什么样的Node上运行等,为了满足不同业务场景,Kubernetes提供了多种Controller,下面逐一介绍
    (1) Deployment,这是最常用的Controller,它可以来管理Pod的多个副本,并确保Pod按照期望的状态运行
    (2) ReplicaSet实现了Pod的多副本管理,使用Deployment时会自动创建ReplicaSet,也就是说Deployment是通过ReplicaSet来管理Pod的多个副本的,我们通常不需要直接使用ReplicaSet
    (3) DaemonSet,用于每个Node最多只运行一个Pod副本的场景,通常用于运行daemon,也就是守护进程
    (4) StatefuleSet,它能够保证Pod的每个副本在整个生命周期中名称不变,而其他Controller不提供这个功能。当某个Pod发生故障需要删除或者重新启动时,Pod的名称会发生变化,同时StatefuleSet会保证副本按照固定的顺序启动、更新或者删除
    (5)Job用于运行结束就删除的应用,而其他Controller中的Pod通常是长期持续运行
  6. Service,外界通过Service访问Pod,因为Pod频繁的销毁或者重启会导致ip改变,而k8s的Service定义了外界访问一组特定Pod的方式。Service有自己的IP和端口,Service为这些Pod提供了负载均衡,k8s运行与访问Pod分别由Controller和Service执行
  7. Namespace,对于多个用户或者项目组使用同一个k8s Cluster,使用Namespace将他们创建的Controller、Pod等资源分开,Namespace可以将一个物理的Cluster逻辑上划分成多个虚拟Cluster,每个Cluster就是一个Namespace,不通的Namespace里的资源是完全隔离的,可以使用kubectl get namespace查看一下有哪些Namespace

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/419054.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

nacos源码服务注册

nacos服务注册序言1.源码环境搭建1.1idea运行源码1.2 登录nacos2.服务注册分析2.1 客户端2.1.1容器启动监听2.1.2注册前初始化2.1.3注册服务2.2 服务端2.2.1注册2.2.2重试机制3.注意事项序言 本文章是分析的是nacos版本2.2 这次版本是一次重大升级优化,由原来&#…

【MySQL | 基础篇】02、MySQL 函数详解

目录 一、字符串函数 1.1 concat : 字符串拼接 1.2 lower : 全部转小写 1.3 upper : 全部转大写 1.4 lpad : 左填充 1.5 rpad : 右填充 1.6 trim : 去除空格 1.7 substring : 截取子字符串 1.8 案例 二、数值函数 2.1 ceil:向上取整 2.2 floor&#xff…

【Java版oj】day34收件人列表、养兔子

目录 一、收件人列表 (1)原题再现 (2)问题分析 (3)完整代码 二、养兔子 (1)原题再现 (2)问题分析 (3)完整代码 一、收件人列表 …

Python机器学习:支持向量机2

昨天是简单的了解了一下支持向量机要干什么以及线性可分支持向量机是怎么一回事,今年来看另一种:线性支持向量机: 我们昨天说的,线性可分支持向量机的目的就是找到一个超平面来吧一个数据集分成正负两个部分,但是实际…

一天学完C++的标准模板库STL

标准模板库STLstring字符串如何对string字符串的初始化(声明)?如何遍历string对象进行访问?如何对string类型的字符串进行增删改查?对string字符串增加一些字符对string字符串删除一些字符对string字符串改动一些字符在…

【hello Linux】环境变量

目录 1. 环境变量的概念 2. 常见的环境变量 3. 查看环境变量 4. 和环境变量相关的命令 5. 环境变量的组织方式 6. 通过代码获取环境变量 7. 通过系统调用获取环境变量 Linux🌷 在开始今天的内容之前,先来看一幅图片吧! 不知道你们是否和我一…

数据结构的加强甜点-序列1

目录 尾递归 问题 介绍 特点 原理 答案 数组栈堆内存分配 前言 分析 再分析 所谓多维数组 程序局部性原理应用 尾递归 问题 在空间复杂度这块,有个O(n)示例如下: void recur(int n) {if (n 1) return;return recur(n - 1); } 这很明显是…

Canal(1):Canal入门

1 什么是 Canal 阿里巴巴 B2B 公司,因为业务的特性,卖家主要集中在国内,买家主要集中在国外,所以衍生出了同步杭州和美国异地机房的需求,从 2010 年开始,阿里系公司开始逐步的尝试基于数据库的日志解析&am…

SpringSecurity之微服务权限解决方案

目录 前置知识点 什么是微服务 微服务的优劣 优点 缺点 微服务本质 微服务认证与授权实现思路 认证预授权的过程 前置知识点 什么是微服务 微服务(或称微服务架构)是一种云 原 生 架构方法,在单个应用中包含众多松散耦合而且可单独部…

君子生非异也,善假于物也。【借助外力获取能量,主动改善生存环境。】

文章目录 引言I 借助外力1.1 制造很实用工具1.2 火引言 人类懂得借助外力,从被动地适应环境的进化,进入到主动改善生存环境的发展轨道上了。 人之所以为人,是因为我们善于借助外力,而不是先天有多少优势。 I 借助外力 学会制造和使用工具,提高能量获取的效率学会使用火,…

苹果手写笔有必要买吗?性价比电容笔排行榜

众所周知,苹果的正版Pencil的售价过于的高,一般的用户是买不起的。那么,市场上是否会有一款苹果Pencil的平替电容笔,而这两款电容笔在功能上是完全相同的?的确如此。国内的平替电容笔在书写方面上跟苹果Pencil差别不大…

【多线程的应用】顺序打印

【多线程的应用】顺序打印题目注意点:1. 每个线程循环10次,利用锁的wait 和 计数器count调节线程的执行顺序2. count后 lock.notifyAll 唤醒所有线程3. Thread.currentThread().getName()4. 锁中的逻辑是:进入锁中后,如果while不满…

图片怎么转换成pdf格式?这几个方法帮你一键转换

现今电子书籍越来越受到欢迎,其中PDF格式也成为了一种常用的电子书籍格式。无论是工作还是学习,我们都可能会遇到需要将图片转换成PDF格式的情况,例如保存一些资料证明、公文公告、学习资料等。在这篇文章中,我们将为大家介绍三种…

CT前瞻(一):Vant UI入门与使用

文章目录📋前言🎯什么是Vant UI🎯快速上手🎯组件用法📝最后📋前言 最近在项目开发和学习的过程中,涉及到了Vant UI(简称Vant)的使用,主要还是涉及到了Card卡…

[图神经网络]视觉图神经网络ViG(Vision GNN)--论文阅读

国际惯例: 论文地址https://arxiv.org/pdf/2206.00272.pdfgit地址https://github.com/huawei-noah/Efficient-AI-Backbones/tree/master/vig_pytorch 相较于之前将GNN和CNN结合的图像处理算法,ViG创新的将GNN直接用在了特征提取上。不再需要借用…

Docker快速搭建SkyWalking[ OAP UI[登录] Elasticsearch]

文章目录[前置]:搭建ELasticsearch相关[零]:虚拟机开放SkyingWalking和ES相关端口[一]:拉取SkyWalking-oap和SkyWalking-ui镜像[二]: 运行SkyWalking的oap和ui 容器 2.1 - 运行Skywalking-oap容器 ---- 注意oap运行参数异常 no pr…

早有尔闻 | 数字赋能,提质增效

01 卡奥斯牵头国家重点研发项目 助力中小企业数字化转型升级 3月24日,2022年国家重点研发计划“面向中小企业研发制造资源技术工业互联技术服务平台”项目正式启动。其中,卡奥斯COSMOPlat作为平台承建方牵头课题4“研发制造资源工业互联技术服务平台研…

CDH6.3.2引入debezium-connector-mysql-1.9.7监听mysql事件

1、首先说明一下为啥选用debezium,它能够根据事务的提交顺序向外推送数据,这一点非常重要。再有一个结合kafka集群能够保证高可用,对于熟悉java语言的朋友后面一篇博文会介绍怎样编写插件将事件自定义路由到你想要的主题甚至分区中。 提高按顺…

百度「文心一言」阿里「通义千问」腾讯的AI将会叫什么呢

阿里于昨天2023.4.7下午上线通义千问,与ChatGPT类似,同样是基于语言模型训练的人工智能聊天平台。通义千问的核心功能分为四个大类:撰写短文、职场助理、电影脚本和写封邮件。 通义千问通义千问https://tongyi.aliyun.com/ 首页如下&#xf…

word文件上的电子签章的法律效力如何保证?

你有没有见过这样的word文件“电子签章”? 这种用PS制作的“电子签章”,或者在一些输入公司名称就能在线生成“电子签章”的小网站、小作坊买来的“电子签章”,通通都是没有法律效力的贴图章! 使用贴图章的word文件不但没有任何…