创建服务
Kubernetes中每⼀个工作负载会有⼀个或多个实例(Pod),每个实例(Pod)的IP地址由网络插件动态随机分配(Pod重启后IP地址会改变)。为屏蔽这些后端实例的动态变化和对多实例的负载均衡,引入了服务(Service)这个资源对象。本文将介绍如何创建服务并对外发布应用。
前提条件
确保您已经创建Serverless集群,具体操作请参阅创建Serverless集群。
在本地使用命令之前,需要先通过kubectl连接Kubernetes集群。
通过命令创建应用
步骤一:创建Deplyoment
登录云容器引擎控制台。
在控制台的左侧导航栏中点击“集群” 。
在集群列表页面中,单击目标集群的名称进入集群详情界面。
在集群管理页面的左侧导航栏中,选择“工作负载” ,然后单击“无状态” 。
在无状态页面中单击左上角的“新增YAML” ,本次示例模板是一个Nginx的Deployment,具体内容如下所示:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
创建完成后可查看该应用。
在集群管理页面的左侧导航栏中,选择“工作负载” ,然后单击“无状态” 。
在无状态页面中可以查看所有已经创建的Deployment。
在目标Deployment项选项卡单击创建好的应用名称 ,查看其详情。
步骤二:创建服务
在集群列表页面中,单击目标集群的名称进入集群详情界面。
在集群管理页面的左侧导航栏中,选择“网络”,然后单击“服务” 。
单击左上角的“创建服务” ,填写基本信息。
配置访问信息,选择协议类型TCP或者UDP,容器端口是业务容器对外暴露的端口,服务端口是服务对外提供访问的端口,同时支持Session粘连,并且可以指定集群内部的服务IP地址。
在工作负载绑定区域内,选择上一步中创建的无状态应用。
单击“提交”,完成服务的创建。在服务页面中可以查看所有创建的服务,可以对其进行更新 、删除以及查看YAML等操作。