云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

整理自:[云原生 Meetup | KubeSphere & Friends 2021-上海站](https://mudu.tv/live/watch/general?id=me1ezxbl&time=1621058977484

KubeSphere带你远航

周小四:KubeSphere容器平台研发负责人

什么是云原生?

狭义

云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。这些技术能够构建容错性好、易于管理和便于观察的松精合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大变更。

广义

充分利用云计算的交付方式创建、部署、运行应用的一种途径。

区别于cloud-hosted或cloud-based,如Snowflake。

KubeSphere产品向产品家族的演进

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

混合云霞的K8S多集群管理尉应用部署

李宇:KubeSphere研发工程师

单集群

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

多集群场景

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

多集群现有的解决方案

Control Plane

  • Federation V1(Deprecated)
  • Federation V2(Kubefed)
  • GitOps(ArgoCD/FluxCD)

Network Centric

  • Cilium Mesh
  • Istio Multi-Cluster
  • Linkerd Service Mirroring

KubeSphere with Kubefed

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

Tower工作流程

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

多集群下的多租户支持

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

统一单集群/多集群ns管理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

应用一键部署 可配置的集群差异化设置 屏蔽kubefed底层

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

联邦资源的状态收集

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

KubeSphere多集群架构

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

liqo 去中心化的多集群解决方案

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

KubeSphere在媒体直播行业的实践

唐明:苏州广播电视总台 系统架构师/运维负责人

IT进化论

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

KubeSphere的应用——慢直播

实现音频文件与视频流的混合,推送至直播平台

技术难点:信号数量多,信源不稳定,随时会变化

方案迭代

  1. 尝试使用ffmpeg进行编码
  2. 使用docker以容器方式运行
  3. 使用KubeSphere进行统一管理

KubeSphere的作用:

  • 统一管理
  • 任务编排
  • 状态监控
  • 出错报警
  • 日志统计

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

在云原生场景下构建企业级存储方案

杨兴祥:QingStor 高级软件工程师

云原生存储的挑战

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

常见云原生存储解决方案

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

NeonIO为什么适合云原生存储

NeonIO:一款支持容器化部署的企业级分布式块存储系统,能够给Kubernetes平台上提供动态创建(dynamic provisioning)持久存储卷(persistent volume)的能力。

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

易用性

  • 组件容器化:服务组件、CSI、Portal容器化
  • 支持CSI:提供标准的IO接入能力,可静态、动态创建PV
  • UI界面,运维方便:存储运维操作界面化、告警、监控可视管理,有基于PV粒度的性能监控,如IOPS、吞吐量,快速定位到热点PV,有基于PV粒度的Qos

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

与云原生高度融合

  1. 支持Promethus:通过ServiceMonitor把NeonlO的采集指标暴露给Promethus,同时UI界面可与Promethus对接,展示其他云原生监控的指标,比如node-exporter采集到节点磁盘IO负载

  2. 平台化的运维方式:存储的扩容、升级、灾难恢复运维操作、只需要k8s的一些命令即可实现,K需要额外掌握过多的存储相关的运维知识

  3. 服务发现、分布式协调支持etcd、元数据的管理,使用CRD的方式;

一键式部署

helm install neonio ./neonio --namespace kube-system

部署灵活

充分利用k8s的编排能力,部署简单、灵活

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

高性能:单卷IOPS 10K,时延 亚毫秒

全闪的分布式存储架构

  1. 集群中所有节点共同承担压力,IO性能随着节点增加而线性增长
  2. 存储介质支持NVME SSD
  3. 支持RDMA:通过高速的RDMA技术将节点连接

极短的IO路径

抛弃文件系统,自研元数据管理系统,使IO路径极短

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

HostNetwork

优势:Strore CSI Pod使用HostNetwork,直接使用物理网络,减少网络层次

管理网络、前端网络、数据同步网络分离,避免网络竞争;

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

高可用

服务组件可靠性与可用性

  1. NeonIO管理服务默认使用3副本POD
  2. 使用探针检测POD服务是否可用,是否存活,检测到POD服务部可用剔除组件服务,检测到POD死掉后重启POD,使其重新启动服务

数据的可靠性与可用性

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

敏捷性

Pod跨节点重建高效:2000PV的挂载/卸载16s

批量创建PV能力:2000PV的创建5min

NeonIO应用场景

  • Devops场景:批量快速创建/销毁PV能力,2000PV创建5min
  • 数据库场景:WEB网站后端数据库MySQL等提供稳定的持久化存储,提供高IOPS、低时延
  • 大数据应用分析场景:提供超大容量,PV可扩容到100TB

中通快递关键业务和复杂架构挑战下的Kubernetes集群服务暴露实践

王文虎:ZKE容器平台研发

ZKE容器管理平台

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

Kubernetes集群服务暴露方案

  1. Dubbo服务之间访问
  2. 泛域名方式访问
  3. 自定义域名方式访问

Kubernetes集群服务暴漏方案

Dubbo服务之间访问

为兼容dubbo服务虚拟机和容器混布场景,通过bgp协议打通了pod网段和物理网络,解决了dubbo服务互相调用问题。

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

泛域名方式访问

  1. 减少域名运维工作量
  2. 用户方便定义域名
  3. 适用于开发和测试环境

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

自定义域名访问

  1. 用户需要https域名
  2. 用户对域名格式有要求
  3. 适用于生产环境

服务暴漏方案踩坑实践

Ingress Nginx Controller服务踩坑实践

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

Calico关闭natOutgoing

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

MySQL on K8S 开源开放的高可用容器编排方案

高日耀:资深MySQL内核研发

为什么要做MySQL容器化?

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

MySQL容器化需要考虑的问题

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

什么是RadonDB?

RadonDB现已升级为青云数据库产品的品牌。

涵盖MySQL、PostgreSQL、ClickHouse等主流数据库。

RadonDB MySQL容器化

在KubeSphere和Kubernetes上安装部署和管理

自动执行尉RadonDB MySQL集群有关的任务。

什么是RadonDB MySQL?

基于MySQL的开源、高可用、云原生集群解决方案。

支持一主多从高可用架构。

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

部署效果

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

基于云原生架构下的DevOps实践

蒋立杰:江苏苏宁银行云计算负责人

传统DevOps如何技术演进为云原生DevOps

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

苏宁银行云平台总体架构

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

苏宁银行DevOps总体架构

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

苏宁银行DevOps系统选型分析

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

苏宁银行Tekton+ArgoCD实践-场景

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

基于Argocd-Rollouts进行blue/green canary发布

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

新旧灰度对比

云原生 Meetup | KubeSphere & Friends上海站分享大会讲座资料整理

上一篇:Rust Meetup 登陆深圳,满满的都是干货!


下一篇:从小工到专家阅读笔记01