精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

EulerMaker:構建 openEuler 全場景生態

系統 Linux
Linux 中國開源社區就此采訪了吳峰光博士,為讀者挖掘到一些在峰會上亮相的 EulerMaker 背后的有趣細節。

引言

2022 年末,openEuler Summit 2022 上,中國 Linux 內核圈最有影響力的開發者之一——吳峰光博士做了名為《面向全場景操作系統的構建服務發布》的主題演講,正式向開發者披露了 openEuler 統一構建服務 EulerMaker

Linux 中國開源社區就此采訪了吳峰光博士,為讀者挖掘到一些在峰會上亮相的 EulerMaker 背后的有趣細節。

?? 吳峰光博士是著名的 Linux 內核貢獻者、華為計算操作系統首席專家、openEuler 社區技術委員會委員。他在 Linux 內核領域上擁有卓越貢獻,在 I/O 和內存管理、內核測試服務方面做出了重要的貢獻。有關他的故事,可以參閱《新程序員》雜志的專訪《吳峰光殺進 Linux 內核》。

openEuler 的全場景

2021 年 9 月,openEuler 宣布將支持全場景,在服務器、云計算之外,還支持 IoT 和嵌入式場景,這就引來了很多人的關注,但也有一些懷疑的眼光。因為,服務器和嵌入式分處兩端,中間有著巨大的鴻溝。

“30 年前,服務器 OS、嵌入式 OS,界限非常清晰,像是兩個村,中間全是農田。但后來 IT 越來越深入千行百業,云、邊緣、IoT 興起,各種場景涌現,發生了交疊。所以我們認為這是一個新的歷史機會,來做一個全場景 OS。”吳峰光說。

?? 關于多場景的支持和融合,請參考我們之前對歐拉技術委員熊偉的采訪:《??操作系統專家解讀 openEuler 22.09 最新技術特性??》。

“要做全場景 OS,就引入了一個需求:原來的構建系統,如何轉化為全場景統一構建系統?”

什么是 OS 構建系統?

OS 構建系統以 OS 源代碼作為輸入,以用戶可安裝使用的軟件倉或OS鏡像作為輸出。

?? 服務器領域的 OBS、嵌入式領域的 Bitbake,是各自領域的代表性構建系統,歷史悠久。

為什么需要新的構建系統?

“openEuler 社區一開始是用 OBS 來構建的,”吳峰光介紹說,“OBS 最初由 SUSE 貢獻開源,功能強大。但隨著使用的深入,我們發現一些復雜的新需求很難在它上面改進,這就對 openEuler 的演進造成了困難。”

就一般的 OS 來說,OBS 構建可能夠用;但是當一個操作系統要支持全場景,復雜度就大大增加,對構建系統提出了更嚴苛的要求。

吳峰光博士對 OBS、Bitbake 做了深入調研。他解釋了這些老牌構建系統,為什么滿足不了openEuler的需求:

“服務器領域的 OBS 主打能力是什么?幾大主流的 Linux 發行版它都支持,比如可以給 Redhat 打包,也可以給 Debian 打包。兼容并包是它的核心設計目標,適應了 Linux 多樣化的現狀。但我們認為,多樣化在早期對 Linux 發展有利,但長期而言,Linux 生態的碎片化是一個需要被解決的問題。”

“嵌入式領域的 Bitbake 采用了面向任務和過程的 DSL 描述語言,這使得它非常靈活強大,但自由度和復雜性過高,以學習曲線陡峭知名。現在流行的理念是如 YAML、JSON 等通用、聲明式的配置語言,和函數式編程,以實現低門檻、易理解、可控可重復的構建過程。”

在吳峰光看來,在 30 年后的今天,構建系統有著新的時代目標

2022 年 3 月,openEuler 團隊開始設計新的構建系統 EulerMaker。

EulerMaker 構建系統

OS 構建系統的核心流程是,用戶給定一組軟件包后,按照包依賴關系,對它們發起并行構建任務。“那么搭一個 Kubernetes 集群,上面疊加一個包構建調度模塊,是不是就可以了呢?”

