K8s的基本使用和认识

news2024/11/20 4:43:11

目录

介绍

控制端

 Node(节点)

控制端与节点的关系图

基本使用 

创建和运行资源

查找和参看资源

修改和删除资源 


介绍

控制端

api-server(api)是集群的核心是k8s中最重要的组件,因为它是实现声明式api的关键

kubernetes api-server的核心功能是提供了Kubernetes各类资源对象pod RC service等的增删改查以及watch等HTTP REST接⼝

Controller Manager (c-m)的作用简而言之之保证集群中各种资源的实际状态

status和⽤户定义的期望状态spec⼀致 

官⽅定义kube-controller-manager 运行控制器   它们是处理集群中常规任务的后台线程

etcd 是兼具⼀致性高可用性的键值数据库可⽤于服务发现以及配置中心

采用raft⼀致性算法基于Go语⾔实现是保存Kubernetes 所有集群 数据的后台数据库

kube-scheduler(sched) 是kubernetes 系统的核心组件之⼀主要负责整个集群 资源的调度功能

根据特定的调度算法和策略将Pod 调度到最优的工作 节点上面去

从而更加合理更加充分地利用集群的资源

 Node(节点)

 如图所示

控制端与节点的关系图

 

基本使用 

创建和运行资源

创建并运行⼀个指定的镜像

kubectl run NAME --image=image [params...]

创建并运⾏⼀个指定的镜像

e.g. kubectl run nginx --image=nginx # 创建并启动⼀个Nginx实例

 根据YAML配置文件或者标准输入创建资源

kubectl create RESOURCE
kubectl create -f ./file.yaml  # 根据配置⽂件创建资源 
kubectl create -f ./dir        # 创建dir⽬录内所有配置⽂件所定义的资源 
kubectl create -f URL          # 从⼀个URL创建资源

 例子 : 

cat <<EOF | kubectl create -f -

 YAML配置文件格式

apiVersion: v1 
kind: Secret 
metadata: 
  name: mySecret 
type: Opaque 
data: 
  password: $(echo "your_password" | base64) 
  username: $(echo "geekhour" | base64) 
EOF

根据  YAML配置文件创建或更新(常用)

kubectl apply -f FILENAME

与 create 的 区别: apply 可以用作更新,create 不行

查找和参看资源

以“组/版本”的格式输出服务端支持的API版本 

kubectl api-versions

查看集群中某一类资源的信息.

kubectl get RESOURCE

例子:

kubectl get po / pod                            # 获取Pod的信息                                          
kubectl get no / node / nodes                   # 获取Node的信息                       
kubectl get rs / replicaset / replicasets       # 获取ReplicaSet的信息                  
kubectl get svc / service / services.           # 获取Service的信息             
kubectl get deploy / deployment / deployments.  # 获取Deployment的信息    

显示资源的详细信息 

ectl describe (-f FILENAME | TYPE [NAME_PREFIX | -l label] | TYPE/NAME)

修改和删除资源 

 更新某个资源的标签

kubectl label pods <pod-name> new-label=geekhour

例子: kubectl label pods foo status=unhealthy --resource-version=1 

根据配置文件或者标准输入替换⼀个资源对象 

 kubectl replace -f FILENAME

例子:    kubectl replace -f ./pods.json

根据配置文件 / 标准输入 / 类型 / 标签 等信息来删除资源对象 

 kubectl delete ([-f FILENAME] | TYPE [(NAME | -l label | --all)])

例子: 

# 删除所有名字为foo和bar的pod和service

kubectl delete pod, service foo bar

# 删除所有pods

kubectl delete pod --all

# 根据配置⽂件删除所有相关对象

kubectl delete -f ./file.YAML 

 参考:B站up -- GeekHour

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

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

相关文章

基于FreeRTOS+STM32CubeMX+LCD1602+MCP3008(SPI接口)的ADC转换器Proteus仿真

