k8s创建service

k8s创建service在之前已经创建了一个有两个nginx副本数的deployment,如下所示:[root@k8s-node1 mytestyaml]# kubectl get deploymentNAME READY UP-TO-DATE AVAILABLE AGEnginx-deployment 2/2 2 2 45m[root@k8s-node1 mytestyaml]# kubectl get
摘要由CSDN通过智能技术生成

一、创建service示例

1.1、已有的deployment

在之前已经创建了一个有两个nginx副本数的deployment,如下所示:

[root@k8s-node1 mytestyaml]# kubectl get deployment
NAME               READY   UP-TO-DATE   AVAILABLE   AGE
nginx-deployment   2/2     2            2           45m
[root@k8s-node1 mytestyaml]# kubectl get pod -o wide
NAME                                READY   STATUS    RESTARTS   AGE   IP            NODE        NOMINATED NODE   READINESS GATES
nginx-deployment-85ff79dd56-42mh9   1/1     Running   0          38m   10.244.2.62   k8s-node3   <none>           <none>
nginx-deployment-85ff79dd56-gx2dl   1/1     Running   0          44m   10.244.1.68   k8s-node2   <none>           <none>

并且直接访问其IP地址也能够正常的访问到nginx,但是这些Pod的IP地址并不是固定的,如果这个Pod被重新部署的话,他的IP地址是跟着一起变的。如果只是为了对外提供服务,外界不应去关注这个IP地址的变化,最好是能够访问一个固定的IP。

而在k8s中,service就是专门来做这个事情的。

1.2、使用expose创建

我们可以直接expose这个deployment来实现,如下所示:

[root@k8s-node1 mytestyaml]# kubectl expose deployment nginx-deployment
service/nginx-deployment exposed
[root@k8s-node1 mytestyaml]# kubectl get svc
NAME               TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)   AGE
kubernetes         ClusterIP   10.96.0.1      <none>        443/TCP   28d
nginx-deployment   ClusterIP   10.96.112.83   <none>        80/TCP    26s

这里已经分配给了nginx-deployment 一个 CLUSTER-IP 为 10.96.112.83 ,端口号依旧是80。
那么我们直接访问这个CLUSTER-IP和端口号就能够访问到nginx了,因为service会自动的帮我们把访问到10.96.112.83:80的请求进行负载均衡,转发到10.244.2.62:80和10.244.1.68:80上去。

无论pod被重新部署或者所扩容与否,即使是IP地址变了,我们依然是可以访问CLUSTER-IP:PORT进行访问的。
如下所示,访问10.96.112.83:80:

[root@k8s-node1 mytestyaml]# curl 10.96.112.83:80
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html {
    color-scheme: light dark; }
body {
    width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值