k8s知识1
kubernetes到底有多难?
看下面的白话: service 网络通信原理
service 由k8s外面的服务作为访问端 内部里面其实是pod
——————————————————————————————————————————————————————
那么说说pod: pod运行在node里面 pod的基础下有k8s的基础功能镜像支持,
pod这个容器共享这Pause容器的网络栈和volume挂载卷(其实是挂起功能和docker的逻辑卷)
_______________________________________________________________________________
那么service 和pod之间有何关联:
k8s给每个pod打上了一个标签(label)[懂docker的都知道],在此条件之上,比如咱们要找mysql容器
那么他的选择条件就是name=mysql的pod,而这个pod现在被打了mysql的标签,自然serivce就找到了pod的容器
这样就解决了service和pod的关联问题
———————————————————————————————————————————————————————
那么问题来了 当你运行一段时间之后发现需要扩展k8s容器的pod,那么有个概念就叫做 kubernetes RC
还是yaml ,为需要扩容的service关联的pod创建一个Replication Controller 就可以解决 扩容升级问题
写法:
(1) 目标Pod的定义 #就是就是name
(2) 目标Pod需要运行的副本数量(Replicas) #看到yaml的数字吗 就是那里
(3) 要监控的目标Pod的标签(Label) #就是你需要扩容servie关联的pod的标签
————————————————————————————————————————————————————————
注意:Kubernetes的master如果宕掉 整个kubernetes集群就都会宕掉
那么master为什么会宕机呢 答案是他所拥有的功能
功能揭秘:
kube-apiserver :提供了http Rest接口的关键服务进程 是kubernetes里所有资源的增删改查等操作的唯一入口,是集群控制的入口进程
kube-controller-manager:kubernetes里所有的资源对象的自动化控制中心
kube-scheduler:负责资源调度(Pod调度)的进程 #需要实现的cpu和gpu调度就是在需要在这里实现的
etcd:kubernetes的所有资源对象的数据全都是保存在etcd中
————————————————————————————————————————————————————————
如果你前面不懂node是什么:
揭秘:集群当中除了Master,其他机器都是node节点,每个node都是被master分配负载docker容器,当某个node宕机,其上的工作负载会被master
自动转移到其他节点上去。
哎哟:node上竟然也有命令 不过不要着急 就三个:
kubelet:负责pod对应容器的创建、停止。同时和master节点合作,实现集群管理的基本功能
kube-proxy:实现kubernetes service的通信与负载机制的重要组件
Docker Engine: Docker 引擎,负责本机的容器创建和管理工作 (docker熟练者就很简单了)
—————————————————————————————————————————————————————————
总结一下:
在集群管理方面,Kubernets将集群中的机器划分为一个Master节点和一群工作节点(Node),
其中,在Master节点上运行着集群管理相关的一组进程kube-apiserver、kube-controller-manager和kube-scheduler,
这些进程实现了整个集群的资源管理、Pod调度、弹性收缩、安全控制、系统监控和纠错等管理功能,并且都是全自动完成的。
Node作为集群中的工作节点,运行真正的应用程序,在Node上Kubernetes管理的最小运行单元是Pod。
Node上运行着Kubernetes的kubelet、kube-proxy服务进程,这些服务进程负责Pod创建、启动、监控、重启、销毁、以及实现软件模式的负载均衡。
——
txter:Mr.gao
date: 2019.12.12/20:34 星期五
天气:微风
———————————————————————————————————————————————————————————————————————————————— 明日计划:pod serice Rc
k8s知识1的更多相关文章
- k8s知识2
kubernetes到底有多难?看下面的白话: service 网络通信原理service 由k8s外面的服务作为访问端 内部里面其实是pod————————————————————————————— ...
- k8s学习笔记(1)- 简单部署springboot应用
前言:k8s全称kubernetes,k8s是为容器服务而生的一个可移植容器的编排管理工具,越来越多的公司正在拥抱k8s,并且当前k8s已经主导了云业务流程,关于更多的k8s知识,可自行学习 1.k8 ...
- 从一个例子入手Istio
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 本文使用的Istio源码是 release 1.5. 本篇是Istio系列的第一篇,希望 ...
- 《两地书》--Kubernetes(K8s)基础知识(docker容器技术)
大家都知道历史上有段佳话叫“司马相如和卓文君”.“皑如山上雪,皎若云间月”.卓文君这么美,却也抵不过多情女儿薄情郎. 司马相如因一首<子虚赋>得汉武帝赏识,飞黄腾达之后便要与卓文君“故来相 ...
- K8s 学习者绝对不能错过的最全知识图谱(内含 58个知识点链接)
作者 | 平名 阿里服务端开发技术专家 导读:Kubernetes 作为云原生时代的“操作系统”,熟悉和使用它是每名用户的必备技能.本篇文章概述了容器服务 Kubernetes 的知识图谱,部分内容参 ...
- Kubernetes(K8s)基础知识(docker容器技术)
今天谈谈K8s基础知识关键词: 一个目标:容器操作:两地三中心:四层服务发现:五种Pod共享资源:六个CNI常用插件:七层负载均衡:八种隔离维度:九个网络模型原则:十类IP地址:百级产品线:千级物理机 ...
- [转帖]K8s 学习者绝对不能错过的最全知识图谱(内含 58个知识点链接)
K8s 学习者绝对不能错过的最全知识图谱(内含 58个知识点链接) https://www.cnblogs.com/alisystemsoftware/p/11429164.html 需要加强学习 ...
- K8s 学习者绝对不能错过的最全知识图谱(内含 56个知识点链接)
导读:Kubernetes 作为云原生时代的“操作系统”,熟悉和使用它是每名用户的必备技能.本篇文章概述了容器服务 Kubernetes 的知识图谱,部分内容参考了网上的知识图谱,旨在帮助用户更好的了 ...
- k8s官网 基础知识入门教程
官网链接为 https://kubernetes.io/docs/tutorials/kubernetes-basics/ 基础操作环境为minikube 常见基础命令 查看基础的一些信息 # 查看版 ...
随机推荐
- 数据去重 -uniq
也是经常和管道 一起操作的. -c 每行出现的次数 -d 仅仅显示重复行 -u 仅仅显示不重复行 -i 忽略大小写 注: 在对字母进行去重的时候, 一定要先对文件进行排序之后,去重的功能才可以 ...
- redis发布订阅者
发布者pub.py import redis conn = redis.Redis(host='127.0.0.1', decode_responses=True) conn.publish(') 订 ...
- hype-v上centos7部署高可用kubernetes集群实践
概述 在上一篇中已经实践了 非高可用的bubernetes集群的实践 普通的k8s集群当work node 故障时是高可用的,但是master node故障时将会发生灾难,因为k8s api serv ...
- 解决FileInputStream 读取文件中文乱码问题(转)
当Java中使用 FileInputStream 读取txt等文档时,中文会产生乱码,解决方法如下: try { fis = new FileInputStream(file); InputStrea ...
- Aveva Marine 新建项目001
1# 项目代号定义,三个字符,例如Abc 2# 新建文件夹,命名为“Abc” 3# 新建文件名为evars.bat文件,放到项目文件夹的根目录 内容为: SET Abc000=项目文件夹路径\Abc0 ...
- 解决tomcat端口冲突
1.根据8080端口号查找占用8080端口的进程 netstat -ano|findstr " 进程id:6352 2.根据进程ID查找进程名字 tasklist|findstr " ...
- C#绘图、画笔相关
dg.SmoothingMode = SmoothingMode.HighSpeed; //高质量 dg.PixelOffsetMode = PixelOffsetMode.HighSpeed; // ...
- 一、maven学习
1.下载(maven 自带Tomcat 命令tomcat:run) 2.配置环境变量(cmd测试 mvn -v) 3.配置config 4.命令 mvn clean (删除target目录) ...
- SSE笔记
1.8位加: *(__m128i*)(dest + i * 16) = _mm_add_epi8(*(__m128i*)(srcA + i * 16), *(__m128i*)(srcB + i * ...
- 什么是IOC和什么是AOP,依赖注入(DI)和Ninject,Ninject
我们所需要的是,在一个类内部,不通过创建对象的实例而能够获得某个实现了公开接口的对象的引用.这种“需要”,就称为DI(依赖注入,Dependency Injection),和所谓的IoC(控制反转,I ...