Kubernetes

kubernetes之 高级调度方式

调度方式 节点选择器:nodeSelector、nodeName 节点亲和调度:nodeAffinityTaint的effect定义对pod排斥效果[root@k8s-master pki]# kubectl explain pods.spec.nodeSelector[root@k8s-maste ......
kubernetes 方式

通过kubectl连接Kubernetes集群

1、安装kubectl 本地客户端安装kubectl 添加kubernete 阿里云yum源 # cat > /etc/yum.repos.d/kubernetes.repo << EOF [kubernetes] name=Kubernetes baseurl=https://mirrors.al ......
集群 Kubernetes kubectl

sshpiper 在 Kubernetes 上的应用

# sshpiper 在 Kubernetes 上的应用 ## 介绍 [GitHub Repo](https://github.com/tg123/sshpiper/tree/master/plugin/kubernetes) 一个反向代理目标服务器的 proxy,客户端想请求某个 ssh 服务器, ......
Kubernetes sshpiper

kubernetes之 dashboard展示

第十一 dashboard展示一直使用kubectl命令操作apiserver实现dashboard作为k8s核心附件存在的,官网部署:https://github.com/kubernetes/dashboard根据教程,还是安装老版本的镜像吧[root@k8s-master dashboard] ......
kubernetes dashboard

kubernetes之 RBAC

第十一部分 RBACrestful操作对象:许可授权都作用于角色,用户是什么角色,就拥有什么操作权限授权插件:Node、ABAC、RBAC、Webhook RBAC:Role-based AC 角色:Role 许可:permission关联图示 客户端访问示意图: role: operations: ......
kubernetes RBAC

kubernetes之 认证和serviceaccount

第十部分 认证和serviceaccount前面讲的都是admin超级用户在操作k8s,Kubectl不能所有人都可以使用和访问。用户访问逻辑图, 认证:第一种令牌认证token,最简单的认证,(只需要对方认证的共享密钥即可)服务器需要认可客户端的证书。授权:RBAC,基于角色的访问控制,目前用的比 ......
serviceaccount kubernetes

kubernetes之 statefulset控制器

第九部分 statefulset控制器参考:https://blog.csdn.net/styshoo/article/details/73731993 https://blog.51cto.com/xuexinhuan/5424144即便是有状态管理,也需要使用脚本来运维。CoreOS:Opera ......
控制器 statefulset kubernetes

kubernetes网络模式

一个K8s的集群中至少有三个网络: 集群节点所在的网络,这个网络就是你的主机所在的网络,通常情况下是你的网络基础设施提供。如果你的node处于不同的网段,那么你需要保证路由可达。如上图中的 192.168.10.0/24和10.0.0.0/8这两个网络 第二个网络是Pod的网络, K8s中一个Pod ......
kubernetes 模式 网络

Ubuntu部署Kubernetes

## Docker安装 信任**Docker**的**GPG**公钥: ```shell curl -fsSL https://repo.huaweicloud.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -` ``` 添加软件仓库: ```s ......
Kubernetes Ubuntu

kubernetes之 pv、pcv、cm、secret引入

第八部分 pv、pcv、cm、secret引入pv、pvc如果pvc需要空间很多,pv空间不足以支持,那么生产的pod就会一致hang住,这就需要根据pvc容量,动态生成pv了。借助中间层StorageClass:针对尚有存储空间,还未做成PV的空间进行分类。需要restful接口,做强认证 cm明 ......
kubernetes secret pcv

(三)kubernetes部署storm

Kubernetes是一个支持弹性运行的分布式系统框架,因此在部署storm时想让Supervisor的数目支持动态变化。那么对于持久化存储就不能像zookeeper和kakfa那样直接静态创建nfs目录并挂载。 **首先需要配置一个nfs目录,可参考前面两节的nfs目录创建与配置。** #### ......
kubernetes storm

kubernetes 实现 list-watch 的底层原理

我们都知道,controller-manager, scheduler, kubelet 会向 apiserver 监听感兴趣的对象,当监听对象的内容或状态发生变化后,对应的事件会立即推送到监听者。借由这套事件通知机制,kubernetes 才能良好地运转。那么这套事件通知机制是如何实现并驱动的呢? ......
底层 kubernetes list-watch 原理 watch

(二)kubernetes部署kafka

与前面的zookeeper一样需要持久化存储,因此还是先创建PV,然后再部署kafka。 ##### 2、配置nfs **创建需要作为nfs共享的目录** `mkdir /home/nfs/kafka-0` **添加权限** `chmod 777 /home/nfs/kafka-0` **编辑配置* ......
kubernetes kafka

(一)Kubernetes部署Zookeeper

由于pod退出后数据就消失了,因此需要持久化存储。首先需要搭建nfs服务。nfs(Network File System)是一个网络文件系统,使用该文件系统可以将数据存储在特定存储服务器上,以便pod重启后恢复原来的数据。 #### NFS搭建 ##### 1、安装nfs `sudo apt-get ......
Kubernetes Zookeeper

Kubernetes轻量级日志工具Loki安装及踩坑记录

# Loki简介 Loki是Grafana出品的一个轻量级日志系统,熟悉ELK的都知道ELK使用起来的成本,而且仅仅是日志检索使用ELK的话有点大材小用了。Loki8技术栈中使用了以下组件。 - Promtail 用来将容器日志发送到 Loki 或者 Grafana 服务上的日志收集工具,该工具主要 ......
轻量 轻量级 Kubernetes 工具 日志

