From ad16056872ce5d101ac15274cecedb5a124e6606 Mon Sep 17 00:00:00 2001 From: faweizhao26 Date: Thu, 20 Oct 2022 17:45:36 +0800 Subject: [PATCH] add new case Signed-off-by: faweizhao26 --- content/zh/case/_index.md | 8 +- content/zh/case/vesoft.md | 96 +++++++++++++++++++++++ content/zh/case/xdf.md | 2 +- static/images/case/section6-vesoft-4.png | Bin 0 -> 29859 bytes 4 files changed, 104 insertions(+), 2 deletions(-) create mode 100644 content/zh/case/vesoft.md create mode 100644 static/images/case/section6-vesoft-4.png diff --git a/content/zh/case/_index.md b/content/zh/case/_index.md index 5ad800aa2..0d557e7d3 100644 --- a/content/zh/case/_index.md +++ b/content/zh/case/_index.md @@ -88,6 +88,10 @@ section2: content: "极视角科技是专业的人工智能计算机视觉算法提供商。" link: "extreme-vision/" + - icon: "images/case/section6-vesoft-4.png" + content: "vesoft inc. 成立于 2018 年 10 月,是一家科技型创业公司。" + link: "vesoft/" + section3: title: 'KubeSphere 助力各行各业' tip: 全部 @@ -150,7 +154,9 @@ section3: children: - name: 'sina' icon: 'images/case/section6-sina.jpg' - + - name: 'vesoft' + icon: 'images/case/section6-vesoft-4.png' + - name: '物流' children: - name: 'ZTO' diff --git a/content/zh/case/vesoft.md b/content/zh/case/vesoft.md new file mode 100644 index 000000000..14fbd6c0d --- /dev/null +++ b/content/zh/case/vesoft.md @@ -0,0 +1,96 @@ +--- +title: xdf +description: + +css: scss/case-detail.scss + +section1: + title: vesoft inc. + content: vesoft inc. 成立于 2018 年 10 月,是一家科技型创业公司。 + +section2: + listLeft: + - title: 公司简介 + contentList: + - content: vesoft inc. 成立于 2018 年 10 月,是一家科技型创业公司。公司创始团队来自于 Facebook、阿里巴巴、华为等国内外各大知名公司。致力于世界上唯一开源的分布式图数据库 NebulaGraph 的研发,为客户提供稳定高效的互联网基础技术服务。 + image: + + - title: 多云架构挑战 + contentList: + - content: Nebula Graph 的云产品定位是 DBaaS (Database-as-a-Service)平台,因此肯定要借助云原生技术来达成这一目标。到底该如何落地呢?首先要明确一点,任何技术都不是银弹,只有合适的场景使用合适的技术。虽然我们拥有很多可供挑选的开源产品来搭建这个平台,但是最终落实到交付给用户的产品上,还有很多挑战。 + - content: 业务挑战:多个云厂商的资源适配,这里需要实现统一的资源抽象模型,同时还要做好国际化,国际化需要考虑地域文化差异、当地法律法规差异、用户消费习惯差异等多个要素,这些要素决定了需要在设计模式上去迎合当地用户的使用习惯,从而提升用户体验。 + - content: 性能挑战:在大多数情况下,通过同一云厂商网络传输的数据移动速度比必须通过全球互联网从一个云厂商传输到另一个云厂商的数据移动速度要快得多。这意味着跨云之间的网络连接可能成为多云体系结构的严重性能瓶颈。数据孤岛很难打破,因为企业无法迁移格式不同且驻留在不同技术中的数据,缺乏可迁移性会带给多云战略带来潜在的风险。在单个云厂商中,使用云厂商的原生自动扩展工具配置工作负载的自动扩展非常容易,当用户的工作负载跨越多个云厂商时,自动扩展就会变得棘手。 + - content: 运营挑战:大规模的 Kubernetes 集群运营是非常有挑战的事情,满足业务的快速发展和用户需求也是对团队极大的考验。首先是做到集群的管理标准化、可视化,其次全部的运维操作流程化,这需要有一个深入了解运维痛点的管理平台,可以解决我们大部分的运维需求。数据安全上需要考虑在没有适当的治理和安全控制的情况下,将数据从一个平台迁移到另一个平台(或从一个区域迁移到另一个区域)会带来数据安全风险。 + image: + + - title: KubeSphere 多集群管理 + contentList: + - specialContent: + text: 平台化管理 + level: 3 + - content: KubeSphere 衍生自青云公有云的操作面板,除了继承颜值,同时在功能上也是相当完备。NebulaCloud 需要对接的主流云厂商都已经支持上,因此一套管理平台就可以运维所有的 Kubernetes 集群。多集群管理是我们最为看重的功能点。 + - content: 我们在本地环境部署了 Host 集群,其余的云上托管 Kubernetes 集群通过直连接入的方式作为 Member 集群,这里需要注意 ApiServer 访问配置放通单个 IP,比如本地环境的出口公网 IP。 + image: https://pek3b.qingstor.com/kubesphere-community/images/nebula-kubesphere-IP.jpg + - title: + contentList: + - content: + image: https://pek3b.qingstor.com/kubesphere-community/images/nebula-kubesphere-multicluster.jpg + - title: + contentList: + - specialContent: + text: 流程化操作 + level: 3 + - content: 我们使用 IaC 工具 pulumi 部署新集群,再通过自动化脚本工具设置待管理集群 member 角色,全部过程无需人工操作。集群的创建由平台的告警模块来触发,当单集群的资源配额达到告警水位后,会自动触发弹性出一套新的集群。 + image: https://pek3b.qingstor.com/kubesphere-community/images/nebula-pipeline.jpg + + - type: 1 + contentList: + - content: 降低多集群管理复杂度 + - content: 提升后台运营体验 + - content: 开发测试流程自动化 + + - title: + contentList: + - specialContent: + text: 自动化监控 + level: 3 + - content: KubeSphere 提供了丰富的内置告警策略,同时还支持自定义告警策略,内置的告警策略基本可以覆盖日常所需的监控指标。在告警方式上也有多种选择,我们采用了邮件与钉钉相结合的方式,重要紧急的可以通过钉钉直接钉到值班人员,普通级别的可以走邮件方式。 + image: https://pek3b.qingstor.com/kubesphere-community/images/nebula-kubesphere-notification.jpg + - title: + contentList: + - content: + image: https://pek3b.qingstor.com/kubesphere-community/images/nebula-kubesphere-monitor.jpg + - title: + contentList: + - specialContent: + text: 智能化运营 + level: 3 + image: https://pek3b.qingstor.com/kubesphere-community/images/智能化运-1.jpg + - title: + contentList: + - content: + image: https://pek3b.qingstor.com/kubesphere-community/images/智能化运营-2.jpg + + - type: 2 + content: '省去了 K8s 多集群管理与基础设施层运维后台的开发成本,KubeSphere 丰富的可插拔插件为智能化运营带来了良好的使用体验,我们通过主动运维提前发现问题,将风险控制在源头,提升了平台服务的稳定性。' + author: 'vesoft' + + - title: 未来规划 + contentList: + - content: KubeSphere 还有很多好用的配套工具,比如日志查询、事件查询、操作审计日志等,这些工具在精细化运营都是必不可少的。 我们目前已经接入了测试环境集群,在深度使用掌握 KubeSphere 的全貌后会尝试接入生产集群。 + image: + + rightPart: + icon: /images/case/section6-vesoft-4.png + list: + - title: 行业 + content: 互联网 + - title: 地点 + content: 中国 + - title: 云类型 + content: 公有云 + - title: 挑战 + content: 多集群管理与后台运营 + - title: 采用功能 + content: 多集群管理、监控、应用商店 +--- diff --git a/content/zh/case/xdf.md b/content/zh/case/xdf.md index 14cc2d7f5..22876d8b8 100644 --- a/content/zh/case/xdf.md +++ b/content/zh/case/xdf.md @@ -149,7 +149,7 @@ section2: image: - type: 2 - content: 'Kubesphere 帮助我们简化了多集群管理,服务发布效率得到大幅提升,监控日志集中管理,让集群排障不再是黑盒。' + content: 'KubeSphere 帮助我们简化了多集群管理,服务发布效率得到大幅提升,监控日志集中管理,让集群排障不再是黑盒。' author: '新东方' - title: 未来规划 diff --git a/static/images/case/section6-vesoft-4.png b/static/images/case/section6-vesoft-4.png new file mode 100644 index 0000000000000000000000000000000000000000..149462dbcee89089b2e6a6efc7a5dc17392acd87 GIT binary patch literal 29859 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 literal 0 HcmV?d00001