随笔分类 - k8s
摘要:
如何在k8s集群中部署Java项目 1.容器交付流程 开发代码阶段 编写代码 编写Dockerfile【打镜像做准备】 持续交付/集成 代码编译打包 制作镜像 上传镜像仓库 应用部署 环境准备 Pod Service Ingress 运维 监控 故障排查 应用升级 2.k8s部署Java项目流程 制
阅读全文
如何在k8s集群中部署Java项目 1.容器交付流程 开发代码阶段 编写代码 编写Dockerfile【打镜像做准备】 持续交付/集成 代码编译打包 制作镜像 上传镜像仓库 应用部署 环境准备 Pod Service Ingress 运维 监控 故障排查 应用升级 2.k8s部署Java项目流程 制
阅读全文
摘要:
1.前言 之前我们搭建的集群,只有一个master节点,当master节点宕机的时候,通过node将无法继续访问,而master主要是管理作用,所以整个集群将无法提供服务 2.高可用集群 下面我们就需要搭建一个多master节点的高可用集群,不会存在单点故障问题 但是在node 和 master节点
阅读全文
1.前言 之前我们搭建的集群,只有一个master节点,当master节点宕机的时候,通过node将无法继续访问,而master主要是管理作用,所以整个集群将无法提供服务 2.高可用集群 下面我们就需要搭建一个多master节点的高可用集群,不会存在单点故障问题 但是在node 和 master节点
阅读全文
摘要:
1.概述 1.1 监控指标 一个好的系统,主要监控以下内容 集群监控 节点资源利用率 节点数 运行Pods Pod监控 容器指标 应用程序【程序占用多少CPU、内存】 1.2 监控平台 使用普罗米修斯【prometheus】 + Grafana 搭建监控平台 prometheus【定时搜索被监控服务
阅读全文
1.概述 1.1 监控指标 一个好的系统,主要监控以下内容 集群监控 节点资源利用率 节点数 运行Pods Pod监控 容器指标 应用程序【程序占用多少CPU、内存】 1.2 监控平台 使用普罗米修斯【prometheus】 + Grafana 搭建监控平台 prometheus【定时搜索被监控服务
阅读全文
摘要:
1.前言 之前我们有提到数据卷:emptydir ,是本地存储,pod重启,数据就不存在了,需要对数据持久化存储 对于数据持久化存储【pod重启,数据还存在】,有两种方式 nfs:网络存储【通过一台服务器来存储】 2.步骤 2.1 持久化服务器上操作 找一台新的服务器nfs服务端,安装nfs 设置挂
阅读全文
1.前言 之前我们有提到数据卷:emptydir ,是本地存储,pod重启,数据就不存在了,需要对数据持久化存储 对于数据持久化存储【pod重启,数据还存在】,有两种方式 nfs:网络存储【通过一台服务器来存储】 2.步骤 2.1 持久化服务器上操作 找一台新的服务器nfs服务端,安装nfs 设置挂
阅读全文
摘要:
Helm就是一个包管理工具【类似于npm】 1.为什么引入Helm 首先在原来项目中都是基于yaml文件来进行部署发布的,而目前项目大部分微服务化或者模块化,会分成很多个组件来部署,每个组件可能对应一个deployment.yaml,一个service.yaml,一个Ingress.yaml还可能存
阅读全文
Helm就是一个包管理工具【类似于npm】 1.为什么引入Helm 首先在原来项目中都是基于yaml文件来进行部署发布的,而目前项目大部分微服务化或者模块化,会分成很多个组件来部署,每个组件可能对应一个deployment.yaml,一个service.yaml,一个Ingress.yaml还可能存
阅读全文
摘要:
1.概述 当我们访问K8S集群时,需要经过三个步骤完成具体操作 认证 鉴权【授权】 准入控制 进行访问的时候,都需要经过 apiserver, apiserver做统一协调,比如门卫 访问过程中,需要证书、token、或者用户名和密码 如果访问pod需要serviceAccount 1.1 认证 对
阅读全文
1.概述 当我们访问K8S集群时,需要经过三个步骤完成具体操作 认证 鉴权【授权】 准入控制 进行访问的时候,都需要经过 apiserver, apiserver做统一协调,比如门卫 访问过程中,需要证书、token、或者用户名和密码 如果访问pod需要serviceAccount 1.1 认证 对
阅读全文
摘要:
1.Secret Secret的主要作用就是加密数据,然后存在etcd里面,让Pod容器以挂载Volume方式进行访问 场景:用户名 和 密码进行加密 一般场景的是对某个字符串进行base64编码 进行加密 echo -n 'admin' | base64 变量形式挂载到Pod 创建secret加密
阅读全文
1.Secret Secret的主要作用就是加密数据,然后存在etcd里面,让Pod容器以挂载Volume方式进行访问 场景:用户名 和 密码进行加密 一般场景的是对某个字符串进行base64编码 进行加密 echo -n 'admin' | base64 变量形式挂载到Pod 创建secret加密
阅读全文
摘要:
1.删除svc 和 statefulset 使用下面命令,可以删除我们添加的svc 和 statefulset kubectl delete svc web kubectl delete statefulset --all 2.statefulset statefulset主要是用来部署有状态应用
阅读全文
1.删除svc 和 statefulset 使用下面命令,可以删除我们添加的svc 和 statefulset kubectl delete svc web kubectl delete statefulset --all 2.statefulset statefulset主要是用来部署有状态应用
阅读全文
摘要:
1.Statefulset Statefulset主要是用来部署有状态应用 对于StatefulSet中的Pod,每个Pod挂载自己独立的存储,如果一个Pod出现故障,从其他节点启动一个同样名字的Pod,要挂载上原来Pod的存储继续以它的状态提供服务。 1.1 无状态应用 我们原来使用 deploy
阅读全文
1.Statefulset Statefulset主要是用来部署有状态应用 对于StatefulSet中的Pod,每个Pod挂载自己独立的存储,如果一个Pod出现故障,从其他节点启动一个同样名字的Pod,要挂载上原来Pod的存储继续以它的状态提供服务。 1.1 无状态应用 我们原来使用 deploy
阅读全文
摘要:
1.Service存在的意义 1.1 防止Pod失联【服务发现】 因为Pod每次创建都对应一个IP地址,而这个IP地址是短暂的,每次随着Pod的更新都会变化,假设当我们的前端页面有多个Pod时候,同时后端也多个Pod,这个时候,他们之间的相互访问,就需要通过注册中心,拿到Pod的IP地址,然后去访问
阅读全文
1.Service存在的意义 1.1 防止Pod失联【服务发现】 因为Pod每次创建都对应一个IP地址,而这个IP地址是短暂的,每次随着Pod的更新都会变化,假设当我们的前端页面有多个Pod时候,同时后端也多个Pod,这个时候,他们之间的相互访问,就需要通过注册中心,拿到Pod的IP地址,然后去访问
阅读全文
摘要:
一、什么是Controller Controller是在集群上管理和运行容器的对象,Controller是实际存在的,Pod是虚拟机的 二、Pod和Controller的关系 Pod是通过Controller实现应用的运维,比如弹性伸缩,滚动升级等 Pod 和 Controller之间是通过labe
阅读全文
一、什么是Controller Controller是在集群上管理和运行容器的对象,Controller是实际存在的,Pod是虚拟机的 二、Pod和Controller的关系 Pod是通过Controller实现应用的运维,比如弹性伸缩,滚动升级等 Pod 和 Controller之间是通过labe
阅读全文
摘要:
一、Pod概述 Pod是K8S系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在K8S上运行容器化应用的资源对象,其它的资源对象都是用来支撑或者扩展Pod对象功能的,比如控制器对象是用来管控Pod对象的,Service或者Ingress资源对象是用来暴露Pod
阅读全文
一、Pod概述 Pod是K8S系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在K8S上运行容器化应用的资源对象,其它的资源对象都是用来支撑或者扩展Pod对象功能的,比如控制器对象是用来管控Pod对象的,Service或者Ingress资源对象是用来暴露Pod
阅读全文
摘要:
一、概述 k8s 集群中对资源管理和资源对象编排部署都可以通过声明样式(YAML)文件来解决,也就是可以把需要对资源对象操作编辑到YAML 格式文件中,我们把这种文件叫做资源清单文件,通过kubectl 命令直接使用资源清单文件就可以实现对大量的资源对象进行编排部署了。一般在我们开发的时候,都是通过
阅读全文
一、概述 k8s 集群中对资源管理和资源对象编排部署都可以通过声明样式(YAML)文件来解决,也就是可以把需要对资源对象操作编辑到YAML 格式文件中,我们把这种文件叫做资源清单文件,通过kubectl 命令直接使用资源清单文件就可以实现对大量的资源对象进行编排部署了。一般在我们开发的时候,都是通过
阅读全文
摘要:
一、概述 kubectl是Kubernetes集群的命令行工具,通过kubectl能够对集群本身进行管理,并能够在集群上进行容器化应用的安装和部署 二、命令格式 命令格式如下 kubectl [command] [type] [name] [flags] 参数 command:指定要对资源执行的操作
阅读全文
一、概述 kubectl是Kubernetes集群的命令行工具,通过kubectl能够对集群本身进行管理,并能够在集群上进行容器化应用的安装和部署 二、命令格式 命令格式如下 kubectl [command] [type] [name] [flags] 参数 command:指定要对资源执行的操作
阅读全文
摘要:
kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点 kubeadm init # 将一个 Node 节点加入到当前集群中 kubeadm join <Master节点的IP和
阅读全文
kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点 kubeadm init # 将一个 Node 节点加入到当前集群中 kubeadm join <Master节点的IP和
阅读全文
摘要:
一、前言 这阵子在整K8s,因为之前不太清楚VMWare如何设置固定IP地址,所以每次VMWare中都是自动获取IP的,这样就造成了每次只要本地机器重启,虚拟机中的网络又变化了,导致K8S服务无法正常的启动。 这里需要特别感谢群里的小伙伴 @你钉钉响了 @清欢渡 手把手的教学,帮助我学习了一波VMw
阅读全文
一、前言 这阵子在整K8s,因为之前不太清楚VMWare如何设置固定IP地址,所以每次VMWare中都是自动获取IP的,这样就造成了每次只要本地机器重启,虚拟机中的网络又变化了,导致K8S服务无法正常的启动。 这里需要特别感谢群里的小伙伴 @你钉钉响了 @清欢渡 手把手的教学,帮助我学习了一波VMw
阅读全文
摘要:
一、 搭建k8s环境平台规划 1.1 单master集群 单个master节点,然后管理多个node节点 1.2 多master集群 多个master节点,管理多个node节点,同时中间多了一个负载均衡的过程 二、服务器硬件配置要求 2.1 测试环境 master:2核 4G 20G node: 4
阅读全文
一、 搭建k8s环境平台规划 1.1 单master集群 单个master节点,然后管理多个node节点 1.2 多master集群 多个master节点,管理多个node节点,同时中间多了一个负载均衡的过程 二、服务器硬件配置要求 2.1 测试环境 master:2核 4G 20G node: 4
阅读全文
摘要:
一、介绍 K8S主要讲的就是Kubernetes,首先Kubernetes首字母为K,末尾为s,中间一共有8个字母,所以简称K8s 二、前置知识 Linux操作系统 Docker 三、课程简介 K8s概念和架构 从零搭建K8s集群 基于客户端工具kubeadm搭建(简单,最多半小时) 基于二进制包方
阅读全文
一、介绍 K8S主要讲的就是Kubernetes,首先Kubernetes首字母为K,末尾为s,中间一共有8个字母,所以简称K8s 二、前置知识 Linux操作系统 Docker 三、课程简介 K8s概念和架构 从零搭建K8s集群 基于客户端工具kubeadm搭建(简单,最多半小时) 基于二进制包方
阅读全文

浙公网安备 33010602011771号