NIO4444
这个作者很懒,什么都没留下…
展开
-
K8S系列:hostPath和nfs的使用方法
nfs demoapiVersion: v1kind: Podmetadata: name: mongodb-nfsspec: volumes: - name: mongodb-data nfs: server: 1.2.3.4 path: /some/path containers: - image: registry.cn-hangzhou.aliyuncs.com/nio4444_ns/test_reg:volume_0.01 n原创 2023-09-10 10:46:42 · 125 阅读 · 0 评论 -
K8S系列:Error from server (BadRequest): a container name must be specified for pod
涉及多个容器时,需要指定具体的容器名。原创 2023-09-11 05:00:00 · 789 阅读 · 0 评论 -
K8S系列:emptyDir的使用方法
pod包含两个容器和一个挂载在两个容器中的共用的卷,但在不同的路径上。html-generator容器启动时,它每10秒启动一次fortune命令输出到/var/htdocs/index.html文件。因为卷是在/var/htdocs上挂载的,所以index.html文件被写入卷中,而不是容器的顶层。web-server容器启动,它就开始为/usr/share/nginx/html目录中的任意HTML文件提供服务。原创 2023-09-12 08:15:00 · 195 阅读 · 0 评论 -
K8S系列:ENTRYPOINT与CMD、command与args区别
command和args字段在pod创建后无法被修改,环境变量列表也无法在pod创建后被修改。将ConfigMap暴露为卷可以达到配置热更新的效果,无须重新创建pod或者重启容器。指定传递给ENTRYPOINT的参数。定义容器启动时被调用的可执行程序。原创 2023-09-12 08:15:00 · 199 阅读 · 0 评论 -
K8S系列:deployment的使用方法(创建、升级)
定义yamlapiVersion: apps/v1kind: Deploymentmetadata: name: nio4444-deploymentspec: selector: matchLabels: app: nio4444-pod-label replicas: 3 minReadySeconds: 10 strategy: rollingUpdate: maxSurge: 1 maxUnavailable: 0原创 2023-09-13 20:15:00 · 131 阅读 · 0 评论 -
K8S系列:Deployment报错:missing required field “selector“ in io.k8s.api.apps.v1.DeploymentSpec
selector属性,添加红色部分代码即可。原创 2023-09-14 09:30:00 · 360 阅读 · 0 评论 -
K8S系列:查看kind(Service、Deployment)对应的version类型的简单方法
使用 kubectl explain <kind>类型。原创 2023-09-15 00:45:00 · 220 阅读 · 0 评论 -
K8S系列:访问外部地址(service ExternalName使用demo)
ExternalName类型的Service。原创 2023-09-08 00:34:03 · 269 阅读 · 0 评论 -
K8S系列:Service NodePort的使用demo-对外暴露访问接口
选择标签app=nio4444的pod节点。任意node节点都可以访问。原创 2023-09-07 23:36:36 · 140 阅读 · 0 评论 -
K8S系列:DaemonSet与ReplicaSet(或ReplicationController)区别
如果节点下线,DaemonSet不会在其他地方重新创建pod。但是,当将一个新节点添加到集群中时,DaemonSet会立刻部署一个新的pod实例。如果有人无意中删除了一个pod,那么它也会重新创建一个新的pod。与ReplicaSet一样,DaemonSet从配置的pod模板创建pod。ReplicaSet(或ReplicationController)确保集群中存在期望数量的pod副本,它的工作是确保一个pod匹配它的选择器并在每个节点上运行(每个节点只运行一个)原创 2023-09-07 01:20:20 · 122 阅读 · 0 评论 -
K8S系列:ReplicaSet和ReplicationController区别
ReplicationController的标签选择器只允许包含某个标签的匹配pod,ReplicaSet的选择器还允许匹配缺少某个标签的pod,或包含特定标签名的pod举个例子,单个ReplicationController无法将pod与标签env=production和env=devel同时匹配。它只能匹配带有env=devel标签的pod或带有env=devel标签的pod。但是一个ReplicaSet可以匹配两组pod并将它们视为一个大组。原创 2023-09-07 01:08:29 · 133 阅读 · 0 评论 -
K8S系列:使用ReplicationController创建pod
rc_test。原创 2023-09-07 00:49:52 · 81 阅读 · 0 评论 -
K8S系列:存活探针的使用
编写node_web_good-liveness-probe-initial-delay.yaml文件。编写node_web_bad-liveness-probe-initial-delay.yaml文件。容器必须在1秒内进行响应,不然这次探测记作失败。每10秒探测一次容器(period=10s)在容器启动后15s开始探测。探测连续三次失败后重启容器。可以看到pod重启了。原创 2023-09-07 00:28:08 · 74 阅读 · 0 评论 -
K8S系列:删除pod的4种方法
Kubernetes向进程发送一个SIGTERM信号并等待一定的秒数(默认为30),使其正常关闭。如果它没有及时关闭,则通过SIGKILL终止该进程。因此,为了确保你的进程总是正常关闭,进程需要正确处理SIGTERM信号。原创 2023-09-06 23:39:24 · 10753 阅读 · 0 评论 -
K8S系列:标签label的使用例子(将pod分配到指定node节点上)
目录查看node标签打标签 使用标签过滤定义带标签的pod 创建pod 查看pod分配节点 创建pod 查看pod分配节点原创 2023-09-06 23:21:53 · 213 阅读 · 0 评论 -
K8S系列:部署pod
【代码】K8S系列:部署pod。原创 2023-09-06 00:45:22 · 81 阅读 · 0 评论 -
K8S系列:容器内的进程和node节点进程关系
容器使用独立的PID Linux命名空间并且有着独立的系列号,完全独立于进程树。运行在容器中的进程是运行在主机操作系统上的。进程的ID在容器中与主机上不同。原创 2023-09-05 23:46:01 · 147 阅读 · 0 评论 -
K8S系列:创建本地容器镜像、运行本地容器镜像
d 标志容器与命令行分离本机上的8090端口会被映射到容器内的8080端口。原创 2023-09-05 23:37:33 · 1088 阅读 · 0 评论 -
K8S系列:创建第一个NodePort应用
任意节点都可以访问。原创 2023-09-04 00:40:20 · 104 阅读 · 0 评论 -
K8S系列:推送镜像到Harbor
找一个本地镜像。原创 2023-09-03 22:37:07 · 102 阅读 · 0 评论 -
K8S系列:Harbor docker login配置
-insecure-registry=IP #IP为harbor地址。#新增--insecure-registry。在需要连接harbor的服务器中。原创 2023-09-03 22:30:47 · 203 阅读 · 0 评论 -
K8S系列:本地Registry的图形化(Habor)
1、手动从daemon.json中删除insecure-registries属性。2、停止然后删除registry启动的容器。hostname = 你的ip地址。注意:如果之前手动安装了本地仓库。3、删除本地仓库镜像。原创 2023-09-05 00:30:00 · 55 阅读 · 0 评论 -
K8S系列:创建本地镜像仓库,上传images镜像至本地仓库
--restart=always参数表示在docker服务重新启动时自动启动此容器。原创 2023-09-04 02:00:00 · 897 阅读 · 0 评论 -
K8S系列:创建一个Node.js应用完整demo
【代码】K8S系列:创建一个Node.js应用完整demo。原创 2023-09-06 00:15:00 · 91 阅读 · 0 评论 -
K8S系列:部署 k8s可视化界面dashboard
效果原创 2022-10-10 01:00:00 · 222 阅读 · 0 评论 -
K8S系列:VMware虚拟机部署k8s集群
最终效果原创 2022-10-08 00:27:01 · 963 阅读 · 0 评论 -
k8s系列:node节点 kubeadmin init报错http://localhost:10248/healthz‘ failed
node节点 kubeadmin init报错http://localhost:10248/healthz‘ failed。原创 2022-10-09 00:45:00 · 332 阅读 · 0 评论 -
K8S系列:calico “calico.yaml“: no matches for kind “PodDisruptionBudget“ in version “policy/v1“
解决方案。原创 2022-10-08 10:30:00 · 316 阅读 · 0 评论 -
K8S系列:容器实现app应用资源隔离原理
一个进程的资源(CPU、内存、网络带宽等)使用量不能超出被分配的量。多个进程运行在同一个操作系统上,那容器到底是怎样隔离它们的。被用来限制一个进程或者一组进程的资源使用。每种命名空间被用来隔离一组特定的资源。它使每个进程只看到它自己的系统视图(进程将只能看到同一个命名空间下的资源。文件、进程、网络接口、主机名。它限制了进程能使用的资源量(CPU、内存、网络带宽。原创 2022-09-28 07:43:39 · 720 阅读 · 0 评论 -
K8S系列:Service类型(ClusterIP、NodePort区别)
默认的Service类型原创 2022-06-06 01:00:00 · 857 阅读 · 0 评论 -
K8S系列:Service属性NodePort中targetPort、port、nodePode区别
targetPort:容器本身的端口(默认:30000-32767)(与制作容器时暴露的端口一致DockerFile中EXPOSE)port:Service使用的端口,暴露给K8s访问的nodePode:Service使用的端口,nodePort是暴露给外部访问的。原创 2022-06-07 00:00:00 · 923 阅读 · 1 评论 -
K8S系列:负载分发策略
SessionAffinity基于客户端IP地址进行会话保持/关联的模式应用场景第1次将某个客户端发起的请求转发到后端的某个Pod上,之后从相同的客户端发起的请求都将被转发到后端相同的Pod上demoapiVersion: v1kind: Servicemetadata: name: NIO4444 namespace: opsspec: selector: app: myapp type: ClusterIP ports: - n..原创 2022-05-31 08:30:00 · 322 阅读 · 0 评论 -
K8S系列:为什么需要 headless service 无头服务和volumeClaimTemplate
目录为什么需要 headless service 无头服务?为什么需要volumeClaimTemplate?为什么需要 headless service 无头服务?pod IP是变化的,所以是以Pod名称来识别。要用到无头服务headless service ,它可以给每个Pod一个唯一的名称 。为什么需要volumeClaimTemplate?为每个Pod生成不同的pvc,并绑定pv,从而实现各pod有专用存储。这就是为什么要用volumeClaimTemplate原创 2022-05-27 23:31:41 · 777 阅读 · 0 评论 -
K8S系列:简单理解statefulset资源类型
目录基础知识statefulset的应用场景statefulset开发步骤statefulset和deployment的区别基础知识K8S系列:Deployment、StatefulSet、Job区别_NIO4444的博客-CSDN博客Deployment:无状态服务StatefulSet:有状态集群Job:批处理应用https://blog.csdn.net/VIP099/article/details/124640861statefulset的应用场景statefu原创 2022-05-25 13:59:45 · 246 阅读 · 0 评论 -
K8S系列:Service的理解
目录ServiceService的类型ServiceService用于为一组提供服务的Pod抽象一个稳定的网络访问地址。Service主要用于提供网络服务,通过Service的定义,能够为客户端应用提供稳定的访问地址(域名或IP地址)和负载均衡功能,以及屏蔽后端Endpoint的变化,Service的类型◎ ClusterIP:Kubernetes默认会自动设置Service的虚拟IP地址,仅可被集群内部的客户端应用访问。当然,用户也可手工指定一个ClusterI原创 2022-05-16 04:00:00 · 290 阅读 · 0 评论 -
K8S系列:Pod的扩缩容方法
手动扩缩容机制scale自动扩缩容机制scaleTargetRef也可以自定义一些指标当到达指标设置阈值时,进行扩容原创 2022-05-16 01:00:00 · 314 阅读 · 0 评论 -
K8S系列:StatefulSet的更新策略
目录RollingUpdateOnDeletePartitionedRollingUpdate当updateStrategy的值被设置为RollingUpdate时,StatefulSet Controller会删除并创建StatefulSet相关的每个Pod对象,其处理顺序与StatefulSet终止Pod的顺序一致,即从序号最大的Pod开始重建,每次更新一个Pod。注意,如果StatefulSet的Pod Management Policy被设置为OrderedReady,则可原创 2022-05-16 00:45:00 · 2256 阅读 · 0 评论 -
K8S系列:DaemonSet的更新策略
目录OnDeleteRollingUpdate不同于普通Pod的滚动升级目前DaemonSet的升级策略(updateStrategy)包括两种:OnDelete和RollingUpdate。OnDeleteOnDelete:DaemonSet的默认升级策略,与1.5及之前版本的Kubernetes保持一致。当使用OnDelete作为升级策略时,在创建好新的DaemonSet配置之后,新的Pod并不会被自动创建,直到用户手动删除旧版本的Pod,才触发新建操作,即只有手工删除原创 2022-05-17 01:00:00 · 2144 阅读 · 0 评论 -
K8S系列:Deployment更新、锁定、解锁、回滚版本
目录暂停deployment更新(锁定,防止别人同时更新)编辑deployment配置文件查看Deployment更新历史版本恢复deployment更新(解锁)编辑连续执行Deployment的更新Deployment回滚到上一个版本Deployment回滚到指定版本编辑暂停deployment更新(锁定,防止别人同时更新)编辑deployment配置文件查看Deployment更新历史版本恢复deployment更新(解锁)..原创 2022-05-21 00:45:00 · 481 阅读 · 0 评论 -
K8S系列:pod更新镜像方法、原理
更新image编辑Deployment验证方法以使用kubectl rollout status命令查看Deployment的更新过程原理以使用kubectl describe deployments/nginx-deployment命令仔细观察Deployment的更新过程。初始创建Deployment时,系统创建了一个ReplicaSet(nginx-deployment-4087004473),并按用户的需求创建了3个Pod副本。更新Deploy.原创 2022-05-15 17:47:01 · 2035 阅读 · 0 评论