K8S Learning(8)—— Service
一、Service简介
利用Deployment来创建一组Pod来提供具有高可用性的服务,每个Pod都会分配一个单独的Pod IP,却存在以下两个问题:
Pod IP 会随着Pod的重建产生变化
Pod IP 仅仅是集群内可见的虚拟IP,外部无法访问
对于访问这个服务带来了难度。kubernetes设计了Service来解决这个问题。
Service可以看作是一组同类Pod对外的访问接口。借助Service,应用可以方便地实现服务发现和负载均衡。
二、Service配置
(1)命令式对象管理
# 创建集群内部可访问的Service
kubectl expose deploy tomcat --name=svc-tomcat1 --type=ClusterIP --port=80 --target-port=8080 -n mk
# 查看service
kubectl get svc svc-tomcat1 -n dev -o wide
# 这里产生了一个CLUSTER-IP,这就是service的IP,在Service的生命周期中,这个地址是不会变动的# 创建集群外部也可访问的Service
# 修改type为NodePort
kubectl expose deploy tomcat --name=svc-tomcat2 --type=NodePort --port=80 --target-port=8080 -n mk# 删除Service
kubectl delete svc svc-tomcat1 -n mk
(2)命令式对象配置
创建一个svc-tomcat.yaml,内容如下:
apiVersion: v1
kind: Service
metadata:name: svc-tomcatnamespace: dev
spec:clusterIP: 172.21.12.34 #固定svc的内网ipports:- port: 80protocol: TCPtargetPort: 8080selector:name: tomcattype: ClusterIP
然后就可以执行对应的创建和删除命令了:
创建:kubectl create -f svc-tomcat.yaml
删除:kubectl delete -f svc-tomcat.yaml
K8S Learning(8)—— Service相关推荐
- K8S Learning(3)——资源管理
一.资源 在kubernetes中,所有的内容都抽象为资源,用户需要通过操作资源来管理kubernetes. kubernetes的本质上就是一个集群系统,用户可以在集群中部署各种服务,所谓的部署服务 ...
- K8S Learning(2)——集群环境搭建
一.部署Kubernetes 集群 有两种方式: (1)kubeadm Kubeadm 是一个K8s 部署工具,提供kubeadm init 和kubeadm join,用于快速部署Kubernete ...
- K8S Learning(1)——简介
一.Kubernetes kubernetes,是一个全新的基于容器技术的分布式架构领先方案,是谷歌严格保密十几年的秘密武器--Borg系统的一个开源版本,于2014年9月发布第一个版本,2015年7 ...
- K8S Learning(10)——Pod配置
pod.spec.containers属性是pod配置中最为关键的一项配置. kubectl explain pod.spec.containers KIND: Pod VERSION: v1 RES ...
- K8S Learning(7)—— Deployment
一.Deployment简介 在kubernetes中,Pod是最小的控制单元,但是kubernetes很少直接控制Pod,一般都是通过Pod控制器来完成的.Pod控制器用于pod的管理,确保pod资 ...
- K8S Learning(5)——Pod
一.Pod简介 Pod是kubernetes集群进行管理的最小单元,程序要运行必须部署在容器中,而容器必须存在于Pod中.Pod可以认为是容器的封装,一个Pod中可以存在一个或者多个容器. kuber ...
- K8S Learning(4)——Namespace
一.Namespace简介 Namespace是kubernetes系统中的一种非常重要资源,它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离. 默认情况下,kubernetes集群中的所 ...
- CloudSim4.0 Learning(1)
CloudSim4.0 Learning(1) 文章目录 *CloudSim4.0 Learning(1)* *Example1* *1 CloudSim初始化* *1.1 CloudSim.init ...
- 菜鸟学Kubernetes(K8s)系列——(七)关于Kubernetes底层工作原理
菜鸟学Kubernetes(K8s)系列--(七)关于Kubernetes底层工作原理 Kubernetes系列文章 主要内容 菜鸟学Kubernetes(K8s)系列--(一)关于Pod和Names ...
最新文章
- python变量词是什么意思_python1变量,表达式和语句
- 浅析Python3中的bytes和str类型
- mysql集群重启offline_mysql集群搭建问题及解决方法集锦
- 注释转换 (C语言注释转换为c++注释)
- 电容器充放电的原理是什么?
- C++ opencv显示fps帧率
- 中间件系列六 RabbitMQ之Topic exchange 用法
- jw player去掉logo 二次开发
- python有哪些学习内容_python学习内容包括哪些
- Android CPU 双核,为何安卓八核CPU不如苹果双核?
- Windows删除文件夹提示“文件夹被某一程序占用”,删除失败
- java springboot安卓多商家校园点餐外卖APP源码
- Spring Java Mail发邮件
- Ubuntu 16.04 一系列软件安装命令,包括QQ、搜狗、Chrome、vlc、网易云音乐安装方法(转载)...
- 使用 Javascript 强制刷新图像
- 囚徒困境 python
- c语言中exit头文件,C / C ++中的exit()与_Exit()
- 用D触发器搭建计数器
- 数据分析案例-航空公司满意度数据可视化
- [AIX] IBM机器卸载java
热门文章
- 算法题目——第K大的数
- 101. 对称二叉树023(BFS)
- Subset POJ - 3977(折半枚举+二分+二进制枚举)
- 使用pdf.js来预览pdf文件_适用于Dynamics365与PowerApps的注释预览组件
- java 第三方序列化,11.既然有第三方的序列化方式,说明java官方提供的序列化方式应该有一些很明显或者很致命的缺点……...
- JVM(1)——JVM内存分区
- 2019-03-18-算法-进化(删除链表的倒数第N个节点)
- Acwing 252. 树 点分治
- F.孤独(牛客小白月赛39)
- 约会安排 HDU - 4553