lxd openstack lxd原始碼剖析

2022-07-17 04:30:16 字數 918 閱讀 1595

lxd:目標是融入到openstack體系被管理,像虛擬機器一樣被管理使用。從如下圖可知,並非走的是libvirt-lxc路線,而是nova-compute這一層直接走lxd。其提供了nova-lxd的plugin。

github上1749顆星,本人研究分析的時候版本為2.0.9(一年前).如下分析的也是2.0.9版本的時期。當前已經是3.1版本了。

題外話:容器標準oci已出,當前業界有新出虛擬化容器,hyper container。其路線大有可能是基於oci標準的容器既可以面向cloudnative應用的k8s路線,同時也可以面向虛擬化容器的openstack路線,而oci標準下已經存在runc(docker重構後的容器引擎部分,基於原有的libcontainer),也存在hypercontainer的容器引擎runv。而lxd的存在個人覺得似乎沒太大價值了(從目前看),無非就是no vendor lock in下的容器引擎的利益格局之爭。lxd主導方式ubuntu。 

pylxd是封裝的lxd restfull api的三方python庫。nova-lxd是基於nova-compute定義的標準南向介面的具體外掛程式實現。對於lxd容器的建立流程如下:實際上因為lxd的restfull介面和nova的compute外掛程式介面未必完全能完整對映(也就是lxd的能力並未完整暴漏到nova這一層),所以會涉及部分能力不能再openstack測體現(就如同hypervisor與libvirt,通用性的折中)。譬如虛擬機器下vcpu和容器化中cpu不等價,容器環境變數設定,linux kernel module載入控制,這些都未在nova-lxd中體現(雖然lxd側開放了配置能力)

spring security認證原始碼剖析

spring security 和shiro目前最主流的安全框架,很好的保護了系統的安全性。shiro實現的原理和spring security具有異曲同工之妙,學會乙個框架,另乙個框架也會很容易上手。1 spring security流程 usernamepasswordauthenticatio...

ReentrantLock獨佔鎖原始碼剖析

在開始分析reentrantlock 獨佔鎖之前,我們先來簡單了解幾個概念 悲觀鎖指對資料被外界修改持保守態度,認為資料很容易就會被其他執行緒修改,所以在資料被處理前先對資料進行加鎖,並在整個資料處理過程中,使資料處於鎖定狀態。例如synchronized。樂觀鎖是相對悲觀鎖來說對,它認為資料在一般...

locust對應原始碼HttpUser剖析(7)

老規矩,先貼 self.client session比較簡單,無非就是繼承了user的各個屬性,這裡把類變數client清空了,不再是noclientwarningraiser 了。其他都是繼續沿用,只是例項化的時候client變成了session。這個時候第乙個關注點就是,例項化的時候一定要有ho...