十二、Kubernetes核心技术Service详解、实例

导读:本篇文章讲解 十二、Kubernetes核心技术Service详解、实例,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1、概述

        我们都知道Kubernetes会为每个pod分配一个独立的IP,然而却存在如下问题:

  • Deployment控制的3个pod,其中一个Pod出现问题,这个时候给销毁重新创建后Pod Ip会变化
  • Pod IP 仅仅是集群内可见的虚拟IP,外部无法访问

这样对于访问这个服务带来了难度。因此,kubernetes设计了Service来解决这个问题。

Service可以看作是一组同类Pod对外的访问接口。借助Service,应用可以方便地实现服务发现和负载均衡。

十二、Kubernetes核心技术Service详解、实例

 通过上图可以看出,Service也是通过标签选择器控制一组Pod的对外访问。

2、通过命令创建集群内部可以访问的Service

2.1、ClusterIP方式:

此方式会为Service分配固定IP,在Service整个生命周期内这个IP是不变化的,但是这个IP只能在集群内部访问

#创建deploy
kubectl create deploy mynginx --image=nginx -n dev

#暴露service
kubectl expose deploy mynginx --name=mynginx-service -n dev --port=80 --target-port=80 --type=ClusterIP

#查看service
kubectl get deploy,svc -n dev -owide

实例:

十二、Kubernetes核心技术Service详解、实例

 注意:10.1.203.180这个IP只能在集群内部访问,在集群任意几个节点都可访问,此为–type=ClusterIP 这个类型导致

2.2、NodePort

此方式会为Service分配IP和对外暴露端口,通过此端口可以在外部访问

#创建deploy
kubectl create deploy mynginx --image=nginx -n dev

#暴露service
kubectl expose deploy mynginx --name=mynginx-service -n dev --port=80 --target-port=80 --type=NodePort

#查看service
kubectl get deploy,svc -n dev -owide

十二、Kubernetes核心技术Service详解、实例

 集群内部访问地址:http://10.6.72.235

集群外部访问地址:http://10.6.72.235:32536

3、删除service

涉及命令:

kubectl delete svc mynginx-service -n dev

十二、Kubernetes核心技术Service详解、实例

4、通过yaml暴露service

4.1、生成service的yaml模板mynginx-service.yaml 并修改

#创建模板
kubectl expose deploy mynginx --name=mynginx-service -n dev --port=80 --target-port=80 --type=NodePort -o yaml --dry-run=client > mynginx-service.yaml

十二、Kubernetes核心技术Service详解、实例

yaml内容:

apiVersion: v1
kind: Service
metadata:
  creationTimestamp: null
  labels:
    app: mynginx
  name: mynginx-service
  namespace: dev
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: mynginx
  type: NodePort
status:
  loadBalancer: {}

4.2、执行mynginx-service.yaml

十二、Kubernetes核心技术Service详解、实例

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/84230.html

(0)
小半的头像小半

相关推荐

极客之家——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!