“這里的包依賴管理和調度,的確非常復雜:既有源包的依賴,又有二進制包的依賴,還有構建環境的依賴;既有構建依賴,又有運行依賴,還有傳遞依賴;成千上萬的依賴關系,形成一個巨大的圖,要考慮怎么破環,把它變成一個有向無環圖(DAG),用于最大化并發調度。隨著包構建的推進,新輸出的 RPM 包需要成為之后 RPM 包構建的環境,還會提供新的依賴信息,動態更新這個 DAG 圖。還要考慮各種包構建的失敗情況,多用戶并發任務之間的干擾,或者任意機器、模塊隨時崩潰重啟后如何接力,避免單點故障,等等,這需要一整套精巧的架構設計。”

看到這樣的難題,可能有工程師大牛們要摩拳擦掌,躍躍欲試了。但是在難題面前,吳峰光不慌不忙,踩了一腳剎車——

“我們先把發動機放一邊,追根溯源,回到最初的那一個問題:用戶到底需要一輛什么車?

做架構設計,首先要考慮用戶場景,然后推導出功能,最后才能確定數據和流程。設計時全盤考慮了所有的用戶需求,數據和流程在未來才會穩定,才不會變來變去。

“我們對用戶需求的考慮,真的全面了嗎?”

吳峰光繼續展開分析:“在 Linux 發展的最初階段,需求是簡單的:只要功能實現了,跑一下 gcc / make 能構建出來,用戶能用,構建系統的工作就完成了。那時侯 Linux 社區對測試不重視,也還沒有 CI / CD 的概念,測試基本全靠用戶踩坑。現在情況就不一樣了,時代的要求在提高:開發者期望有質量把控,要做測試,要有一整套的構建測試 CI / CD,要覆蓋一整個開發流程,一站式全部搞定,出來的 RPM 包已經是經過測試的、用戶能放心用的。這已經被開發者認為是標配,是開發者的正常預期。”

所以,新的構建系統要集成測試流程。

那么,是不是直接集成現在流行的通用 CI / CD 測試工具就可以了呢?

“市面上的 CI / CD 通用測試服務,適合測試上層的應用;而操作系統需要測試的,既有上層軟件,又有基礎軟件;既面向應用開發者,又面向內核開發者,還有軟件廠商、硬件廠商、OS 廠商,他們都有獨特的測試需求;既要做功能測試,還要做性能測試。這些不是市面上通用 CI / CD 能做的。”

“所以,我們需要一套全棧系統,既能構建,又滿足上述所有測試需求。”

早在 2020 年,吳峰光就綜合分析上述需求,設計了 Compass-CI。Compass-CI 被設計為一個通用的任務執行系統,可以執行構建、功能測試、性能測試等各類任務。Compass-CI 也被設計為一個異構調度系統,可以調度物理機、虛擬機、容器等各種資源。

“Compass-CI 已經在 2020 年上線服務,在這個基礎上補足構建相關的模塊,就可以作為 EulerMaker 的后端,服務 openEuler 的構建。”

“當我們可以用一套系統,來服務好業界各方的需求,就會有硬件廠商問我們,能不能遠程接入他們的硬件?然后,我們就需要支持工作機遠程接入,分布式調度,數據共享,立足云端,連接各類線下機房,x86、ARM 等各類硬件,方便開發者之間、廠商之間、開發者與廠商之間的分布式協作。”

“資源有了,功能有了,開發者來了,也會有很多需求:我打包了,能不能看見進展?出問題了能不能復現當時的環境?能不能登錄調試修復?能不能 DIY 驗證?這些需求都需要一一滿足大家。現在 EulerMaker 的可視化界面可以顯示構建的進展,每個包會顯示其依賴關系圖以及其構建的進度,哪些包已經構建了,哪些包還沒有構建,預計還有多少分鐘,它前面還有哪幾個依賴都一目了然。而且每個開發者都可以有專屬隊列,可以大大縮短等待時間。”

EulerMaker 怎么解決全場景

一個 OS 怎么支持全場景?

“首先這個 OS 要足夠通用。但這還不夠。”吳峰光繼續說到:“一個通用的 OS,所帶的軟件往往要求大而全,把常見的功能都編進去。但很多場合有著不同的需求,比如啟用一個不常用的功能,或者在嵌入式設備上,因為資源受限,需要把不必要的功能裁減掉。”