一、仿真原理图: 二、运行效果: 三、STM32CubeMX配置: 1)、RCC配置: 2)、SPI配置: 四、部分代码: 1)、主函数: /* USER CODE BEGIN Header */ /** ****************************************************************************** * @file : main…

mysql8.0.19安装zip版本

下载地址https://downloads.mysql.com/archives/community/ 下载版本 下载后解压&#xff0c;不包括data 和my.ini文件。其中data 文件是自动生成的【mysqld --initialize --console】&#xff0c;my.ini需要自己编写设置。 新建my.ini文件 需要自己设置 basedirG:\soft\mysql…

华为DCN网络之:VXLAN

VXLAN RFC定义了VLAN扩展方案VXLAN&#xff08;Virtual eXtensible Local Area Network&#xff0c;虚拟扩展局域网&#xff09;。VXLAN采用MAC in UDP封装方式&#xff0c;是NVO3&#xff08;Network Virtualization over Layer 3&#xff09;中的一种网络虚拟化技术。 VXLAN…

android studio 添加aar包

按着以前旧的导包方式栽了大跟头&#xff0c;后面在留老板的的博客下找到了解决办法&#xff0c;记录一下。 Andriod Studio 导入aar最新的方式_gradle 8 引入arr-CSDN博客 最新导包方式 1.在新建libs目录&#xff0c;在app/libs目录下导入aar包&#xff08;其实就是拷贝过去…

hive4 从入门到精通

查询hive 架构 准备 HDFS配置 vim $HADOOP_HOME/etc/hadoop/core-site.xml <!--配置所有节点的root用户都可作为代理用户--><property><name>hadoop.proxyuser.root.hosts</name><value>*</value></property><!--配置root用户…

ETH巨鲸鱼异动和最大BTC爆仓

小编使用币界网地址监控工具&#xff0c;跟踪了在一次令人震惊的链上巨鲸地址异动&#xff0c;一个新创建的地址在过去四个小时内从 Coinbase 提取了价值 2121 万美元的 ETH。总共积累了 6,215 个 ETH&#xff0c;平均购买价格为每 ETH 3,414 美元。如此大规模的提款暗示着周一…

JVM原理(八):JVM虚拟机工具之基础故障工具

这里主要介绍监视虚拟机运行状态和进行故障处理的工具 1. jsp:虚拟机进程状况工具 jsp命令格式&#xff1a; jsp [options] [hostid] jps远程查询虚拟机进程状态 2. jstat:虚拟机统计信息监视工具 jstat命令格式&#xff1a; jstat [option vmid [interval [s|ms] [count]…

【Elasticsearch】Elasticsearch索引创建与管理详解

文章目录 &#x1f4d1;引言一、Elasticsearch 索引的基础概念二、创建索引2.1 使用默认设置创建索引2.2 自定义设置创建索引2.3 创建索引并设置映射 三、索引模板3.1 创建索引模板3.2 使用索引模板创建索引 四、管理索引4.1 查看索引4.2 更新索引设置4.3 删除索引 五、索引别名…

基于VUE3+VITE+SpringBoot+Nginx部署项目之跨域配置等问题

前言&#xff1a;遇到问题&#xff0c;解决问题。 第一部分&#xff1a;VUE 配置 1、vite.config.js 文件 server: {proxy: {/api: {target: env.VITE_BASE_URL,changeOrigin: true,secure: false,rewrite: path > path.replace(/^\/api/, )}}}, 2、.env 文件 VITE_BAS…

Tampermonkey 油猴脚本使用教程

Tampermonkey 油猴脚本使用教程 一、Tampermonkey 油猴脚本简介 Tampermonkey 是一款流行的浏览器扩展&#xff0c;它允许用户通过用户脚本增强网页功能或改变网页的外观。它支持包括 Chrome、Microsoft Edge、Safari、Opera Next 和 Firefox 在内的多种浏览器。Tampermonkey…

搭建LNMP环境实现高并发请求

LNMP和Nginx详细配置 一、LNMP环境平台搭建准备工作源码软件包安装nginxmysqlphp使用nginx连接php 二、web服务器-nginx1.学nginx之前需要了解的知识1.1 同步和异步&#xff08;通知结果的方式&#xff09;1.2 阻塞和非阻塞&#xff08;进线程等待时状态&#xff09;1.3 epoll模…

.NET 漏洞情报 | 某整合管理平台SQL注入

01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等&#xff08;包括但不限于&#xff09;进行检测或维护参考&#xff0c;未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失&#xf…

Github 2024-07-01开源项目月报 Top15

根据Github Trendings的统计,本月(2024-07-01统计)共有15个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目6JavaScript项目3C++项目2PHP项目1Blade项目1非开发语言项目1C#项目1Lua项目1Go项目1MDX项目1Jupyter Notebook项目1从零开始构建你喜…

AI绘画:探索人工智能与艺术的奇妙结合

前言 人工智能技术的不断发展&#xff0c;使得AI绘画逐渐成为艺术领域的新宠。AI绘画是指利用人工智能算法进行绘画创作的一种艺术形式&#xff0c;它可以模拟人类艺术家的创作过程&#xff0c;创造出各种独特的艺术作品。 突破传统艺术的极限&#xff1a;AI绘画的无限可能性 …

学习CAN协议(二):使用CAN发送数据

相关文章 学习CAN协议&#xff08;一&#xff09;&#xff1a;CAN协议简介 学习CAN协议&#xff08;二&#xff09;&#xff1a;使用CAN发送数据 学习CAN协议&#xff08;三&#xff09;&#xff1a;使用CAN接收数据 目录 一、配置CubeMX 二、代码编写 CAN的发送示例代码…

数据资产的创新应用与未来展望:探讨数据资产在人工智能、物联网等新兴领域的应用前景,提出前瞻性的数据资产解决方案,为企业探索新的增长点,推动行业创新发展

目录 一、引言 二、数据资产在人工智能领域的应用 1、机器学习与深度学习 2、自然语言处理 3、计算机视觉 三、数据资产在物联网领域的应用 1、智能家居 2、工业物联网 3、智慧城市 四、前瞻性的数据资产解决方案 1、构建统一的数据管理平台 2、加强数据安全和隐私…

SAAM架构-系统架构师(十九)

1、&#xff08;重点&#xff09;&#xff08;问题1&#xff09;针对最终架构而非详细设计进行评估。&#xff08;问题2&#xff09;用于分析多种质量属性之间的折中。 问题1 A SAAM B ATAM C CBAM D SAEM 问题2 A SAAM B ATAM C CBAM D SAEM 解析&#xff1a; SAAM针…

3.js - MeshPhysicalMaterial - 虹彩效果

效果图 // ts-nocheck // 引入three.js import * as THREE from three // 导入轨道控制器 import { OrbitControls } from three/examples/jsm/controls/OrbitControls // 导入lil.gui import { GUI } from three/examples/jsm/libs/lil-gui.module.min.js // 导入tween impor…

控制台厂家的创新设计主要体现在哪几方面

在当今科技飞速发展的时代&#xff0c;控制台厂家面临着不断变化的市场需求和激烈的竞争&#xff0c;创新设计成为了他们脱颖而出的关键。这些创新设计主要体现在以下几个引人注目的方面&#xff1a; 人体工程学的深度融合是一大亮点。控制台厂家充分考虑操作人员长时间工作的实…

JsonCpp:更简洁的序列化及反序列化

简介 jsoncpp 提供了一组简单易用的 API&#xff0c;使得在 C 程序中处理 JSON 数据变得更加方便和高效。 安装 linux环境下安装jsoncpp sudo apt-get update sudo apt-get install --reinstall libjsoncpp-dev建立软链接确保编译器找到头文件 #include <json/json.h>…