《【知乎王路】知乎云原生微服務架構實踐.pdf》由會員分享,可在線閱讀,更多相關《【知乎王路】知乎云原生微服務架構實踐.pdf(37頁珍藏版)》請在三個皮匠報告上搜索。
1、知乎云原生架構實踐知乎云原生架構實踐王路 知乎云原生架構負責人個人簡介:王路:2016 年加入知乎,深度參與了知乎云原生架構的演進。目前擔任云原生團隊負責人,負責公司內部在線基礎設施云原生架構的建設和演進。03 總結與展望01 云原生架構在知乎的演進歷程02 知乎云原生架構實踐云原生架構的演進容器不可變基礎設施聲明式 API服務網格微服務03 總結與展望01 云原生架構在知乎的演進歷程02 知乎云原生架構實踐知乎云原生架構的演進歷程業務容器化業務容器化MesosMesos注冊中心注冊中心HAProxyHAProxy業務容器化業務容器化注冊中心注冊中心HAProxyHAProxyKubernet
2、esKubernetes中間件容器化中間件容器化業務容器化業務容器化KubernetesKubernetes注冊中心注冊中心HAProxyHAProxy中間件容器化中間件容器化數據庫容器化數據庫容器化ServiceMeshServiceMesh業務容器化業務容器化KubernetesKubernetes中間件容器化中間件容器化數據庫容器化數據庫容器化ServiceMeshServiceMesh混合云混合云離在線混部離在線混部知乎云原生整體架構03 總結與展望01 云原生架構在知乎的演進歷程02 知乎云原生架構實踐-調度編排:KubernetesKubernetes:云原生基石性能?可擴展性?穩
3、定性!1、控制集群規模 2、保護好 Apiserverkubernetes kubernetes kubernetes kubernetes 控制 kubernetes 集群規模研發成本運維成本故障影響 1、集群如何劃分 2、多集群的資源調度多集群要解決的幾個問題 3、多集群的服務發現與通信1 1、基礎組件集群、基礎組件集群(Kafka(Kafka、TiDBTiDB、PulsarPulsar、Redis)Redis)和業務集群分開和業務集群分開2 2、業務集群按照規模拆分、業務集群按照規模拆分3 3、單個集群控制在、單個集群控制在 3000 3000 節點以內節點以內4 4、各個集群間網絡互通
4、、各個集群間網絡互通、DNS DNS 互通互通5 5、多個、多個 k8s k8s 集群通過平臺進行統一管理集群通過平臺進行統一管理如何進行多集群的劃分?輕量級多集群調度Apiserver 穩定性Gateway:七層限流能力Gateway:日志審計、監控下線 kube-proxy基于負載的調度二次調度內核隔離服務畫像動態超賣其它能力建設干擾監測、動態壓制03 總結與展望01 云原生架構在知乎的演進歷程02 知乎云原生架構實踐-流量管理:服務網格、消息隊列、網關為什么選擇服務網格?1.日益復雜的微服務對于治理能力的需求。2.現有方案的改造和維護成本過高。3.服務網格方案 istio 提供了豐富的、
5、標準化的流量治理能力服務遷移性能優化負載均衡限流組件服務預熱推送性能優化:Istio 的多集群架構多主架構區域感知能力集群間的服務發現與通信知乎 ServiceMesh 應用現狀99%業務1KW+QPS服務發現負載均衡故障注入限流熔斷流量鏡像服務預熱關于 ServiceMesh 的幾個問題 1.核心的優勢?2.性能上的影響?4.Proxyless Mesh?3.是否應該引入?標準化;治理和開發分離;升級成本 影響可接受,除非時延特別敏感;mTLS看業務需求SDK 的升級和維護成本服務的東西向異步通信:消息隊列容器化的部署方式大大降低了 Kafka 和 Pulsar 的運維成本MQ Mesh?南
6、北向流量管理:微服務網關 APISIX性能:基于 Radixtree Route 和 etcd 提供路由極速匹配與配置快速同步的能力高可用與可擴展性全動態多平臺、多協議03 總結與展望01 云原生架構在知乎的演進歷程02 知乎云原生架構實踐-可觀測:Metric、Logging、Tracing可觀測:指標系統(Metric)使用 Victorial Metrics 作為統一存儲自研組件支持 graphite 格式的寫入和查詢能力可觀測:日志(Logging)filebeat 作為收集端自研在線存儲與查詢引擎全量日志通過 flink 落地 HDFS可觀測:鏈路追蹤(Tracing)統一使用 Op
7、enTelemetry 收集端ClickHouse 用于存儲和查詢03 總結與展望01 云原生架構在知乎的演進歷程02 知乎云原生架構實踐-平臺應用部署平臺CI/CD滾動發布金絲雀發布藍綠發布服務網格平臺限流熔斷認證鑒權流量鏡像故障注入網關平臺路由重寫灰度發布限流熔斷流量染色可觀測平臺全鏈路指標指標大盤容器指標中間件指標DevOps 平臺03 總結與展望01 云原生架構在知乎的演進歷程02 知乎云原生架構實踐 6K+1K+3min30%+服務數日均部署次數平均部署時長業務集群平均 CPU 利用率1.基礎架構要時刻關注業務架構需求。2.穩定性是第一位的。未來展望多云多活離在線混部serverless謝謝 謝謝 觀觀 看看thanks