一.Service简介 Service为Pod提供固定服务端点 Service的本质是一条iptables或者ipvs的转发规则 userspace:1.1- iptables:1.1+ ipvs:1.11+ 二.Service类型 ExternalName ClusterIP:使用集群网络提供服务 NodePort:直接使用节点网络提供服务 LoadBalancer:例如k8s构建在阿里云上,可以直接使用阿里云提供的SLB服务 三.使用清单创建service ClusterIP类型:通过svc…
一.Pod控制器的类别 ReplicationController:早期唯一的控制器,已废弃 ReplicaSet:控制Pod满足用户期望副本:标签选择器选择由自己管理的Pod副本:Pod资源模板完成Pod资源的新建.主要用于管理无状态的Pod,不建议直接使用此控制器 Deployment:基于ReplicaSet控制器:建议使用此控制器,支持滚动更新和回滚,管理无状态应用 DaemonSet:守护进程类的控制器,例如每台node都启动一个Pod一直持续下去 Job:执行一次性的任务,完成后就退…
Service概述 为什么要使用Service Kubernetes Pod是平凡的,由Deployment等控制器管理的Pod对象都是有生命周期的,它们会被创建,也会意外挂掉.虽然它们可以由控制器自动重建或者滚动更新,但是重建或更新之后的Pod对象的IP地址等都会发生新的变化.这样就会导致一个问题,如果一组Pod(称为backend)为其它Pod(称为 frontend)提供服务,那么那些frontend该如何发现,并连接到这组Pod中的哪些backend呢? 这时候就用到了:Service…
一.Service对应组件关系 1.在kubernetes平台之上,pod是有生命周期的,所以为了能够给对应的客户端提供一个固定的访问端点,因此我们在客户端和服务Pod之间添加一个固定的中间层,这个中间层我们称之为Service,这个Service的真正工作还要严重依赖于我们k8s之上部署的附件.称之为kubernetes的dns服务,不同的k8s版本实现可能不同,较新版本中默认使用的CoreDNS,1.11版本之前版本用的kube-dns,Service名称解析是强依赖于DNS附件的,因此我们…
k8s中的资源 什么叫资源? k8s中所有的内容都抽象为资源, 资源实例化之后,叫做对象 在k8s中有哪些资源? 工作负载型资源(workload): Pod ReplicaSet Deployment StatefulSet DaemonSet Job CronJob (ReplicationController在v1.11版本被废弃) 服务发现及负载均衡型资源:   ServiceDiscovery LoadBalance  Service Ingress, ... 配置与存储型资源: Vo…
资源清单介绍 创建资源的方法  apiserver仅接收JSON格式的资源定义  yaml格式提供配置清单 apiserver可自动把yaml转换成json格式数据 资源清单五个一级字段   1.apiVersion group/version     使用kubectl api-versions来获取   2.kind 资源类别   3.metadata 元数据     name     namespace     labels     annotations  4.spec 期望的状态  5…
一.k8s概述 1.简介 Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制,由于k和s之间有8个字母,所以简称k8s 传统的应用部署方式是通过插件或脚本来安装应用.这样做的缺点是应用的运行.配置.管理.所有生存周期将与当前操作系统绑定,这样做并不利于应用的升级更新/回滚等操作,当然也可以通过创建虚拟机的方式来实现某些功能,但是虚…
本文收录在容器技术学习系列文章总目录 1.认识service 1.1 为什么要使用service Kubernetes Pod 是有生命周期的,它们可以被创建,也可以被销毁,然而一旦被销毁生命就永远结束. 通过 ReplicationController 能够动态地创建和销毁 Pod(例如,需要进行扩缩容,或者执行 滚动升级). 每个 Pod 都会获取它自己的 IP 地址,即使这些 IP 地址不总是稳定可依赖的. 这会导致一个问题:在 Kubernetes 集群中,如果一组 Pod(称为 bac…
本文收录在容器技术学习系列文章总目录 1.认识kubernetes资源 1.1 常用资源/对象 workload工作负载型资源:pod,ReplicaSet,Deployment,StatefulSet,daemonset,job... 服务器发现及均衡:Service,Lngress... 配置与存储:volume,CSI configmap,secret downwardAPI 集群级资源 namespace,node,role,clusterrole,rolebinding,cluster…
一.Kubernetes常用资源 以下列举的内容都是 kubernetes 中的 Object,这些对象都可以在 yaml 文件中作为一种 API 类型来配置. 类别 名称 工作负载型资源对象 Pod  Replicaset  ReplicationController  Deployments StatefulSets Daemonset Job CronJob 服务发现及负载均衡  Service  Ingress 配置与存储 Volume.Persistent Volume.CSl . c…
Kubernetes常用资源对象 依据资源的主要功能作为分类标准,Kubernetes的API对象大体可分为五个类别,如下: 类型 名称 工作负载(Workload) Pod.ReplicaSet.Deployment.StatefulSet.DaemonSet.Job.Cronjob 负载均衡(Discovery &LB) Service.Ingress 配置和存储(Config&Storage) Volume.CSI.ConfigMap.Secret.DownwardAPI 集群(Cl…
一.kubernetes是有一个restful风格的 API,把各种操作对象都一律当做资源来管理.并且可通过标准的HTTP请求的方法 GET,PUT,DELETE,POST,等方法来完成操作,不过是通过相应的命令反馈在kubectl 之上,如kubectl run,get,edit,.... 二.k8s常用的资源实例化后我们称之为对象.k8s相关的核心资源如下. 1.workload(工作负载型资源对象):Pod,ReplicaSet,Deployment,StatefulSet,DaemonS…
使用配置清单创建资源 定义pod时使用yaml格式 master ~]# kubectl get pod NAME READY STATUS RESTARTS AGE client / Error 10d client1 / Completed 9d client2 / Error 7h13m client3 / Running 5h57m myapp-5bc569c47d-5cdpw / Running 3h20m myapp-5bc569c47d-c4gr2 / Running 3h20m…
一.资源清单概念 资源/对象的类型 工作负载型资源:Pod, ReplicaSet, Deployment, StatefulSet, DaemonSet, Job, Cronjob, ... 服务发现及均衡性资源:Service, Ingress, ... 配置与存储型资源:Volume, CSI, ConfigMap, DownwardAPI 集群级资源:Namespace, Node, Role, ClusterRole, RoleBinding, ClusterRoleBinding 元…
service 三种工作模式:userspace.iptables.ipvs 删除手动创建的service [root@master ~]# kubectl delete svc redis service "redis" deleted [root@master ~]# kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443…
一.资源清单 1,定义: 在k8s中一般使用yaml格式的文件来创建符合我们预期的资源,这样的yaml被称为资源清单. 使用资源清单创建Pod: kubectl apply -f nginx.yaml 定义nginx.yaml内容为: apiVersion: v1 kind: Pod metadata: name: my-pod #自定义的名称只能用小写字母使用 - 连接,驼峰 或者 _ 连接会报错 labels: app: nginx-app version: v1 spec: contain…
K8S中的资源 K8S中所有的内容都抽象为资源,资源实例化之后叫做对象.一般使用yaml格式的文件来创建符合我们预期的pod,这样的yaml文件我们一般成为资源清单. 名称空间级资源 工作负载型资源(workload) Pod.ReplicaSet.Deployment.StatefulSet.DaemonSet.Job.CronJob(ReplicationController在v1.11版本被废弃) 服务发现及负载均衡型资源(ServiceDiscovery LoadBalance) Ser…
什么是pod? Pod是一组一个或多个容器(例如Docker容器),具有共享的存储/网络,以及有关如何运行这些容器的规范. Pod的内容始终位于同一地点,并在同一时间安排,并在共享上下文中运行. Pod对特定于应用程序的“逻辑主机”进行建模-它包含一个或多个相对紧密耦合的应用程序容器-在容器之前的世界中,在同一物理或虚拟机上执行将意味着在同一逻辑主机上执行 . 简单示例 apiVersion: v1kind: Podmetadata:     name: nginx-pod     namesp…
Kubernetes 常用资源 资源  对象 工作负载型资源对象(workload): Pod  Replicaset  ReplicationController  Deployments StatefulSets Daemonset Job CronJob 服务发现及负载均衡: Service  Ingress 配置与存储:Volumes CSl  configmap  secret 集群资源:Namespace Node Role ClusterRole  RoleBinding  Clu…
第一章.k8s中的资源 1.什么叫资源? k8s中所有的内容都抽象为资源, 资源实例化之后,叫做对象 2.在k8s中有哪些资源? 工作负载型资源(workload): Pod ReplicaSet Deployment StatefulSet DaemonSet Job CronJob (ReplicationController在v1.11版本被废弃) 服务发现及负载均衡型资源(ServiceDiscovery LoadBalance): Service Ingress, ... 配置与存储型…
目录 资源对象 创建资源的方法 清单帮助命令 创建测试清单 资源的三种创建方式 资源对象 workload:Pod, ReplicaSet, Deployment, StatefulSet, DaemonSet, Job, Cronjob 服务发现及均衡:Service, Ingress 配置与存储:Volume,CSI,ConfigMap,Secret,DownwardAPI 集群级资源:Namespace,Node,Role,ClusterRole,RoleBinding,ClusterRo…
目录 资源对象 创建资源的方法 清单帮助命令 创建测试清单 资源的三种创建方式 资源对象 workload:Pod, ReplicaSet, Deployment, StatefulSet, DaemonSet, Job, Cronjob 服务发现及均衡:Service, Ingress 配置与存储:Volume,CSI,ConfigMap,Secret,DownwardAPI 集群级资源:Namespace,Node,Role,ClusterRole,RoleBinding,ClusterRo…
一.常见资源对象 常见的资源对象:(包括但不仅限于) l  Workload: Pod,ReplicaSet,Deployment,StatefulSet,DaemonSet,Job,Cronjob l  服务发现及均衡:Service,Ingress…… l  配置与存储:Volume,CSI(扩展第三方存储的接口) ConfigMap,Secret DownwardAPI l  集群级资源:Namespace,Node,Role,ClusterRole,RoleBinding,Cluster…
4.kubernetes使用 4.1.资源清单 api 文档.api 描述 4.1.2.说明 必须存在的属性 主要的对象 额外的参数项 例子 vim my-app.yml apiVersion: v1 # kubectl api-versions 查看支持的版本 # 类型,如:Pod | ReplicationController | Deployment | Service | Ingress kind: Pod metadata: name: my-app # Kind 的名称 namesp…
前文我们了解了k8s上的DemonSet.Job和CronJob控制器的相关话题,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/14157306.html:今天我们来了解下k8s上的service资源的相关话题: Service资源在k8s上主要用来解决pod访问问题:我们知道在k8s上pod由于各种原因重建,对于重建后的podip地址和名称都是变化的,这样一来使得我们访问pod就变得有些不便:为了解决pod访问能有一个固定的端点,在k8s上就是用ser…
K8是-- yaml资源清单 一.yaml文件详解 1.Kubernetes支持YAML和JSON格式管理资源对象2.JSON格式:主要用于api接口之间消息的传递3.YAML格式:用于配置和管理,YAML是一种简洁的非标记性语言,内容格式人性化,较易读 1.1 YAML语法格式 1.大小写敏感2.使用缩进表示层级关系3.不支持Tab键制表符缩进,只使用空格缩进4.缩进的空格数目不重要,只要相同层级的元素左侧对齐即可,通常开头缩进两个空格5.:字符后缩进一个空格,如冒号,逗号,短横杆(-)等6.…
1. 什么是Endpoint? 我们创建Service的时候会自动给我们创建一个同名的Endpoint资源,每一个同名的 Servie都有一个Endpoints资源,因为Service自己并不直接匹配后端Pod的标签,而是由Endpoint匹配的.这个匹配过程是由Endpoint控制器来完成的.Endpoint是由Endpoint控制器来控制的: 事实上我们Service不但能够把标签选择器选中的Pod识别为自己的后端端点.还能够对后端端点做"就绪状态检测".如果后端的Pod是就绪的,…
基于kubernetes 部署 jenkins master 比较简单,难点是为 jenkins 动态分配资源.基于kubernetes 为 jenkins 动态分配资源需要实现下述功能: 资源分配:jenkins 根据任务属性自动创建临时 docker 容器,并作为 slave 节点加入 jenkins 集群,实现资源的分配: 资源释放:任务执行结束后,jenkins 自动删除相关节点,并销毁相关 docker 容器,实现资源的释放: 整个资源分配和资源释放过程对用户来说是透明的,用户只需要创…
第一章.前言 在上一篇博客中,我们大致简述了一般情况下资源清单的格式,以及如何获得清单配置的命令帮助,下面我们再讲解下清单中spec字段中比较常见的字段及其含义 第二章.常用字段讲解 spec.containers <[]object> spec.containers <[]object> spec.containers.name <string> #pod的名称,必须字段,名称唯一且对象创建后不可以被修改 spec.containers.image <strin…
1.Service概述 service是kubernetes中最核心的资源对象之一,service和pod之间是通过Label串起来,相同的Service的pod的Label是一样的.同一个service下的所有pod是通过kube-proxy实现负载均衡.而每个service都会分配一个全局唯一的虚拟ip,也就cluster ip. 在该service整个生命周期内,cluster ip保持不变,而在kubernetes中还有一个dns服务,它会把service的name解析为cluster…