
Kubernetes实战
文章平均质量分 78
Kubernetes实战
forest_long
这个作者很懒,什么都没留下…
展开
-
【Kubernetes实战】(一)列表导读
【Kubernetes实战】(一)列表导读【Kubernetes实战】(二)Kubernetes基本介绍【Kubernetes实战】(三)Kubernetes基本概念【Kubernetes实战】(四)MiniKube方式部署【Kubernetes实战】(五)KubeAdm方式部署【Kubernetes实战】(六)Kind方式部署【Kubernetes实战】(七)集群命令【Kubernetes实战】(八)命名空间NameSpace【Kubernetes实战】(九)Pod 相关命令【Kubernetes实战】(原创 2023-03-19 22:26:25 · 251 阅读 · 0 评论 -
【Kubernetes实战】使用ConfigMap+Servie+StatefulSet搭建Redis
StatefulSet是用来管理有状态应用的工作负载 API 对象,kubectl中可以简写为sts。sts每个Pod生成一个唯一的标识符 sts_name-number,number从0开始。StatefulSet会关联卷(volume),删除时不会删除卷,之后PV、PVC的文章中再详细介绍。StatefulSet需要headless service,需要你去创建该服务,之后service文章中再详细介绍。StatefulSet不保证Pod数量不为0,顺序创建,倒序删除原创 2023-04-02 20:11:58 · 306 阅读 · 0 评论 -
【Kubernetes实战】(二十四)Pod 控制器StatefulSet相关命令
在Deployment中,与之对应的服务是service,而在StatefulSet中与之对应的headless service,headless service,即无头服务,与service的区别就是它没有Cluster IP,解析它的名称时将返回该Headless Service对应的全部Pod的Endpoint列表。RC、Deployment、DaemonSet都是面向无状态的服务,它们所管理的Pod的IP、名字,启停顺序等都是随机的,而StatefulSet是什么?二、StatefulSet介绍。原创 2023-04-02 19:42:31 · 219 阅读 · 0 评论 -
【Kubernetes实战】(七)Linux安装 KubeSphere
参考。对于刚接触 KubeSphere 并想快速上手该容器平台的用户,All-in-One 安装模式是最佳的选择,它能够帮助您零配置快速部署 KubeSphere 和 Kubernetes。若需使用 KubeKey 来安装 Kubernetes 和 KubeSphere 3.3,请参见下表以查看所有受支持的 Kubernetes 版本。也可以运行 ./kk version --show-supported-k8s,查看能使用 KubeKey 安装的所有受支持的 Kubernetes 版本。能使用 Kube原创 2023-04-02 16:23:03 · 346 阅读 · 0 评论 -
【Kubernetes实战】(二十三)数据存储 PV 和 PVC
持久化卷,是对底层的共享存储的一种抽象。一般情况下PV由Kubernetes管理员进行创建和配置,它与底层具体的共享存储技术有关,持久化卷,是对底层的共享存储的一种抽象。一般情况下PV由Kubernetes管理员进行创建和配置,它与底层具体的共享存储技术有关,并通过插件完成与共享存储的对接。持久化卷,是对底层的共享存储的一种抽象。一般情况下PV由Kubernetes管理员进行创建和配置,它与底层具体的共享存储技术有关,并通过插件完成与共享存储的对接。持久化卷,是对底层的共享存并通过插件完成与共享存储的对接。原创 2023-03-30 23:56:48 · 1451 阅读 · 0 评论 -
【Kubernetes实战】(二十二)数据存储 Secret
和ConfigMap非常类似,主要用于存储敏感信息,例如密码、秘钥、证书等。动态更新(定时更新),密文存储(describe不能看到信息,和ConfigMap非常类似,主要用于存储敏感信息,例如密码、秘钥、证书等。动态更新(定时更新),密文存储(describe不能看到信息,但在Pod容器中会还原成明文)和ConfigMap非常类似,主要用于存储敏感信息,例如密码、秘钥、证书等。动态更新(定时更新),密文存储(describe不能看到信息,但在Pod容器中会还原成明文)和Con但在Pod容器中会还原成明文)原创 2023-03-30 23:50:41 · 205 阅读 · 0 评论 -
【Kubernetes实战】(二十一)数据存储 NFS
HostPath可以解决数据持久化的问题,但是一旦Node节点故障了,Pod如果转移到了别的节点,又会出现问题了,此时需要准备单独的网络存储系统,比较常用的用NFSCIFS。NFS是一个网络文件存储系统,可以搭建一台NFS服务器,然后将Pod中的存储直接连接到NFS系统上。特点:无论Pod在节点上怎么转移,只要Node跟NFS的对接没问题,数据就可以成功访问。原创 2023-03-30 23:41:34 · 316 阅读 · 0 评论 -
【Kubernetes实战】(二十)数据存储 ConfigMap
ConfigMap是一种比较特殊的存储卷,它的主要作用是用来存储配置信息的。特点:动态更新(定时更新),明文存储(describe可看到信息)三、ConfigMap使用。原创 2023-03-30 23:31:45 · 413 阅读 · 0 评论 -
【Kubernetes实战】(十九)数据存储 HostPath
HostPath就是将Node主机中一个实际目录挂载到Pod中,以供容器使用。Pod销毁,但是数据依然可以存在于Node主机上。HostPath就是将Node主机中一个实际目录挂载到Pod中,以供容器使用。Pod销毁,但是数据依然可以存在于Node主机上。HostPath就是将Node主机中一个实际目录挂载到Pod中,以供容器使用。Pod销毁,但是数据依然可以存在于Node主机上。HostPath就是将Node主机中一个实际目录挂载到Pod中,以供容器使用。Pod销毁,但是数据依然可以存在于Node主机上。原创 2023-03-30 18:45:19 · 719 阅读 · 0 评论 -
【Kubernetes实战】(十八)数据存储 EmptyDir
EmptyDir是最基础的Volume类型,一个EmptyDir就是宿主机上的一个空目录。EmptyDir是在Pod被分配到Node时创建的,它的初始内容为空,并且无须指定宿主机上对应的目录文件,Kubernetes会自动分配一个目录,当Pod销毁时,EmptyDir中的数据也会被永久删除。临时空间,例如用于某些应用程序运行时所需的临时目录,且无须永久保留。一个容器需要从另一个容器中获取数据的目录(多容器共享目录)。原创 2023-03-30 18:37:55 · 523 阅读 · 0 评论 -
【Kubernetes实战】(十七)Ingress 控制器
1、基本概念Ingress相当于一个7层的负载均衡器,是Kubernetes对反向代理的一个抽象,它的工作原理类似于Nginx,可以理解成在** Ingress 里建立诸多映射规则,Ingress Controller 通过监听这些配置规则并转化成 Nginx 的反向代理配置,然后对外部提供服务**。IngressKubernetes中的一个对象,作用是定义请求如何转发到Service的规则:具体实现反向代理及负载均衡的程序,对Ingress。原创 2023-03-27 15:23:41 · 286 阅读 · 0 评论 -
【Kubernetes实战】(十六)Service 对外提供访问相关命令
Kubernetes Pod 是有生命周期的,它们可以被创建,也可以被销毁,然而一旦被销毁生命就永远结束。通过 ReplicationController 能够动态地创建和销毁 Pod(例如,需要进行扩缩容,或者执行 滚动升级)。每个 Pod 都会获取它自己的 IP 地址,即使这些 IP 地址不总是稳定可依赖的。原创 2023-03-25 21:15:14 · 697 阅读 · 0 评论 -
【Kubernetes实战】(十五)Pod 控制器 CronJob相关命令
cronjob是管理job,也就是每一个周期创建一个job去执行任务,一次只能管理一个job。cronjob其实就是在Job的基础上加上了时间调度,我们可以:在给定的时间点运行一个任务,也可以周期性地在给定时间点运行。这个实际上和Linux中的crontab就非常类似了。一个cronjob对象其实就对应crontab文件中的一行,它根据配置的时间格式周期性地运行一个Job,格式和crontab也是一样的。原创 2023-03-25 18:44:27 · 691 阅读 · 0 评论 -
【Kubernetes实战】(十四)Pod 控制器 Job相关命令
Kubernetes jobs主要是针对短时和批量的工作负载。它是为了结束而运行的,而不是像deployment、replicasets、replication controllers和DaemonSets等其他对象那样持续运行。Kubernetes Jobs会一直运行到Job中指定的任务完成。也就是说,如果pods给出退出代码0,那么Job就会退出。而在正常的Kubernetes中,无论退出代码是什么,deployment对象在终止或出现错误时都会创建新的pod,以保持deployment的理想状态。原创 2023-03-25 18:27:25 · 457 阅读 · 0 评论 -
【Kubernetes实战】(十三)Pod 控制器 DaemonSet相关命令
Deployment 部署的副本 Pod 会分布在各个 Node 上,每个 Node 都可能运行好几个副本。DaemonSet 的不同之处在于:每个 Node 上最多只能运行一个副本。1)daemonset 是众多控制器中的一种(其他还有deployment等等),它的作用是保证在每个节点只部署一个Pod,而且是只在pod 模板中定义的标签的节点上保证运行一个pod。2)如果节点下线, DaemonSet不会在其他地方重新创建pod。原创 2023-03-25 17:12:26 · 720 阅读 · 0 评论 -
【Kubernetes实战】(十二)Pod 控制器 Deployment相关命令
对于kubernetes来说Pod是资源调度最小单元,kubernetes主要的功能就是管理多个Pod,Pod中可以包含一个或多个容器,而kubernetes是如可管理多个Pod的呢?对,没错,就是通过控制器,比如Deployment和ReplicaSet(rs)。kubernetes下有多个Deployment,Deployment下管理RepliceSet,通过RepliceSet管理多个Pod,通过Pod管理容器。原创 2023-03-25 16:09:59 · 1319 阅读 · 0 评论 -
【Kubernetes实战】(十一)Pod 控制器 ReplicaSet相关命令
Replication Set简称RS,随着Kubernetes的高速发展,官方已经推荐我们使用RS和Deployment来代替RC了,实际上RS和RC的功能基本一致,目前唯一的一个区别就是RC只支持基于等式的selector(env=dev或environment!=qa),但RS还支持基于集合的selector(version in (v1.0, v2.0)),这对复杂的运维管理就非常方便了。使用edit编辑副本集名为pc-replicaset的配置。删除 ReplicaSet。原创 2023-03-25 15:42:40 · 787 阅读 · 0 评论 -
【Kubernetes实战】(九)Pod 相关命令
Pod是k8s系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在k8s上运行容器化应用的资源对象,其他的资源对象都是用来支撑或者扩展Pod对象功能的,比如控制器对象是用来管控Pod对象的,Service或者Ingress资源对象是用来暴露Pod引用对象的,PersistentVolume资源对象是用来为Pod提供存储等等,k8s不会直接处理容器,而是Pod,Pod是由一个或多个container组成。原创 2023-03-25 13:33:10 · 614 阅读 · 0 评论 -
【Kubernetes实战】(十)Label 相关命令
1、Label其实就一对 key/value ,被关联到对象上,比如Pod,标签的使用我们倾向于能够标示对象的特殊特点,Labels的值对系统本身并没有什么含义,只是对用户才有意义。同一个资源对象的labels属性的key必须唯一,label可以附加到各种资源对象上,如Node,Pod,Service,RC等。一个资源拥有多个标签,可以实现不同维度的管理。当相同类型的资源越来越多,对资源划分管理是很有必要,此时就可以使用Label为资源对象 命名,以便于配置,部署等管理工作,提升资源的管理效率。原创 2023-03-25 13:16:53 · 575 阅读 · 0 评论 -
【Kubernetes实战】(八)命名空间NameSpace
3)PersistentVolumes是不属于任何namespace的,但PersistentVolumeClaim是属于 某个特定namespace的。结合资源配额机制,限定不同租户能占用的资源,例如CPU使用量、内存使用量等,实现租户可用资源的管理。1)删除一个namespace会自动删除所有属于该namespace的资源。4)Events是否属于namespace取决于产生events的对象。多套环境的资源隔离或者多租户的资源隔离。namespace可简写为ns。命名为:ns-dev.yml。原创 2023-03-22 22:25:45 · 543 阅读 · 0 评论 -
【Kubernetes实战】(七)集群命令
参考。下载二进制文件curl -k -LO "https://dl.k8s.io/release/$(curl -k -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"2、添加可执行权限chmod +x ./kubectl3、移动至系统环境mv ./kubectl /usr/bin/kubectl原创 2023-03-22 22:10:45 · 207 阅读 · 0 评论 -
【Kubernetes实战】(六)Kind方式部署Kubernetes
三、创建 Kubernetes。卸载 Kubernetes。二、安装kubectl。下载二进制文件curl -k -Lo ./kind https://kind.sigs.k8s.io/dl/v0.14.0/kind-linux-amd64添加可执行权限chmod +x ./kind移动至系统环境mv ./kind /usr/bin/kind二、安装kubectl下载二进制文件curl -k -LO "https://dl.k8s.io/release/$(curl -k -L -s原创 2023-03-22 14:18:15 · 602 阅读 · 0 评论 -
【Kubernetes实战】(五)KubeAdm方式部署
选择指定的命名空间`dev`,然后点击`Deployments`,查看dev空间下的所有deployment。# 2、编辑/etc/yum.repos.d/kubernetes.repo,添加下面的配置。# 此镜像kubernetes的仓库中,由于网络原因,无法连接,下面提供了一种替换方案。#编辑/etc/sysconfig/kubelet, 删掉原来的,添加下面的配置。在`Deployment`上点击`规模`,然后指定`目标副本数量`,点击确定。原创 2023-03-20 12:59:45 · 464 阅读 · 0 评论 -
【Kubernetes实战】(四)MiniKube方式部署
minikube start --vm-driver=none --kubernetes-version='v1.18.0' # –vm-driver=none表示使用Linux本机作为运行环境,--kubernetes-version表示使用的版本。echo "1" >/proc/sys/net/bridge/bridge-nf-call-iptables # 在bridge-nf-call-iptables 写入1。3.安装docker,docker版本需要与Kubernetes版本能够兼容使用。原创 2023-03-20 12:54:23 · 1033 阅读 · 0 评论 -
【Kubernetes实战】(三)Kubernetes基本概念
Pod 是 Kubernetes 调度的基本单位。 当我们在 Kubernetes 上创建 Deployment 时,该 Deployment 会在其中创建包含容器的 Pod (而不是直接创建容器)。每个 Pod 都与调度它的 Node 绑定,并保持在那里直到终止(根据重启策略)或删除。 如果 Node 发生故障,则会在群集中的其他可用 Node 上调度相同的 Pod。 Kub负责管理群集,协调集群中的所有活动,例如调度应用程序,维护应用程序的所需状态,扩展应用程序以及推出新的更新。原创 2023-03-19 22:26:40 · 225 阅读 · 0 评论 -
【Kubernetes实战】(二)Kubernetes基本介绍
kubernets是一个可以移植、可扩展的开源平台,使用声明式的配置并依据配置信息自动地执行容器化应用程序的管理。在所有的容器编排工具中(类似的还有docker swarm/mesos等)kubernetes的生态系统更大、增长更快,有更多的支持、服务和工具可供用户选择。kubernetes的名字起源于希腊语,含义是舵手、领航员、向导。Google于2014年将Brog系统开源为kubernetes。原创 2023-03-19 22:24:31 · 239 阅读 · 0 评论