一個通用軟件,往往會提供一組編譯期的定制功能,方便不同場景的開發者和用戶針對自己的需求,構建出不同功能組合的二進制程序。

“類似的,當我們說一個 OS 支持全場景,是只需維護一套 OS 源代碼,通過源碼級 + 鏡像級定制,即可構建生成各類場景化的二進制 OS 發布。強大的定制能力,是賦能一套 OS 源碼支持全場景的‘究極魔法’。”

吳峰光進一步介紹什么是定制能力:

“最簡單的定制能力,體現在軟件打包上,就是對用戶提供定制選項。一般是把上游軟件的可選功能做一個封裝,讓用戶在做包構建的時候可以打開或者關閉。比如 RPM SPEC 文件中通過宏定義了 ??%{with xxx}?? 選項,用戶就可以通過 ??rpmbuild --with xxx?? 來打開 ??xxx?? 選項對應的軟件功能。”

“然而 SPEC 文件中往往只封裝了少量選項,對于沒有被 SPEC 維護者封裝的上游軟件功能,用戶就只好自行修改 SPEC 文件來實現定制,這樣就很雜亂了。”

“事實上 OS 的用戶和場景多種多樣,他們需要的定制項,往往遠超包維護者所能提供。比如有人想升級版本號,有人想加個補丁,有人想加個編譯選項,或者修改編譯器。我們需要一種開放式的定制規范,即允許用戶在不修改打包文件的情況下,實現對打包文件的定制,且允許定制任意字段,不限于包維護者事先提供的一個封閉選項集合。”

“這時候就會發現 SPEC 文件的定制能力不夠用了。”

EulerMaker 怎么解決這個問題呢?

“我們引入了開發者們都很熟悉的 YAML 配置語言,用它來聲明式的描述一個軟件包。然后允許用戶再定義一個 YAML 文件,來選擇性覆蓋或者修改 OS 軟件包 YAML 文件里的任意字段。這樣不但實現了開放式定制,而且用戶定制選項都可以以 YAML 配置文件的形式,集中存儲管理,或者代碼化 Git 管理。”

不過,事情并沒有這么簡單。

“當用戶可以非常方便的定制任意字段,隨之而來一個風險:很多包字段之間有條件依賴和約束,用戶一不小心,就容易在不知情的情況下,破壞一些關聯約束。在過去,很多這種約束在 Git 日志里隱式維護的。比如開發者首先修改一個 SPEC 文件里的版本號,同時去掉一個只適用于老版本的補丁,完成對軟件包的一次升級。當暴露在定制環境下,這就是一大脆弱性,會造成事實上難以自由定制。”

而 EulerMaker 的解決辦法,是把該補丁適用的版本范圍,用條件語句顯式的寫在軟件包 YAML 里。“這樣用戶隨便改版本號,都不會出錯,其它關聯字段會自適應的變化,從而實現定制自由。”

如此一來,定制能力是強大了,那么易用性又如何?

“一般用戶要的不是一堆零件,而是套裝。成千上萬的定制項,小白用戶眼花繚亂,不知道拿它們怎么辦,他可能只知道我用的是 OrangePI,那有沒有對應的一組定制項可以拿來就用的?”

針對這個問題,EulerMaker 的解決思路如下:

“這組定制項,要由這個專業領域的開發者或者廠商,在社區里提供,我們稱之為一個定制層。每一種硬件、場景都可以有這樣一個個的定制層。這樣場景化 OS 的開發任務就簡化為,菜單式選擇所需的層,像搭積木一樣組合,輕松完成 OS 的場景化分層定制。”

以上,就是 EulerMaker 解決全場景的整體思路。最后,吳峰光總結說:

“一個好用的全場景 OS,一定會是一種生態協作的組織形態。首先把各個場景的公共知識下沉到 BaseOS,統一描述,匯聚復雜枯燥的字段間條件依賴,方便在各個場景中復用。然后創建一個個薄薄的場景化定制層,簡單描述各場景下“我要什么”的問題。BaseOS + 多樣化場景層,成為 openEuler 社區共同維護和提供的公共組件,通過搭積木的方式,讓開發者的 DIY 菜單式定制,成就一個輕松愉悅的 OS 創造體驗。”