kubernetes之 存储卷

第八部分 kubernetes之 存储卷脱离节点而存在共享存储。存储卷不属于容器,他属于pod缓存,宿主机,不具备真正意义上存储,宿主机退役后,存储资源随之丢失,除非宿主机上也挂载独立的卷信息。 容器真正意义上的存储卷类型emptyDir:pod删除,存储内容也删除,只能当临时存储空间或缓存使用,无 ......
kubernetes

kubernetes之 Ingress及Ingress Controller资源

第七部分 ingress及ingress controller配置如何使用ingress服务,优先配置系统参数 a、编辑kubelet配置文件/etc/sysconfig/kubelet,设置其忽略Swap启用的状态错误,内容如下, KUBELET_EXTRA_ARGS="--fail-swap-o ......
Ingress kubernetes Controller 资源

Centos7 升级 Kubernetes(k8s) 集群

Centos7 升级 Kubernetes(k8s) 集群,升级master主节点,升级kubeadm,升级各个组件,升级 kubelet 和 kubectl,升级worker工作节点,升级kubeadm,升级kubelet和kubectl ......
集群 Kubernetes Centos7 Centos k8s

kubernetes之 Pod控制器

第五部分 Pod控制器1、pod回顾 apiVersion, kind, metadata, spec, status(只读) spec: containers nodeSelector nodeName restartPolicy: Always, Never, OnFailure contain ......
控制器 kubernetes Pod

Kubernetes高可用集群安装

# Kubernetes高可用集群安装 ## Sealos安装集群 ### 下载Sealos ```bash # 推荐下载最新版,会修复一些BUG,下载并安装sealos, sealos是个golang的二进制工具,直接下载拷贝到bin目录即可, release页面也可下载 wget -c http ......
集群 Kubernetes

Kubernetes安全框架

# Kubernetes安全框架 * K8S安全控制框架主要由下面3个阶段进行控制,每一个阶段都 支持插件方式,通过API Server配置来启用插件。 1. **Authentication(鉴权)**:身份鉴别,只有正确的账号才能够通过认证 2. **Authorization(授权)**:判断 ......
Kubernetes 框架

03-kubeadm初始化Kubernetes集群

集群部署架构 规划:节点网络:192.168.1.0/24Service网络:10.96.0.0/12Pod网络:10.244.0.0/16 部署方法参考:https://github.com/kubernetes kop方式:AWS (Amazon Web Services) and GCE (G ......
集群 Kubernetes kubeadm 03

kubernetes内核参数优化

建议设置 net.ipv4.tcp_keepalive_time=600 net.ipv4.tcp_keepalive_intvl=30 net.ipv4.tcp_keepalive_probes=10 net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.d ......
内核 kubernetes 参数

Kubernetes(k8s)控制器(五):有状态应用StatefulSet

Kubernetes(k8s)控制器(五):有状态应用StatefulSet,有状态应用和无状态应用区别,创建StatefulSet,scale扩展副本数,创建无头服务headless service,通过无头服务headless service访问StatefulSet ......
控制器 StatefulSet Kubernetes 状态 k8s

Kubernetes Deployment更新容器镜像的两种常见方式

Kubernetes Deployment是一种Kubernetes资源对象,用于定义和管理容器化应用程序的部署。在Kubernetes集群中,可以使用Deployment来创建和管理Pod,并确保Pod的副本数始终保持在指定的数量。当需要更新容器镜像时,可以使用以下两种方式来更新Kubernete ......
容器 Kubernetes Deployment 镜像 常见

Kubernetes Federation 部署和使用体验

Kubefed是一个用于实现 Kubernetes集群联邦的项目,它允许用户在多个集群之间同步资源和配置。 Kubefed项目已经停止了活跃的开发和维护,因为它没有足够的社区参与和支持。Kubefed存储库已经于2023年4月25日被归档为只读状态,不再接受任何新的问题或拉取请求。Kubefed项目 ......
Kubernetes Federation

Kubernetes(k8s) 资源限制:resources,LimitRange,ResourceQuota

Kubernetes(k8s) 资源限制:resources,LimitRange,ResourceQuota,创建没有资源限制的pod,内存消耗测试,使用resources字段配置资源限制,限制最低内存,限制最低CPU,限制最低CPU和最高内存,使用LimitRange限制资源范围,同时使用Lim... ......

如何将SSL证书从Kubernetes Secrets导出并复原为证书PEM和密钥文件

首先,您需要使用 `kubectl` 工具从 Kubernetes 导出 Secret 到一个 yaml 文件,这通常使用如下命令: ```bash kubectl get secret my-secret -o yaml > my-secret.yaml ``` 然后我们可以创建一个简单的 bas ......
证书 密钥 Kubernetes Secrets 文件

Kubernetes编程—— 使用自定义资源 —— 类型定义

使用自定义资源 —— 类型定义 CRD 也是 Kubernetes 中的一种资源,从属于 apiextension.k8s.io/v1beta1 API 组,由 Kubernetes API 服务器进程中的 apiextensions-apiserver 提供服务。 CRD 的 Schema 定义如 ......
Kubernetes 类型 资源

kubelet 报 Failed to run kubelet" err="failed to run Kubelet: unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory" 处理方法

1、 kubelet 启动 报 unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory" ,原因是kubelet.conf的证书权限有问题 ......