『中级篇』k8s的Service简介和演示(67)

原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!

原文链接地址:『中级篇』k8s的Service简介和演示(67)

我们在使用pod的时候,pod之前可以相互ping通的,机器本身也可以ping通pod和另外机器的pod,如果是一个serivce的话,我们通过端口号,就可以访问service。源码:https://github.com/limingios/docker/tree/master/No.10

不要直接使用和管理Pods,为什么?

  • 当我们使用ReplicaSet 或者ReplicationController做水平扩展scale的时候,Pods可能被结束。
  • 当我们使用Deployment的时候,我们去更新Docker Image Version,旧的Pods会被结束,然后新的Pods创建,Ip地址发生了变化。

Service

  • kubectl expoese命令,会给我们的pod创建一个Service,供外部访问。
  • Service 主要有三种类型:
  • ClsterIP
  • NodePort
  • LoadBalancer
  • 另外也可以使用DNS,但是需要DNS的add-on

Service的演示

  • 创建service。
get pod
kubectl get pod -o wide
kubectl expose pods nginx
#查看到已经创建的service
kubectl get  svc
  • 访问service
ping 10.254.233.245
  • 创建deployment
 cd deployk8s-master/
 cd labs/
 cd deployment/
more deployment_nginx.yml
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.12.2
        ports:
        - containerPort: 80
kubectl create -f deployment_nginx.yml
kubectl get pods -o wide 

我们进入node节点访问这些deployment

  • 创建deploy对应的service
kubectl get deployment
expose deployment nginx-deployment
kubectl get svc

service内部的修改部署

kubectl edit deployment nginx-deployment

PS:根据你修改的文件内容,它就自动更新了,但是ip没有发生改变,这就是service的强大。但是目前这种直接改deloyment文件的形式,不是推荐的因为他不是滚动更新,下次说下滚动更新。


原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算教程系列

如何在Ubuntu 14.04上保护Nginx

即使使用默认设置,Nginx也是一个非常安全可靠的Web服务器。但是,有很多方法可以进一步保护Nginx。

17420
来自专栏日暮星辰

Debian或Ubuntun wget下载证书无法验证

44640
来自专栏Java技术栈

WEB攻击手段及防御第3篇-CSRF

概念 CSRF全称即Cross Site Request forgery,跨站点请求伪造,攻击者通过跨站点进行伪造用户的请求进行合法的非法操作,其攻击手法是通过...

34580
来自专栏优启梦

emlog后台登录失败邮件通知

前面说到emlog后台登录参数加密,下面我们说说如何给emlog添加后台登录失败邮件通知的功能,本次我们需要用到mail函数,当然也就是需要25端口发信,如果是...

654120
来自专栏贺嘉的专栏

如何用Baas快速在腾讯云上开发小程序之系列1:搭建API & WEB WebSocket 服务器

本文介绍小程序和服务号开发环境及云端软件安装部署; 通过实验操作掌握 Docker、 Git、Phabricator 等云端软件使用;帮助开发者掌握各云资源的创...

3.8K00
来自专栏网络

如何使用Burp和Magisk在Android 7.0监测HTTPS流量

HTTPS拦截的基本方法 在Android平台上拦截HTTPS流量其实并不复杂,它只需要几步便可以实现: 1.将Burp设置为我们的代理; 2.访问http:/...

60770
来自专栏云计算教程系列

如何在Ubuntu 16.04上为用户目录设置vsftpd

FTP是文件传输协议的缩写,是一种曾经广泛用于在客户端和服务器之间移动文件的网络协议。它已被更快,更安全,更方便的文件传输方式所取代。许多休闲网民希望直接用ht...

26000
来自专栏IT笔记

世界上最好的语言搭建短链接及统计功能

前言 在这个营销的时代,短链接和二维码是企业进行营销中非常重要的工具,不仅仅是缩短了链接,而且还可以通过扩展获得更多的数据,诸如点击数、下载量、来源以及时间等等...

40480
来自专栏魏艾斯博客www.vpsss.net

LNMP 1.4 正式版安装测试记录及自动生成 Let’s Encrypt 免费证书

18620
来自专栏云知识学习

如何让服务端同时支持WebSocket和SSL加密的WebSocket

要服务端同时支持ws与wss并不容易,其难点主要在于:wss通道必须在TCP连接刚建立时(收发消息前)就要先进行SSL加密,否则,后续的通信将无法正常进行。如此...

553180

扫码关注云+社区

领取腾讯云代金券