首页
云原生
docker
containerd
Kubernetes
Prometheus
基础知识
操作系统
计算机网络
Linux基础
基础设施
Nginx
Devops
gitlab
jenkins
Maven
Ansible
前端
日志监控
数据库
MySQL
Redis
Oracle
编程
shell
python
其他
hyperledger-fabric
系统安全
运维相关工具
友情链接
归档
关于
Gaoyufu 's blog
好好活就是有意义的事,有意义的事就是好好活
累计撰写
257
篇文章
累计创建
92
个标签
累计收到
7
条评论
栏目
首页
云原生
docker
containerd
Kubernetes
Prometheus
基础知识
操作系统
计算机网络
Linux基础
基础设施
Nginx
Devops
gitlab
jenkins
Maven
Ansible
前端
日志监控
数据库
MySQL
Redis
Oracle
编程
shell
python
其他
hyperledger-fabric
系统安全
运维相关工具
友情链接
归档
关于
目 录
CONTENT
Kubernetes-Gaoyufu 's blog
以下是
Kubernetes
相关的文章
2023-05-25
二进制高可用安装k8s集群
这是一份关于Kubernetes集群部署与配置的详细指南,包含了从环境准备、证书生成、Kubernetes组件安装、网络配置、集群验证到ETCD备份的完整步骤。该指南详细说明了如何部署Kubernetes集群,并确保集群的正常运行和安全性。 主要步骤包括: 1. 环境准备:配置主机名、IP地址、网络规划、主机间的密钥通信等。 2. 证书生成:为Kubernetes集群生成所需的各种证书,如etcd证书、apiserver证书、kube-proxy证书等。 3. Kubernetes组件安装:安装kube-apiserver、kube-controller-manager、kube-scheduler、kubelet、kube-proxy等组件。 4. 网络配置:配置网络插件,如Flannel或Calico,确保节点间的通信和Pod间的网络通信。 5. 集群验证:通过检查节点状态、Pod状态、网络配置、服务访问等来验证集群是否正常。 6. ETCD备份:设置定时任务,定期备份ETCD数据,确保数据的安全性和可恢复性。 这份指南为Kubernetes的初学者和中级用户提供了全面的部署和配置指南,确保他们能够成功地部署和配置Kubernetes集群。
2023-05-25
109
0
0
云原生
Kubernetes
2022-05-10
Kubernetes基本概念
这篇学习笔记主要介绍了Kubernetes(K8s)的基础知识、组件、Pod的创建和故障排查等。K8s是一个由Google开源的、用于自动化部署、扩展和管理容器化应用程序的平台。该笔记详细解释了K8s的Master节点和Node组件,包括Kube-APIServer、Controller-Manager、Scheduler和Etcd等,以及Pod的创建、重启策略、探针、启动和退出流程等。此外,还介绍了如何设置Pod的镜像拉取策略、探针检测方式以及参数配置,如初始化时间、超时时间、检测间隔等。通过这些知识,读者可以深入了解K8s的架构和运行机制,为在K8s环境中部署和管理应用程序打下坚实的基础。
2022-05-10
108
0
0
云原生
Kubernetes
2022-05-10
资源调度
本文介绍了Kubernetes中多种资源对象的管理方法,包括: 1. Replication Controller (RC) 和 ReplicaSet (RS):用于管理Pod的创建和复制,确保集群中始终有指定数量的Pod副本运行。 2. Deployment:用于管理无状态应用的Pod,可以实现滚动更新、自动扩展和灾难恢复等功能。 3. StatefulSet:用于管理有状态应用的Pod,确保每个Pod都有唯一的标识符,并能在节点间保持有序的部署和更新。 4. DaemonSet:用于在每个符合条件的节点上部署一个Pod,常用于运行集群存储、日志收集、监控等守护进程。 5. Label和Selector:用于对Kubernetes中的资源进行分类和分组,通过Label选择器可以精确地选择资源对象。 6. Horizontal Pod Autoscaler (HPA):根据CPU、内存等资源使用情况自动调整Pod的副本数,实现自动扩缩容,确保应用服务的稳定运行。 此外,还介绍了如何创建、更新、扩容和缩容这些资源对象,以及如何通过Label和Selector对Pod进行选择和部署。通过这些方法,可以更加灵活和高效地管理Kubernetes集群中的资源,确保应用服务的可用性和性能。
2022-05-10
130
0
0
云原生
Kubernetes
2022-05-10
配置管理
从您的描述来看,您正在讨论Kubernetes中的ConfigMap和Secret的使用限制以及不可变性。以下是关于这些点的详细解释: 1. **使用限制**: * **引用Key必须存在**: 当使用ConfigMap或Secret为Pod提供环境变量时,引用的key必须在ConfigMap或Secret中存在。如果不存在,它将不会被赋予任何值。 * **envFrom、valueFrom无法热更新环境变量**: 使用`envFrom`或`valueFrom`引用的ConfigMap或Secret在更新后不会立即更新Pod的环境变量。需要采取其他措施(如重新部署Pod)来使更新生效。 * **key无效时忽略**: 如果使用`envFrom`配置环境变量时某个key是无效的,Kubernetes会忽略这个无效的key,其他有效的key还是会正常设置。 * **命名空间限制**: ConfigMap和Secret必须和引用它们的Pod或资源在同一个Kubernetes命名空间中。 * **subPath无法热更新**: 使用subPath挂载的ConfigMap或Secret在更新后不会反映在已经运行的Pod上。 * **大小限制**: ConfigMap和Secret的大小应该适中,过大的ConfigMap或Secret可能导致性能问题和管理困难。 2. **不可变性**: * 对于某些关键或不可变的数据,可以通过设置`immutable`字段为`true`来确保ConfigMap或Secret不被更改。一旦设置为不可变,就不能再修改或删除这个资源,除非先删除正在使用这个资源的Pod。在您的例子中,通过设置`immutable: true`在ConfigMap中,确保了该ConfigMap不可更改。如果尝试编辑一个设置为不可变的ConfigMap,将会收到一个错误消息,告知该资源是不可变的。 总之,为了确保数据的完整性和安全性,对于重要的配置或敏感信息,应该合理使用ConfigMap和Secret,并注意其使用限制和不可变性特性。
2022-05-10
106
0
0
云原生
Kubernetes
2022-05-10
高级调度
摘要总结: 本文介绍了Kubernetes中的QoS(服务质量)概念、资源配额(ResourceQuota)、资源限制(LimitRange)、污点(Taint)和容忍(Toleration)、拓扑域(Topology)、亲和性(Affinity)等概念以及它们的配置和使用。 1. QoS:Kubernetes使用QoS来决定Pod的调度和驱逐策略,包含Guaranteed、Burstable和BestEffort三个级别。 2. ResourceQuota:用于限制命名空间内的资源使用量,如CPU、内存、存储等。 3. LimitRange:在命名空间中实施对每个Pod或Container的资源使用量限制。 4. Taint和Toleration:Taint用于给节点设置污点,Toleration用于让Pod容忍节点的污点。 5. Topology:定义了Pod部署的拓扑域,如节点、机柜、机房或地区。 6. Affinity:用于指定Pod与节点或其他Pod之间的亲和性或反亲和性。 文中通过具体配置和例子展示了如何在Kubernetes中设置和使用这些资源管理和调度策略,确保集群内资源的合理使用和Pod的正确调度。这些策略有助于优化Kubernetes集群的性能和资源利用率。
2022-05-10
138
0
0
Kubernetes
云原生
2022-05-10
通过阿里云容器镜像服务下载gcr.io镜像
摘要: 本文介绍了如何通过阿里云容器镜像服务下载被墙的 Kubernetes(k8s)集群部署所需的镜像。由于在国内访问 Google Container Registry(gcr.io)会被墙,导致无法正常下载镜像,从而无法完成集群的安装。文章提供了一种解决方案,即通过阿里云容器镜像服务免费下载这些镜像。具体步骤包括在 GitHub 上创建 repository 并上传所需的 Dockerfiles,然后在阿里云容器镜像服务中创建镜像仓库并选择代码源进行构建。通过这种方式,可以成功下载被墙的镜像并用于部署 k8s 集群。文章总结了整个过程的操作步骤和注意事项,为读者提供了实用的参考。
2022-05-10
89
0
0
云原生
Kubernetes
2022-05-10
服务器配置选型及网段划分
这篇文章主要介绍了服务器配置选型以及网段划分在Kubernetes(k8s)集群安装中的应用。首先,文章介绍了不同环境下服务器配置的选择,包括学习环境、实战环境、企业测试环境和企业生产环境的不同需求。接着,文章详细阐述了网段划分的重要性,解释了集群安装时会涉及的三个网段:宿主机网段、Pod网段和Service网段,并强调了这三个网段不能有任何交叉,以避免网络冲突。在选择网段时,可以根据宿主机的IP地址来选择适合的网段,同时要注意避免网络交叉。整篇文章结构清晰,内容详实,为搭建Kubernetes集群提供了有价值的参考。
2022-05-10
119
0
0
云原生
Kubernetes
2022-05-10
持久化存储入门
本文介绍了Kubernetes中Volumes和PersistentVolumes(PV)与PersistentVolumeClaims(PVC)的概念和用法。Kubernetes的Volumes允许容器访问持久和临时性文件,包括emptyDir、hostPath、NFS、CephRBD等类型。PersistentVolumes(PV)和PersistentVolumeClaims(PVC)用于存储持久数据,其中PV是管理员设置的存储资源,PVC是对存储资源的请求。 PV和PVC配合使用,PVC用于声明存储需求,PV则提供了实际的存储资源。PV支持多种回收策略,如Retain、Recycle和Delete,以及不同的访问模式,如ReadWriteOnce、ReadOnlyMany和ReadWriteMany。 文章还提供了创建和使用PV和PVC的示例,包括NFS、HostPath和CephRBD类型的PV,以及创建和使用PVC的步骤。这些示例说明了如何在Kubernetes中设置和使用持久存储,确保数据在容器重启或销毁后仍然保留。 注意,当PVC请求的空间大于PV提供的空间,或者PVC的StorageClassName、accessModes与PV不匹配时,PVC可能会处于Pending状态,直到有合适的PV可用。此外,PVC和Pod必须在同一Namespace中,以便正确挂载。删除PVC后,Kubernetes会根据PV的回收策略进行回收,并更新PV的状态,以便其他PVC可以绑定。
2022-05-10
133
0
0
Kubernetes
云原生
2022-05-10
服务发布
这段摘要主要介绍了Kubernetes中的Service和Ingress两个核心概念。Service是Kubernetes中的一种抽象概念,用于逻辑上的一组Pod,可以通过Service进行通信。Service有三种类型:ClusterIP、NodePort、LoadBalancer。此外,还介绍了Service的代理功能,包括代理k8s外部应用和域名代理。Ingress是Kubernetes提供的另一种资源类型,用于实现用域名的方式访问k8s内部应用,提供了负载均衡、SSL终止等功能。文章还详细描述了如何安装Ingress Controller、使用域名发布K8s的服务以及Ingress的一些特例。最后,文章提到了Ingress接口的变化解析。
2022-05-10
86
0
0
Kubernetes
云原生
1
2