Kubernetes学习笔记11
k8s集群核心概念:pod:
在K8s集群中是不能直接运行容器的,K8s的最小调度单元是Pod,我们要使用Pod来运行应用程序。
学习目标:
了解pod概念:
了解查看pod方法
了解创建pod方法
了解pod访问方法
了解删除pod方法
课程介绍:
Pod介绍:
Pod是k8s集群能够调度的最小单元。
Pod是容器的封装。
查看Pod:
[root@master1 ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-gd9z6 1/1 Running 0 16h
[root@master1 ~]#
[root@master1 ~]#
[root@master1 ~]#
[root@master1 ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-gd9z6 1/1 Running 0 16h
[root@master1 ~]#
[root@master1 ~]#
[root@master1 ~]# kubectl get pods --namespace default
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-gd9z6 1/1 Running 0 16h
[root@master1 ~]#
[root@master1 ~]#
[root@master1 ~]# kubectl get pod --namespace default
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-gd9z6 1/1 Running 0 16h
[root@master1 ~]#[root@master1 ~]# kubectl get ns
NAME STATUS AGE
default Active 17h
kube-flannel Active 17h
kube-node-lease Active 17h
kube-public Active 17h
kube-system Active 17h
[root@master1 ~]# kubectl get pod --namespace kube-system
NAME READY STATUS RESTARTS AGE
calico-kube-controllers-594649bd75-xjbgr 1/1 Running 0 16h
calico-node-6lz45 1/1 Running 0 16h
calico-node-fdprn 1/1 Running 0 16h
calico-node-szs6x 1/1 Running 0 16h
coredns-558bd4d5db-fmrpg 1/1 Running 0 17h
coredns-558bd4d5db-fnxdn 1/1 Running 0 17h
etcd-master1 1/1 Running 1 17h
kube-apiserver-master1 1/1 Running 1 17h
kube-controller-manager-master1 1/1 Running 1 17h
kube-proxy-rz26h 1/1 Running 0 17h
kube-proxy-spf9t 1/1 Running 1 17h
kube-proxy-x4fq5 1/1 Running 0 17h
kube-scheduler-master1 1/1 Running 1 17h
可见,k8s运行的组件,都是以pod形式运行的。
创建pod:
由于网络原因,建议提前准备好容器镜像,本次使用nginx:latest容器镜像。
master默认是不允许把用户运行的pod调度过来的。
1)编写用于创建pod资源清单文件:
[root@master1 ~]# cat 02_create_pod.yaml
apiVersion: v1
kind: Pod
metadata:name: pod1
spec:containers:- name: nginx-podimage: nginx:latestimagePullPolicy: IfNotPresentports:- name: nginxportcontainerPort: 80
[root@master1 ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-gd9z6 1/1 Running 0 16h
pod1 1/1 Running 0 38s
可见pod1创建成功。
[root@master1 ~]# kubectl get pods --namespace default
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-gd9z6 1/1 Running 0 16h
pod1 1/1 Running 0 110s
在default命令空间中查看pods。
查看Pod更加详细的信息:
[root@master1 ~]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nginx-65c4bffcb6-gd9z6 1/1 Running 0 16h 10.244.1.4 worker1 <none> <none>
pod1 1/1 Running 0 3m30s 10.244.189.65 worker2 <none> <none>
[root@master1 ~]#
Pod访问:
可以看到pod1是运行在worker2上。使用curl http://10.244.189.65 暂时还访问不到。
Pod的访问,在实际工作中是不建议访问的,Pod会发生不可预计的变化。
[root@master1 ~]# curl http://10.244.235.130
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p><p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p><p><em>Thank you for using nginx.</em></p>
</body>
</html>
那这个问题,得到了解决。
删除Pod:
可以通过命令行删除,也可通过资源清单YAML文件进行删除。
如果是单个Pod,可以使用命令行进行删除。
如果有控制器,是某一类的应用,我们是不建议使用命令行来进行删除的。
1)kubectl命令行删除:
# 使用kubectl命令行进行删除
[root@master1 ~]# kubectl delete pods pod1
pod "pod1" deleted[root@master1 ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-86vxw 1/1 Running 0 12m[root@master1 ~]# kubectl apply -f 02_create_pod.yaml
pod/pod1 created[root@master1 ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-86vxw 1/1 Running 0 13m
pod1 0/1 ContainerCreating 0 5s# 使用资源清单文件进行删除
[root@master1 ~]# kubectl delete -f 02_create_pod.yaml
pod "pod1" deleted[root@master1 ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-65c4bffcb6-86vxw 1/1 Running 0 14m
然后,我们还需要学习掌握:Pod中容器镜像下载策略、Pod中容器重启策略、Pod健康检查方式、Pod生命周期管理、Pod调度流程、Pod调度约束、Pod故障排除方法等。
相关文章:
Kubernetes学习笔记11
k8s集群核心概念:pod: 在K8s集群中是不能直接运行容器的,K8s的最小调度单元是Pod,我们要使用Pod来运行应用程序。 学习目标: 了解pod概念: 了解查看pod方法 了解创建pod方法 了解pod访问方法 了解删除…...

✌2024/4/3—力扣—无重复字符的最长子串
代码实现: 解法一:暴力法 int lengthOfLongestSubstring(char *s) {int hash[256] {0};int num 0;for (int i 0; i < strlen(s); i) {int count 0;for (int j i; j < strlen(s); j) {if (hash[s[j]] 0) {hash[s[j]];count;num num > cou…...
Tauri 进阶使用与实践指南
Tauri 进阶使用与实践指南 调试技术 在 Tauri 应用开发中,调试分为两大部分:Web 端与 Rust 控制台。 Web 端调试 在 Web 端界面,可以直接采用浏览器内置的开发者工具进行调试。在 Windows 上,可以通过快捷键 Ctrl Shift i 打…...
2024年最新社交相亲系统源码下载
最新相亲系统源码功能介绍 参考:相亲系统源码及功能详细介绍 相亲系统主要功能 (已完成) 相亲系统登录注册 相亲系统会员列表 相亲系统会员搜索 相亲系统会员详情 相亲系统会员身份认证 - 对接阿里云 相亲系统资源存储 - 对接七…...

git知识
如何将develop分支合并到master分支 #简单版 git checkout master git pull origin master git merge origin/develop # 解决可能的冲突并提交 git push origin master#复杂版 git checkout master # 拉取远程 master 分支的最新代码并合并到本地 git pull origin master # 拉…...
代码随想录算法训练营第三十五天|860.柠檬水找零、406.根据身高重建队列、452.用最少数量的箭引爆气球
代码随想录算法训练营第三十五天|860.柠檬水找零、406.根据身高重建队列、452.用最少数量的箭引爆气球 860.柠檬水找零 在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯…...
golang defer实现
derfer : 延迟调用,函数结束返回时执行,多个defer按照先进后出的顺序调用 原理:底层通过链表实现,每次新增的defer调用,通过头插法插入链表;defer执行时,从链表头开始遍历,相当于实…...

数据仓库实践
什么是数据仓库? 数据仓库是一个用于存储大量数据并支持数据分析与报告的系统。它通常用于集成来自不同来源的数据,提供一个统一的视图,以便进行更深入的分析和决策。 数据仓库的主要优势? 决策支持:为企业决策提供可靠…...

深入浅出 -- 系统架构之微服务标准组件及职责
我们来认识一下微服务架构在Java体系中依托哪些组件实现的。 相对于单体架构的简单粗暴,微服务的核心是将应用打散,形成多个独立提供的微服务,虽然从管理与逻辑上更符合业务需要。但微服务架构也带来了很多急需解决的核心问题: 1…...

IP协议中的四大支柱:DHCP、NAT、ICMP和IGMP的功能剖析
DHCP动态获取 IP 地址 我们的电脑通常都是通过 DHCP 动态获取 IP 地址,大大省去了配 IP 信息繁琐的过程。 客户端首先发起 DHCP 发现报文(DHCP DISCOVER) 的 IP 数据报,由于客户端没有 IP 地址,也不知道 DHCP 服务器的…...

基于Socket简单的UDP网络程序
⭐小白苦学IT的博客主页 ⭐初学者必看:Linux操作系统入门 ⭐代码仓库:Linux代码仓库 ❤关注我一起讨论和学习Linux系统 1.前言 网络编程前言 网络编程是连接数字世界的桥梁,它让计算机之间能够交流信息,为我们的生活和工作带来便利…...
计算机思维
计算机思维是一种运用计算机科学的基础概念和方法来解决问题、设计系统和理解人类行为的思维方式。它包括以下几个方面: 1. 抽象和建模:将复杂的现实问题抽象为计算机可以处理的模型,通过定义对象、属性和关系来构建问题的逻辑结构。 2. 算法…...
如何判断一个linux机器是物理机还是虚拟机
https://blog.csdn.net/qq_32262243/article/details/132571117 第一种方式:dmesg命令 [rootnshqae01adm03 ~]# dmesg | grep -i hypervisor [ 0.000000] Hypervisor detected: Xen PV [ 1.115297] VPMU disabled by hypervisor. 在我的机器上 dmesg也是能够用来判…...
python用requests的post提交data数据以及json和字典的转换
环境:python3.8.10 python使用requests的post提交数据的时候,代码写法跟抓包的headers里面的Content-Type有关系。 (一)记录Content-Type: application/x-www-form-urlencoded的写法。 import requestsurlhttps://xxx.comheade…...
【Datax分库分表导数解决方法】MySQL_to_Hive
Datax-MySQL_to_Hive-分库分表-数据同步工具 简介: 本文档介绍了一个基于Python编写的工具,用于实现分库分表数据同步的功能。该工具利用了DataX作为数据同步的引擎,并通过Python动态生成配置文件,并调用DataX来执行数据同步任务…...

Vue2 —— 学习(一)
目录 一、了解 Vue (一)介绍 (二)Vue 特点 (三)Vue 网站 1.学习: 2.生态系统: 3.团队 二、搭建 Vue 开发环境 (一)安装与引入 Vue 1.直接引入 2.N…...

Windows Server 2008添加Web服务器(IIS)、WebDAV服务、网络负载均衡
一、Windows Server 2008添加Web服务器(IIS) (1)添加角色,搭建web服务器(IIS) (2)添加网站,关闭默认网页,添加默认文档 在客户端浏览器输入服务器…...
SpringMVC转发和重定向
转发和重定向 1. View Resolver Spring MVC 中的视图解析器(View Resolver)负责解析视图。可以通过在配置文件中定义一个 View Resolver 来配置视图解析器: 配置文件版:spring-web.xml <!-- for jsp --> <bean class&q…...

勒索病毒最新变种.rmallox勒索病毒来袭,如何恢复受感染的数据?
导言: 随着信息技术的飞速发展,网络安全问题日益突出,其中勒索病毒便是近年来备受关注的网络安全威胁之一。在众多勒索病毒中,.rmallox勒索病毒以其独特的传播方式和强大的加密能力,给广大用户带来了极大的困扰。本文…...
复试专业课问题
1、数据结构:详细描述归并排序的过程 归并排序是用分治思想,分治模式在每一层递归上有三个步骤: 分解(Divide):将n个元素分成个含n/2个元素的子序列。解决(Conquer):用…...

idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

算法岗面试经验分享-大模型篇
文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer (1)资源 论文&a…...