為了讓讀者們對分層定制有一個直觀的概念,吳峰光舉了兩個例子:

1、Redis 容器裁剪:

env.CC: /usr/bin/musl-gcc -staticenv.CFLAGS: -I/usr/musl/includeenv.LDFLAGS: -L/usr/musl/libbuildRequires:    - musl-gccsubpackage.redis-server:    meta.summary: redis-server    files: XXXXXXXXXXXXXXXX

redis.yaml 示例

該示例使用不到十行的 YAML,即可裁剪出 1MB 的 Redis 。

2、內核定制維護:

version: 5.10.0-112.0.0patchset.my-xxx-improve: xxx.patch

kernel.yaml 示例

該示例使用一個 YAML 文件,兩行搞定Linux內核的定制維護。

“比如您在一家大公司的基礎設施團隊,需要在 openEuler 基礎上定制 Linux 內核,改一下版本,加一個補丁。在過去,您可能需要拷貝一份 ??kernel.spec??,然后直接在上面修改。這意味著維護上百行的 SPEC 文件,且時不時要從上游回合新的改進,這一過程枯燥而繁瑣。現在從 Fork 模式轉為搭積木模式,只需維護好一個小小的 ??kernel.yaml?? 文件。然后每次拉新的 BaseOS 重新構建,都會自動拿到上游歐拉內核的最新錯誤修復。這樣就很好的降低了開發維護成本,提高了安全性。是一種更加可持續的上下游協同演進方式。”

統一的包格式

在吳峰光的介紹中,我發現了一件令我很感興趣的事情,就是 openEuler 在探索自己獨有的軟件包規范。

我們知道,openEuler 現在采用的是業界主流的軟件包格式之一:RPM 。這種軟件包格式不僅僅被 Redhat Linux 使用,也被 openSUSE、OpenMandriva、Oracle Linux、Tizen 等使用。

而在 openEuler 中,RPM 軟件包不僅僅用在我們熟知的服務器、云計算領域,還應用在其它場景中,比如嵌入式。

為了一統軟件包的定義,openEuler 采用了新的 YAML 配置語言進行包描述,并接管 RPM 的 SPEC 文件,成為新的開發者界面。吳峰光說,SPEC 文件中采用了大量復雜的宏定義,而 EulerMaker 將這些復雜性隱藏到YAML后面。換言之,openEuler 新的統一構建系統采用的 YAML 配置語言制定了一種更通用、更靈活的包定義。

這是不是代表著 openEuler 會逐漸發展自己的軟件包格式?吳峰光表示,在保持兼容性的同時,openEuler 會走出一條自己的路。

別出心裁創建一種新的包格式容易,但是能在兼容既有架構的基礎上,又能開拓新的特性,乃至于支持更廣泛的場景,這應該很值得期待。

邁向開源開放

經過半年的努力,統一構建系統服務 EulerMaker 已經上線,已經在歐拉社區發揮作用,但是作為一個開源社區的產物,筆者更希望看到它能開源出來,惠及更廣大的開源社區,也接受開源社區的批評和貢獻。對此,吳峰光博士表示,一定是會開源的,但是目前還需要進一步打磨成熟。對于這樣的回應,筆者很認可,畢竟吳峰光博士對開源社區的貢獻一向以精益求精而著稱。非常期待能早日見到一個強大而完善的統一構建系統開源出來。

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2019-08-09 08:47:10

華為HMS智慧生活

2020-12-02 11:30:28

騰訊數據中心新基建

2021-07-13 07:04:19

Flink數倉數據

2022-01-06 14:49:13

數字經濟華為

2021-08-13 11:38:51

京東零售云智能出行

2023-08-04 18:52:11

華為鴻蒙生態

2021-06-10 10:42:52

華為HMS開發

2018-06-25 10:32:22

華為終端手機

2021-04-15 20:44:29

辦公

2020-08-31 10:45:42

IPv62020中國IPv6發

2025-09-26 15:39:27

點贊
收藏

51CTO技術棧公眾號

