鯤鵬經典直播征文】+【鯤鵬應用使能套件】BoostKit虛擬化

      網友投稿 992 2022-05-29

      一、鯤鵬應用使能套件BoostKit虛擬化整體介紹

      1)主流虛擬化技術

      對比了幾種主流虛擬化技術架構:ESXi、Xen與KVM,其主要差別在與各組件(CPU、內存、磁盤與網絡IO)的虛擬化與調度管理實現組件有所不同。

      ESXi虛擬化:所有虛擬化功能都在內核實現。

      Xen虛擬化:內核僅實現CPU與內存虛擬化, IO虛擬化與調度管理由Domain0(主機上啟動的第一個管理VM)實現。

      KVM虛擬化:內核實現CPU與內存虛擬化,QEMU實現IO虛擬化,通過Linux進程調度器實現VM管理。

      2)虛擬化發展趨勢:

      經過長時間發展,傳統行業市場基于KVM技術構筑成熟、穩定的IaaS平臺;

      互聯網行業基于Docket容器技術構筑靈活、標準化、輕量化PaaS平臺;

      3)鯤鵬虛擬化總體架構

      鯤鵬BoostKit虛擬化總體架構主要由硬件基礎設施、操作系統、云平臺、云管理集群平臺構成,其中云平臺支持華為自研的HCS(HUAWEI CLOUD Stack)私有云平臺以及開源QEMU-KVM、開源Docker容器平臺。云管理集群平臺包括開源OpenStack平臺、開源oVirt平臺和開源Kubernetes平臺。

      4)鯤鵬BoostKit虛擬化優勢:

      鯤鵬BoostKit虛擬化基于TaiShan 200服務器,端到端打通硬件、操作系統、虛擬化軟件、OpenStack云管理軟件的全堆棧,并根據鯤鵬架構進行深度性能調優。鯤鵬BoostKit虛擬化相比友商在性能、虛擬機密度方面有一定優勢。性能調優從硬件參數、操作系統內核、虛擬化調優3個方面展開。主要價值如下:

      鯤鵬BoostKit虛擬化深度進行性能優化,充分發揮鯤鵬處理器的多核性能優勢:

      TaiShan 200服務器(2*華為鯤鵬920 5250處理器)對比業界主流高端雙路服務器,滿負載場景下業務性能有所提升。

      TaiShan 200服務器(2*華為鯤鵬920 5250處理器)對比業界主流高端雙路服務器,綜合負載場景下業務性能有所提升。

      鯤鵬BoostKit虛擬化從硬件參數、操作系統內核及虛擬化平臺進行性能調優。調優項如圖所示。

      圖?虛擬化性能調優項

      鯤鵬BoostKit虛擬化擁有開放的軟件生態:

      支持開源KVM、開源Docker組件,支持開源OpenStack、Kubernetes和oVirt云管理平臺。

      支持華為HCS私有云。

      5)鯤鵬BoostKit虛擬化平臺優勢:

      64核+多核計算架構:資源池大、整機性能高;

      虛擬機基于物理核構建:VM隔離性好,性能更穩定;

      整機虛擬機密度更高:減少需要部署的服務器降低Capex;

      二、鯤鵬應用使能套件BoostKit虛擬化開源使能

      1)鯤鵬支持開源OpenStack+KVM虛擬化

      OpenStack+KVM解決方案是TaiShan 200服務器和開源OpenStack/KVM組合解決方案,此方案解決開源OpenStack和KVM虛擬化軟件在TaiShan服務器上適配問題,同時基于開源軟件進行性能調優,給客戶提供性能調優指導。

      OpenStack既是一個社區,也是一個項目和一個開源軟件,它提供了一個部署云的操作平臺或工具集。其宗旨在于,幫助組織運行為虛擬計算或存儲服務的云,為公有云、私有云提供可擴展的、靈活的云計算。

      OpenStack包含主要開源組件包括Nova、Cinder、Neutron、Glance、Swift、Placement、Keystone、Horizon、Heat、Ceilometer。

      2)鯤鵬支持開源Kubernetes+Docker虛擬化

      Kubernetes(K8s)+Docker解決方案是TaiShan 200服務器和開源K8s/Docker組合解決方案,此方案解決開源K8s和Docker虛擬化軟件在TaiShan服務器上適配問題,同時基于開源軟件進行性能調優,給客戶提供性能調優指導。

      Linux container技術是通過與主機共用內核,結合內核的cgroup和namespace實現的一種虛擬化技術,極大的減少了對主機資源的占用且具有較快的啟動速度。Docker就是一個Linux container引擎技術,實現應用的打包、快速部署等。Docker通過Linux Container技術將App變成一個標準化的、可移植的、自管理的組件,實現了應用的build once,run everywhere。Docker技術特點是:應用快速發布、應用部署和擴容簡單、更高的應用密度、應用管理更簡單。

      Kubernetes將Docker容器宿主機組成集群,統一進行資源調度,自動管理容器生命周期,提供跨節點服務發現和負載均衡;更好的支持微服務理念,劃分、細分服務之間的邊界,比如Label、Pod等概念的引入。

      K8s由Master和Node組成,其架構輕量,遷移方便,部署快捷,插件化,可擴展。

      3)鯤鵬支持開源Ovirt+KVM虛擬化

      oVirt和KVM解決方案是TaiShan 200服務器和開源Ovirt、KVM組合解決方案,此方案解決oVirt虛擬化軟件在TaiShan服務器上適配的問題。

      oVirt是一個開源虛擬化管理平臺,它允許從具有獨立于平臺訪問的Web的前端集中管理虛擬機、計算、存儲和網絡資源。主要組件元素包括oVirt Engine、VDSM、基于KVM的虛擬機、存儲、數據庫。

      oVirt和KVM部署架構如下圖所示。

      4)鯤鵬OpenStack虛機與X86平臺混合部署

      應用場景:

      在OpenStack云平臺中,因業務架構、節點類型需要不同的Availability Zone可用域,包括計算Nova域、存儲Cinder域、網絡neutron域,并期望可以將AZ對應起來以便起到隔離的效果,每個AZ域之間是隔離的。

      部署方式包括:

      虛擬機場景混合部署

      裸金屬服務場景混合部署

      Openstack與Ceph集成混合部署(Ceph-14.2.1)

      5)鯤鵬K8S Docker容器與X86平臺混合部署

      應用場景:

      K8S容器集群擴容場景

      新建K8S容器集群場景

      技術原理:

      K8S原生支持多體系結構混合部署,無需修改代碼

      支持混合部署方式:

      K8S與Docker容器集群混合部署(TaiShan 2000和RH2288 V5)

      三、鯤鵬BoostKit虛擬化關鍵特性

      1)大規模Docker容器組網特性

      容器網絡簡介

      在容器化微服務化業務場景,云端部署容器的關鍵之一是管理容器集群間的網絡,使得節點內部或物理節點之間的容器可以達成網絡互通。

      當前針對Linux容器配置網絡接口業界存在兩個標準提議——容器網絡模型(Container Network Model,簡稱CNM)和容器網絡接口(Container Network Interface,簡稱CNI),本文基于業界最常用的容器編排引擎Kubernetes,針對當前較為成熟和使用最為廣泛的網絡平面組件Open vSwitch和Calico進行介紹,并進行大規模集群部署的驗證實踐,用戶可根據業務場景的實際規模、功能需求和性能訴求,決定使用最適合的網絡平面組件。

      應用場景

      用戶在使用容器編排引擎部署服務時,例如Kubernetes集群,需要進行網絡平面規劃和部署時,可參考本文內容進行組件的選型和擇優;當集群規模較大時(物理節點或Pod對象規模超過100量級),本文對用戶網絡平面的常見組件進行組網與模擬測試。

      實現原理

      如下圖所示,OVS軟件主要架構由內核態的Datapath和用戶態的vswitchd、ovsdb組成。

      Datapath是負責數據交換的內核模塊,從網口讀取數據,快速匹配FlowTable中的流表項,成功的直接轉發,失敗的上交vswitchd進程進行處理。在OVS初始化和port binding時注冊鉤子函數,把端口的報文處理接管到內核模塊;

      vswitchd是負責OVS管理和控制的守護進程,通過Unix Socket將配置信息保存到ovsdb中,并通過Netlink和內核模塊進行交互;

      ovsdb是OVS數據庫,保存了OVS的配置信息。

      此外,OVS發布包中還包含了一系列管理工具(ovs-vsctl、ovs-dpctl、ovs-ofctl、ovs-appctl、ovs-docker等),方便用戶對OVS進行配置和使用。

      Open vSwitch軟件架構圖

      如下圖所示,在OVS接管網絡數據前,數據包在Linux網絡協議中的流向為虛線所示——物理網卡端口在接收到數據包后經過內核協議棧的層層解析,最后離開內核態,把數據傳送到內核態;

      而經過OVS創建網橋、綁定物理網卡后,數據流從物理網卡端口收包后,在內核態經由OVS的vPort進入到OVS中,根據數據包Key值進行FlowTable流表匹配,成功則執行流表Action后續流程,失敗則進行Upcall由vswitchd進程進行處理。

      Open vSwitch基本原理圖

      如下圖所示,Calico組件主要架構由Felix、Confd、BIRD組成。

      Felix是負責Calico Node運行并作為每個節點Endpoint端點的守護程序,它負責管理當前主機中的Pod信息,與集群etcd服務交換集群Pod信息,并組合路由信息和ACL策略;

      Confd是負責存儲集群etcd生成的Calico配置信息,提供給BIRD層運行時使用;

      BIRD(BIRD Internet Routing Daemon)是核心組件,Calico中的BIRD特指BIRD Client和BIRD Route Reflector,負責主動讀取Felix在本機上設置的路由信息,并通過BGP廣播協議在數據中心中進行分發路由。

      此外,etcd組件是Calico組件運行的依賴組件,需事先在集群中部署etcd服務,或復用Kubernetes的etcd;Calico官方也提供了calicoctl管理工具,用于與Calico Node進行狀態確認、狀態配置等操作。

      Calico軟件架構圖

      2)OVS流表歸一化特性(CentOS 7.6)

      簡要介紹

      OVS流表歸一化特性是XPF網絡加速框架的一種OVS流表處理加速方案。其核心思想是在開源OVS+DPDK方案基礎上,對其流表做歸一化處理,減少開源方案某些場景下數據處理要多次查表的次數,來達到加速云計算中數據包轉發性能的目的,典型應用場景是VXLAN+CT組網。

      【鯤鵬經典直播征文】+【鯤鵬應用使能套件】BoostKit虛擬化

      DPDK是Intel公司開源的高性能用戶態網絡數據平面開發工具集,Open vSwitch(以下簡稱OVS)是云計算內廣泛應用的開源虛擬交換機實現,OVS+DPDK提供了靈活的網絡管理和高性能轉發的能力。關于OVS和DPDK的更多信息請訪問DPDK官網(https://www.dpdk.org/)和OVS官網(https://www.openvswitch.org/)。

      環境要求

      項目

      說明

      CPU

      鯤鵬處理器

      網卡

      支持DPDK

      項目

      版本

      -

      CentOS

      7.6

      https://mirrors.huaweicloud.com/centos-vault/altarch/7.6.1810/isos/aarch64

      3)OVS流表網卡加速特性

      OVS流表網卡加速方案主要是利用智能網卡的OVS流表卸載方案,將原來處于系統內核態的datapath轉發路徑卸載到智能網卡上。利用網卡硬件查表替代原內核態的軟件查表流程,加速了流表的查找速度,提升報文的轉發性能。

      OVS流表網卡加速方案基于SR-IOV實現。SR-IOV(Single-Root I/O Virtualization硬直通)分為PF(Physical Function)和VF(Virtual Funciton)兩個功能類型,其架構設備允許一個物理設備支持多個虛擬功能,可減少每個附加功能的硬件成本。使用硬加速特性,需要配置并使能SR-IOV。

      如下圖組網圖所示,使用SR-IOV需兩臺服務器,兩臺服務器的網卡通過網口直連的方式進行網絡通信。文中對兩臺服務器簡稱為Host1和Host2。

      組網圖

      服務器

      IP地址

      Mellanox CX5網口名

      Host1

      90.90.51.22

      enp1s0f0

      PCI端口號:0000:01:00.0

      enp1s0f1

      PCI端口號:0000:01:00.1

      Host2

      90.90.51.112

      enp1s0f0

      PCI端口號:0000:84:00.0

      enp1s0f1

      PCI端口號:0000:84:00.1

      硬件配置如下表硬件配置所示。

      項目

      說明

      CPU

      鯤鵬920處理器

      網卡

      Mellanox CX5公版系列網卡

      其它

      RAID卡要求支持直通,其它無特殊要求

      操作系統要求如下表操作系統要求所示。

      項目

      版本

      備注

      openEuler

      20.03-LTS-SP1

      -

      Kernel

      4.19.90

      操作系統鏡像自帶版本

      網卡固件

      16.29.2002

      Mellanox驅動包自帶

      網卡驅動

      OFED-5.2-2.2.0

      -

      Python

      2.7.5

      系統鏡像自帶版本

      gcc

      7.3.0

      系統鏡像自帶版本

      虛擬機OS

      CentOS Linux release 7.6.1810 (AltArch)

      -

      四、鯤鵬應用使能套件BoostKit虛擬化調優

      1)Docker容器調優

      Docker使用客戶端-服務器體系結構,架構圖如下圖所示。Docker客戶端與Docker守護進程(Docker daemon)通信,該守護進程負責構建、運行和分發 Docker 容器的繁重工作。Docker 客戶端和守護進程可以在同一系統上運行,也可以將Docker客戶端連接到遠程Docker守護進程。Docker客戶端和守護進程使用REST API、UNIX套接字或網絡接口進行通信。

      Docker容器架構

      主要從硬件參數、操作系統、Docker容器等這幾個維度介紹TaiShan服務器在CentOS 7.6操作系統Docker容器場景的性能調優。

      Docker容器平臺性能調優,可參考下圖流程。

      下面簡單匯總影響/提升Docker容器性能的TOP N調優項,用戶可以基于自己的需求選擇合適的調優項做適當調整,使其在某種特定場景下達到性能最優。

      調優項

      描述

      適用場景

      備注

      BIOS配置

      內存刷新頻率設置為Auto

      商用

      對內存帶寬性能提升明顯,改成Auto能提升性能

      NUMA親和性

      Docker容器的CPU綁核和內存分配在同一個物理node節點,避免跨die跨片訪問內存

      商用

      可提升Docker容器計算性能

      CPU綁核

      Docker容器的CPU綁核按1:1綁定

      商用

      -

      Docker容器的CPU綁核按CPU Cluster范圍綁核

      僅適用于POC測試

      可提升Docker容器計算性能

      網卡中斷親和性

      將中斷綁定到物理網卡所在的numa的CPU上

      商用

      -

      2 )KVM調優

      通過在服務器上部署KVM虛擬化環境,將硬件資源虛擬化,從而使一臺物理服務器可以承擔多臺服務器的工作。KVM虛擬化平臺組成如下圖所示,其中Qemu-KVM負責硬件資源的虛擬化,采用虛擬計算、虛擬網絡、虛擬存儲等技術,完成計算資源、存儲資源、網絡資源的虛擬化。

      KVM虛擬化架構

      主要從硬件參數、操作系統和虛擬化三個維度介紹如何對TaiShan服務器在CentOS 7.6操作系統下KVM虛擬化場景做適當調整,使其在某種特定場景下達到性能最優。

      KVM虛擬化平臺性能調優,可參考如下圖所示的流程。

      KVM虛擬化性能調優三板斧

      下面簡單匯總影響/提升KVM虛擬化性能的TOP N調優項,用戶可以基于自己的需求選擇合適的調優項做適當調整,使其在某種特定場景下達到性能最優。

      調優項

      描述

      適用場景

      備注

      BIOS配置

      內存刷新頻率設置為Auto

      商用

      對內存帶寬性能提升明顯(詳見設置內存刷新頻率為Auto)

      NUMA親和性

      虛擬機的vCPU和內存分配在同一個物理node節點,避免跨die跨片訪問內存

      商用

      對CPU虛擬化性能提升明顯(詳見CPU 1:1綁核,內存訪問同die)

      CPU綁核

      vCPU和pCPU一一綁定

      商用

      對CPU虛擬化性能提升明顯(詳見虛擬機綁核)

      vCPU按CPU Cluster范圍綁核

      僅適用于POC測試

      對內存帶寬性能提升明顯(詳見虛擬機綁核)

      內存大頁

      關閉透明大頁,使用512MB內存大頁

      商用

      在CentOS7.6下對CPU虛擬化性能提升明顯,大約提升5%(詳見虛擬機使用內存大頁)

      3 )Openstack調優

      OpenStack既是一個社區,也是一個項目和一個開源軟件,提供開放源碼軟件,建立公共和私有云,它提供了一個部署云的操作平臺或工具集,其宗旨在于幫助組織運行為虛擬計算或存儲服務的云,為公有云、私有云,也為大云、小云提供可擴展的、靈活的云計算。

      作為一個開源的云計算管理平臺,OpenStack由幾個主要的組件組合起來完成具體工作。OpenStack支持幾乎所有類型的云環境,項目目標是提供實施簡單、可大規模擴展、豐富、標準統一的云計算管理平臺。OpenStack通過各種互補的服務提供了基礎設施即服務(IaaS)的解決方案,每個服務提供API以進行集成。

      調優原則

      在性能優化時,我們必須遵循一定的原則,否則,有可能得不到正確的調優結果。主要有以下幾個方面:

      對性能進行分析時,要多方面分析系統的資源瓶頸所在,因為系統某一方面性能低,也許并不是它自己造成的,而是其他方面造成的。如CPU利用率是100%時,很可能是內存容量太小,因為CPU忙于處理內存調度。

      一次只對影響性能的某方面的一個參數進行調整,多個參數同時調整的話,很難界定性能的影響是由哪個參數造成的。

      由于在進行系統性能分析時,性能分析工具本身會占用一定的系統資源,如CPU資源、內存資源等等。我們必須注意到這點,即分析工具本身運行可能會導致系統某方面的資源瓶頸情況更加嚴重。

      調優思路

      下面介紹OpenStack虛擬化環境的調優思路及分析過程,如下圖所示。

      調優分析思路如下:

      當性能指標不滿足要求時,首先排查是哪段的問題。確認OpenStack客戶端(控制節點)的命令是否成功發送至服務端(計算/存儲節點)。

      若服務端沒有接收到較多壓力,則排查客戶端(可能性較小)與網絡問題。

      對于服務器端問題,需要定位的是硬件相關指標,例如CPU,內存、網絡、磁盤等,如果是某個硬件指標有問題,需要深入的進行分析。

      根據硬件指標,分析虛擬機內運行的應用程序,如算法設計、線程數、緩存方式等。具體分析不同程序的優化方案。

      五、結束語

      通過本次學習,了解鯤鵬虛擬化相關優勢。

      鯤鵬BoostKit虛擬化平臺在業界具有較大優勢;

      鯤鵬BoostKit虛擬化具有較好開源使能;

      鯤鵬BoostKit虛擬化具有較多的關鍵特性;

      鯤鵬BoostKit虛擬化支持多方面調優;

      =============================================================

      收集鯤鵬BoostKit虛擬化相關鏈接如下,供大家參考。

      1、直播鏈接:https://bbs.huaweicloud.com/live/kunpeng_live/202107161930.html

      2、鯤鵬BoostKit分布式存儲文檔鏈接:https://support.huaweicloud.com/twp-kunpengcpfs/kunpengcpfs_19_0019.html

      3、鯤鵬BoostKit交流社區:https://bbs.huaweicloud.com/forum/forum-931-1.html

      容器 虛擬化 視頻直播 鯤鵬

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:Python 爬蟲實戰五之模擬登錄淘寶并獲取所有訂單
      下一篇:華為云基于云原生媒體網絡,又出重磅新品
      相關文章
      亚洲永久无码3D动漫一区| 久久精品国产亚洲AV忘忧草18| 亚洲最大的成人网站| 99人中文字幕亚洲区| 国产亚洲av片在线观看16女人| 亚洲一区二区视频在线观看| 亚洲国产精品日韩专区AV| 国产亚洲精品91| 亚洲AV无码专区日韩| 亚洲国产综合久久天堂| 亚洲国产精品成人久久蜜臀| 一本色道久久88亚洲综合 | 亚洲国产综合AV在线观看| 亚洲日韩国产精品乱-久| 亚洲国产精品免费观看| 亚洲av无码片区一区二区三区| 亚洲av无码片区一区二区三区| 亚洲一卡2卡3卡4卡乱码 在线| 亚洲中文字幕乱码熟女在线| 亚洲精品动漫免费二区| 国产成人亚洲精品电影| 亚洲国产婷婷香蕉久久久久久| 亚洲av麻豆aⅴ无码电影| 亚洲男人av香蕉爽爽爽爽| 中文亚洲AV片不卡在线观看| 亚洲国产另类久久久精品小说| 国产亚洲高清不卡在线观看| 久久精品亚洲日本佐佐木明希| 亚洲成a人片77777老司机| 91久久亚洲国产成人精品性色| 亚洲国产精品婷婷久久| 亚洲熟妇av一区| 中文文字幕文字幕亚洲色| 亚洲精品无码永久在线观看男男| 亚洲av永久无码一区二区三区| 无码欧精品亚洲日韩一区夜夜嗨 | 亚洲高清免费视频| 激情97综合亚洲色婷婷五| 亚洲AV无码一区二区三区系列| 亚洲资源在线视频| 在线亚洲午夜片AV大片|