首页 > 其他分享 >创建Service资源

创建Service资源

时间:2024-03-21 11:24:33浏览次数:25  
标签:name Service v1 创建 app nginx 80 资源

Nodeport类型:

apiVersion: v1          #api版本
kind: Service           #资源类型
metadata:
  name: nginx-service   #Service 的名称
  labels:               #Service 自己的标签
    app: nginx          #为该 Service 设置 key 为 app,value 为 nginx 的标签
spec:                   #这是关于该 Service 的定义,描述了 Service 如何选择 Pod,如何被访问
  selector:             #标签选择器
    app: nginx          #选择包含标签 app:nginx 的 Pod
  ports:
  - name: nginx-port    #端口的名字
    protocol: TCP       #协议类型 TCP/UDP
    port: 80            #集群内的其他容器组可通过 80 端口访问 Service
    nodePort: 32600     #通过任意节点的 32600 端口访问 Service
    targetPort: 80      #将请求转发到匹配 Pod 的 80 端口
  type: NodePort        #Serive的类型,ClusterIP/NodePort/LoaderBalancer

 

ClusterIP类型:

apiVersion: v1
kind: Service
metadata:
  name: cluster-svc
spec:
  selector:
    app: nginx
    version: v1
  type: ClusterIP
  ports:
  - name: http
    port: 80
    targetPort: 80
    protocol: TCP

 

ExternalName类型:

apiVersion: v1
kind: Service
metadata:
  name: client-svc                                      #Service名称
spec:
  type: ExternalName                                    #创建ExternalName类型的Service
  externalName: deploy-test.default.svc.cluster.local   #软链接,可跨名称空间,容器内请求client-svc等于请求deploy-test.default.svc.cluster.local
  ports:
  - name: http
    port: 80                                            #Service本身的端口
    targetPort: 80                                      #容器内程序自身监听的端口 

 

LoadBalancer类型:

apiVersion: v1  
kind: Service  
metadata:  
  name: balancer-svc  
  labels:  
    app: nginx
    version: v1  
spec:  
  selector:  
    app: nginx # 这里应该与你的Pod的标签匹配  
  ports:  
    - protocol: TCP  
      port: 80               # Service的端口号  
      targetPort: 80      # Pod中应用程序实际监听的端口号  
  type: LoadBalancer   #Kubernetes为Service自动配置一个负载均衡器

 

标签:name,Service,v1,创建,app,nginx,80,资源
From: https://www.cnblogs.com/hm1825/p/18086960

相关文章

  • 创建Deployment
    apiVersion:apps/v1kind:Deploymentmetadata:name:nginx-deployment#Deployment名称labels:app:nginx#Deployment标签定义spec:replicas:1#副本数selector:......
  • 这50个学习Python的爆赞的资源,你用过几个?
    欢迎关注我的专栏:今天给大家分享一下,不同阶段的Python学习者从不同角度量身定制了50个学习资源,建议收藏!01初学者1.Welcometohttp://Python.orghttps://www.python.org/官方Python站点提供了一个开始使用Python生态系统和学习Python的好方法,包括官方文档。2.Lear......
  • 阿里云ECS图片资源迁移OSS操作全过程
    1、开通OSS设置bucket,绑定域名,获取accessKeyId和AccessKeySecret,授权OSSFULLACCESS 2、迁移图片您好,这里建议您使用ossutil工具进行上传下载,该工具支持断点续传、文件分片、多文件同时上传等下载和配置https://help.aliyun.com/zh/oss/developer-reference/install-ossut......
  • QT6实现创建与操作sqlite数据库三种方式方式对比(二)
    一.概述Qt访问Sqlite数据库的三种方式(即使用三种类库去访问),QSqlQuery、QSqlQueryModel、QSqlTableModel,对于这三种类库,可看为一个比一个上层,也就是封装的更厉害,甚至第三种QSqlTableModel,根本就不需要开发者懂SQL语言,也能操作Sqlite数据库。二.Qt读写Sqlite数据库的三种方......
  • 类的定义与创建
    类的定义与创建面向对象基本概念面向对象是一种符合人类思维习惯的编程思想。现实生活中存在各种形态不同的事物,这些事物之间存在各种联系。那么在程序中使用对象来影射现实中的事物,使用对象的关系来描述事物之间的联系,这种思想就是面向对象。面向对象是把解决的问题按照一定的......
  • 创建自己的简单脚手架工具
    什么是脚手架?        脚手架是能帮助我们快速完成项目初始化等操作的工具。        比如在创建完react项目后的模板通常不是我们需要的,我们需要对原始模板删除一些文件才方便我们使用。因此,如果我们自己开发一个脚手架,然后下载修改后的项目模板,这样就能提高......
  • 开发者导航:分享27个程序员免费学习的资源网站(第二期)
    开发者导航:分享27个程序员免费学习的资源网站(第二期)一个不能回避的问题就是,现在程序员的职场大环境是真的越来越差了,如果我们每天只是完成公司领导安排的任务,不去提升自己的技术,提高自己的不可替代性,你有想过有一天镰刀落在自己头上时,该如何应对吗?今天站长分享的网站主要都......
  • 开发者导航:分享27个程序员免费学习的资源网站(第一期)
    开发者导航:分享27个程序员免费学习的资源网站(第一期)一个不能回避的问题就是,现在程序员的职场大环境是真的越来越差了,如果我们每天只是完成公司领导安排的任务,不去提升自己的技术,提高自己的不可替代性,你有想过有一天镰刀落在自己头上时,该如何应对吗?今天站长分享的网站主要都......
  • Java中String类型的创建与比较(详解)
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、String类型是什么??二、String类型的创建使用字符串字面量使用new关键字intern()方法简读图解String的比较总结前言提示:这里可以添加本文要记录的大概内容:在背八股文(Holis版)的过程中遇......
  • 使用cgroups进行资源限制和管理
    cgroups是内核提供的一种机制,可以用来限制一组进程的资源使用。通过创建cgroups并设置相应的限制参数,可以确保多个程序共同运行时每个程序占用的资源受到限制。挂载cgroup文件系统查看cgroup是否已经挂载:mount|grepcgroup如果没有挂载,则编辑/etc/fstab文件添加以下......