欧洲国内综合视频| 国产免费观看久久| 91精品国产91久久久久久吃药| 日韩aaaaa| 日韩成人亚洲| 亚洲女女做受ⅹxx高潮| 国产精品天美传媒| 欧美综合在线第二页| 少妇无套高潮一二三区| 日韩精品久久久久久久软件91| 无码av免费一区二区三区试看| 日韩欧美99| 亚洲国产成人一区二区| 天堂午夜影视日韩欧美一区二区| xxxxx91麻豆| 强迫凌虐淫辱の牝奴在线观看| 日本久久91av| 国产麻豆剧传媒精品国产av| 日本综合视频| 亚洲成人tv网| 综合久久国产| 欧洲一区av| 激情欧美一区二区| 国产成人亚洲综合| 亚洲国产成人精品激情在线| 91tv官网精品成人亚洲| 亚洲深夜福利在线| 国产午夜在线一区二区三区| 91麻豆精品国产综合久久久| 一本一道综合狠狠老| 青春草国产视频| 精品国产99久久久久久| 国产偷国产偷精品高清尤物| 精品国产福利| 精品国精品国产自在久不卡| 免费成人在线网站| 欧美专区在线观看| 日本三级视频在线| 欧美激情第二页| 北条麻妃久久精品| 欧美激情视频二区| 夜夜春成人影院| 亚洲精品720p| 亚洲成a人无码| 嫩呦国产一区二区三区av| 欧美三级日韩在线| 男女视频在线看| 国产精品毛片久久久久久久久久99999999| 精品日韩中文字幕| 国产一区二区在线视频播放| av资源在线| 亚洲线精品一区二区三区八戒| 二级片在线观看| 黄色av网站在线播放| 亚洲欧洲日韩在线| 秋霞在线一区二区| 国产网站在线免费观看| 亚洲人成网站精品片在线观看| 视频一区三区| 欧美日本高清| 亚洲视频资源在线| 丰满人妻一区二区三区53号| 在线播放免费av| 亚洲一区二区不卡免费| 欧美亚洲色图视频| 国产在线美女| 色婷婷综合久色| 日日噜噜噜噜久久久精品毛片| 日韩欧美一区二区三区在线观看 | 日韩人妻无码一区二区三区99 | 国产免费av观看| 国产一区二区三区国产| 成人影片在线播放| 深夜福利视频在线观看| 久久夜色精品一区| 亚洲日本无吗高清不卡| 久久五月精品| 午夜一区二区三区在线观看| 成人毛片视频网站| av成人在线看| 欧美成人免费网站| a视频免费观看| 日韩国产欧美一区二区| 欧美成人中文字幕| 国产成人精品一区二三区| 老牛嫩草一区二区三区日本 | 97超碰资源站| 成人免费三级在线| 日韩精品在在线一区二区中文| 免费在线观看av网站| 一片黄亚洲嫩模| 免费在线观看毛片网站| 亚洲综合视频| 日韩美女av在线| 亚洲女人毛茸茸高潮| 激情欧美丁香| 国产精品成人aaaaa网站| 国产乱码精品一区二区三区精东| 成人精品视频一区二区三区| 亚欧洲精品在线视频免费观看| av大大超碰在线| 色狠狠桃花综合| 中文字幕乱码在线人视频| 一区三区在线欧| 欧美大肥婆大肥bbbbb| 亚洲影院在线播放| 国产麻豆91精品| 欧洲精品国产| av成人 com a| 欧美精品一卡两卡| 久久精品老司机| 欧美精品激情| 国产日韩换脸av一区在线观看| 手机看片一区二区三区| 国产精品卡一卡二| 虎白女粉嫩尤物福利视频| 日韩欧美一级| 日韩中文字幕免费| 国产91精品一区| 成人综合在线视频| 黑人巨大国产9丨视频| 欧美成a人片在线观看久| 欧美va亚洲va| 一区二区三区四区五区| 男人的天堂久久精品| 久久亚洲免费| av中文字幕在线观看第一页| 欧美一区二区三区色| 成人欧美一区二区三区黑人一| 亚洲在线电影| 精品福利影视| av中文字幕在线看| 日韩精品专区在线影院观看| 国产午夜精品理论片在线| 麻豆精品精品国产自在97香蕉| 欧美日韩电影一区二区| 九九色在线视频| 91精品国产综合久久蜜臀| 黄色片在线观看免费| 玖玖精品视频| 欧美视频小说| 欧美成人影院| 亚洲人成在线观| 无码人妻黑人中文字幕| 久久综合色综合88| 国产福利视频在线播放| 亚洲宅男网av| 国产成人极品视频| 大地资源中文在线观看免费版| 色88888久久久久久影院野外| 我和岳m愉情xxxⅹ视频| 久热精品在线| 亚洲国产欧美不卡在线观看| 国产成人免费9x9x人网站视频| 国产亚洲精品美女| 欧美成人精品网站| 国产精品国产三级国产普通话蜜臀 | 成人午夜一级二级三级| 含羞草www国产在线视频| 91麻豆精品国产自产在线观看一区| 三级黄色在线观看| 国产精品一区免费在线观看| 国产91在线亚洲| 国产精品久久久久久久久久白浆| 国产做受高潮69| 手机看片1024日韩| 色偷偷久久一区二区三区| 亚洲av熟女国产一区二区性色 | 911亚洲精选| 亚洲激情网站| 奇米影视首页 狠狠色丁香婷婷久久综合| 成人软件在线观看| 久久精品免费电影| 亚洲免费国产视频| 色噜噜狠狠色综合中国| 精品一区二区6| 国产成人精品亚洲午夜麻豆| 欧美成人免费在线观看视频| 免费成人网www| 国产欧美日韩免费| 四虎影视国产在线视频| 精品视频在线播放| 91精品国自产| 亚洲成人免费看| 一级特黄曰皮片视频| 国产乱码字幕精品高清av| 波多野结衣综合网| 99精品视频在线观看免费播放| 成人黄动漫网站免费| 456亚洲精品成人影院| 久久久精品一区| 熟妇人妻一区二区三区四区 | 精品视频免费在线观看| 91夜夜揉人人捏人人添红杏| 黄色漫画在线免费看| 色偷偷偷亚洲综合网另类| 六月婷婷中文字幕| 欧美三级电影网站| 国产成人亚洲精品自产在线| 国产精品网曝门| 免费成人蒂法网站| 国产一二三精品| 日本www.色| 亚洲看片免费| 国产高清免费在线| 色综合综合网| 国产一区二区在线网站| 久久亚洲国产精品尤物| 57pao国产精品一区| 亚洲制服国产| 色妞一区二区三区| 九九在线视频| 精品国产亚洲在线| 国产又爽又黄免费软件| 在线观看一区日韩| 国产成人在线免费视频| 亚洲欧美日韩国产一区二区三区| 一区二区三区伦理片| 波波电影院一区二区三区| 天堂在线一区二区三区| 巨乳诱惑日韩免费av| 免费成人在线视频网站| 韩日精品在线| 无码人妻aⅴ一区二区三区日本| 精品国内自产拍在线观看视频| 国产亚洲自拍偷拍| h视频久久久| 99re在线视频上| 午夜不卡一区| 国产欧美在线看| 成人午夜sm精品久久久久久久| 欧美在线www| 天堂在线中文网官网| 久久久久一本一区二区青青蜜月| av电影免费在线观看| 久久av资源网站| 国产在线一区二区视频| www.xxxx精品| 免费黄色在线| 久久香蕉频线观| 国产乱色在线观看| 久久色在线播放| 久久久久久久久免费视频| 色偷偷88888欧美精品久久久| 在线观看麻豆| 波霸ol色综合久久| 久久日韩视频| 美日韩精品免费观看视频| 亚洲成人三级| 久久韩国免费视频| 国产视频一区二区| 欧美大片va欧美在线播放| 日本资源在线| 97久久久久久| 亚洲一二三四| 国产精品9999| 四虎精品一区二区免费| 91手机视频在线观看| 日韩一二三区| 国产日韩久久| 色综合中文网| 黄色免费高清视频| 在线看片欧美| 激情综合网婷婷| 免费在线一区观看| 樱花草www在线| 成av人片一区二区| 色无极影院亚洲| 国产精品家庭影院| 麻豆亚洲av成人无码久久精品| 亚洲国产精品久久艾草纯爱| 日本一区二区免费电影| 欧美日韩一区在线| 亚洲国产中文字幕在线| 精品亚洲aⅴ在线观看| 福利在线播放| 久久99国产精品久久久久久久久| 国产高清中文字幕在线| 国产成人精品午夜| 国产成年精品| 久久人人97超碰人人澡爱香蕉| 欧美手机在线| 国产精品无码电影在线观看| 午夜影院日韩| 中文字幕55页| 91免费观看视频在线| 中文字幕求饶的少妇| 亚洲国产aⅴ成人精品无吗| 中文字幕高清在线免费播放| 91精品免费在线观看| 欧美亚洲日本| 色综合老司机第九色激情 | 亚洲视频中文| 久久婷婷国产91天堂综合精品| 国产在线一区二区综合免费视频| 亚洲精品乱码久久久久久蜜桃欧美| 国产视频一区二区三区在线观看| 青青草原在线免费观看视频| 91极品视觉盛宴| 国产福利第一视频| 在线精品播放av| h片在线观看| 国产日本欧美一区| 欧美极品在线观看| 久久艹国产精品| 韩国一区二区视频| 波多野吉衣中文字幕| 亚洲一区视频在线| 国产精品国产av| 国产一区二区免费| 九色porny丨国产首页在线| 亚洲影院在线看| 日韩精品中文字幕第1页| 成人免费aaa| 成人黄色网址在线观看| 亚洲一级生活片| 欧美日韩在线精品一区二区三区激情 | 蜜臀av在线播放一区二区三区| 蜜臀av粉嫩av懂色av| 一区二区三区在线观看动漫| 在线免费观看高清视频| 亚洲欧美国产日韩天堂区| 17videosex性欧美| 岛国视频一区| 欧美在线二区| 亚洲图片 自拍偷拍| 国产精品视频麻豆| 波多野结衣高清视频| 精品爽片免费看久久| av中文字幕在线看| 97超级碰碰| 国产精品vip| 成人三级做爰av| 有码一区二区三区| 精品国产无码AV| 另类少妇人与禽zozz0性伦| **国产精品| 中文字幕一区二区三区有限公司 | 久久精品网址| 日本免费福利视频| 色综合久久中文字幕综合网| 日韩一二三四| 欧美中文字幕精品| 国产精品探花在线观看| 成年人网站大全| 国产偷国产偷精品高清尤物| 波多野结衣毛片| 中文字幕欧美日韩在线| 成人日韩av| 国产麻豆电影在线观看| 国产馆精品极品| 久久精品免费av| 日韩av在线电影网| 亚洲黄色免费看| 日韩视频精品| 久久69国产一区二区蜜臀| 91九色丨porny丨极品女神| 欧美一区二区三区电影| 国产精品探花在线| 久久66热这里只有精品| 老妇喷水一区二区三区| 成年人免费视频播放| 制服丝袜一区二区三区| 黄视频在线免费看| 精品亚洲欧美日韩| 日韩精品国产欧美| 成人在线观看小视频| 欧美成人精品高清在线播放| 色综合亚洲图丝熟| 亚洲成色最大综合在线| 精品午夜一区二区三区在线观看| 久久r这里只有精品| 亚洲精品理论电影| 日本美女久久| 日韩一级片一区二区| 91婷婷韩国欧美一区二区| 中文字幕久久网| 欧美二区在线播放| 久久最新网址| 亚洲精品在线视频播放| 午夜视频在线观看一区二区 | 国产精品乱人伦中文| 超碰在线观看99| 欧美最近摘花xxxx摘花| 91精品国产91久久久久久黑人| 国产一卡二卡三卡四卡| 在线免费av一区| 欧美人动性xxxxz0oz| 欧美久久电影| 国产成人精品免费一区二区| 一区二区三区在线观看av| 欧美不卡视频一区发布| 免费成人网www| 911亚洲精选| 777a∨成人精品桃花网| 亚洲欧美一区二区三区| 免费观看中文字幕| 国产日韩三级在线| 丰满大乳国产精品| 国产精品揄拍一区二区|