摘要:1.安装 sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common && curl -fsSL https://download
阅读全文
随笔分类 - 容器docker/k8s
摘要:1.更新软件源列表 sudo apt update 2.安装软件包依赖 sudo apt install apt-transport-https ca-certificates curl software-properties-common 3.在系统中添加Docker的官方密钥 curl -fsS
阅读全文
摘要:前面我们的课程中学习了大部分资源对象的使用方法,上节课我们通过一个WordPress的示例把我们前面的内容做了一个总结。今天我们来给大家讲解另外一个Pod控制器的使用方法,我们前面主要讲解的是Deployment这种对象资源的使用,接下来我们要讲解的是在特定场合下使用的控制器:DaemonSet与S
阅读全文
摘要:控制器 一、 Pod 的分类: 二、控制器类型: 1 Replication Controller(rc)和ReplicaSet(rs) 1.1ReplicaSet控制器示例: 2.Deployment 2.1Deployment控制器示例 3.DaemonSet 3.1DaemonSet控制器示例
阅读全文
摘要:大家都喜欢无状态的应用,因为存在随意停止、负载均衡,扩容、缩容等巨大优点,但是世界没有那么美好,都是无状态,那数据存放在哪里? 所以和Deployment差不多,K8S又搞了一个kind: StatefulSet来帮忙保存应用程序的数据,本质上在K8S上跑的是容器,容器本质是操作系统的进程,进程产生
阅读全文
摘要:1.应用场景 - 稳定的不共享持久化存储:即每个pod的存储资源是不共享的,且pod重新调度后还是能访问到相同的持久化数据,基于pvc实现。 - 稳定的网络标志:即pod重新调度后其PodName和HostName不变,且PodName和HostName是相同的,基于Headless Service
阅读全文
摘要:StatefulSet 有状态集群的调度。 对于ZooKeeper、Elasticsearch、MongoDB、Kafka等有状态集群,虽然集群中的每个Worker节点看起来都是相同的,但每个Worker节点都必须有明确的、不变的唯一ID(主机名或IP地址),这些节点的启动和停止次序通常有严格的顺序
阅读全文
摘要:Pod IP Kubernetes的最小部署单元是Pod。利用Flannel作为不同HOST之间容器互通技术时,由Flannel和etcd维护了一张节点间的路由表。Flannel的设计目的就是为集群中的所有节点重新规划IP地址的使用规则,从而使得不同节点上的容器能够获得“同属一个内网”且”不重复的”
阅读全文
摘要:kubernetes是什么? kubernetes是一个基于容器技术的分布式架构领先方案 k8s基础概念: Master 集群的"大脑",Kubernetes里的Master指的是集群控制节点,负责整个集群的管理和控制,基本上接收Kubernetes的所有控制命令,master负责具体的执行过程。m
阅读全文
摘要:1、service简介 2、开启kube-proxy的ipvs [root@server2 ~]# kubectl -n kube-system get pod | grep proxy 每个节点都有haproxy kube-proxy-d6cp2 1/1 Running 6 (121m ago)
阅读全文
摘要:01常见的业务场景 假设有两个服务A和B,他们之间相互调用,且同时对外提供,如下图所示 服务A和B之间必须互通 服务A和B都需要访问各种需要的基础设施,如数据库、消息队列等 服务A和B都对外暴露API 服务需要高可用,自动扩缩容 我们暂且不讨论这个架构设计是否合理,假设场景就是如此,正常线上情况往往
阅读全文
摘要:理解K8s中的三个IP概念 对于K8s集群中出现的三个IP概念:Node IP、Pod IP以及Cluster IP,它们分别指向不同的含义: 多个Pod部署在同一个物理机节点(或者虚拟机节点)上,此时这个节点的IP就是Node IP。 由多个pod组成的部署管理对象Deployment,如果需要对
阅读全文
摘要:文章目录 1. 核心组件原理 —— pod 核心原理 1.1 pod 是什么 1.2 pod 用来干什么 1.3 实现 web 服务集群 1.4 pod 底层网络和数据存储是如何进行的 2. ReplicaSet 副本控制器 2.1 副本控制器基本理解 2.2 ReplicaSet 和 Replic
阅读全文
摘要:文章目录 1. k8s 在企业中的应用场景 1.1 自动化运维平台 1.2 充分利用服务器资源 1.3 服务无缝迁移 2. 服务部署模式变迁 & 服务部署变化问题的思考 2.1 服务部署模式是如何变迁的 2.2 服务部署模式变化,带来了哪些问题 3. 云架构 & 云原生 3.1 云 和 k8s 的关
阅读全文
摘要:1. 复习 pod 相关核心结构 1.1 pod 结构 pod 相当于一个容器,pod 有独立的 ip 地址,也有自己的 hostname,利用 namespace 进行资源隔离,相当于一个独立沙箱环境。 pod 内部封装的是容器,可以封装一个,或者多个容器(通常是一组相关的容器) 1.2 pod
阅读全文
摘要:在实际生产环境中,有些容器内应用(比如编码器)需要用到物理层面的网络资源(比如组播流)。这就要求Kubernetes中的该Pod以HOST模式来启动。以下实验了Kubernetes-HOST网络模式,并给出了一些运维建议。 1、Pod的网络 每个Pod都会默认启动一个pod-infrastructu
阅读全文
摘要:容器化趋势已势不可挡,但是在迁移过程中会遇到很多的问题,典型的就是 在迁移过程中不可能将全部的服务一次性的迁移至k8s集群中,一般都会逐步的迁移,这种时候http的服务无所谓,但是遇到rpc的就比较麻烦,我们需要将一部分服务放在集群内,一部分服务放在集群外,这时就需要将注册中心放在k8s的集群外,可
阅读全文
摘要:1 前言 ● 介绍如何在kubernetes集群中部署一个Nginx服务,并且能够对其访问。 2 Namespace 2.1 概述 ● Namespace是kubernetes系统中一种非常重要的资源,它的主要作用是用来实现多套系统的资源隔离或者多租户的资源隔离。● 默认情况下,kubernetes
阅读全文
摘要:kubernetes 自从1.7开始,可以在pod 的container 内获取pod的spec,metadata 等信息。 具体方法可以通过env获取: env: - name: MY_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName
阅读全文
摘要:上一篇博客总结的项目怎么部署到k8s上运行,但是运行pod ip是docker网桥的IP地址段进行分配的,通常是一个虚拟的二层网络,外部网络并没有办法访问,并且,pod ip是随时会变的,不是固定的,k8s引入了Service的概念,通过Service管理这些pod,Service创建后的Servi
阅读全文