那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

openstack的放棄之路

馬哥Linux運維 ? 來源:未知 ? 作者:胡薇 ? 2018-06-05 09:18 ? 次閱讀

一 openstack由來

openstack最早由美國國家航空航天局NASA研發的Nova和Rackspace研發的swift組成。后來以apache許可證授權,旨在為公共及私有云平臺建設。openstack主要用來為企業內部實現類似于Amazon EC2和S3的云基礎架構服務(Iaas).每6個月更新一次,基本與ubuntu同步,命名是以A-Z作為首字母來的。

二 openstack項目與組件(服務名是項目名的別名)

核心項目3個

1.控制臺

服務名:Dashboard

項目名:Horizon

功能:web方式管理云平臺,建云主機,分配網絡,配安全組,加云盤

2.計算

服務名:計算

項目名:Nova

功能:負責響應虛擬機創建請求、調度、銷毀云主機

3.網絡

服務名:網絡

項目名:Neutron

功能:實現SDN(軟件定義網絡),提供一整套API,用戶可以基于該API實現自己定義專屬網絡,不同廠商可以基于此API提供自己的產品實現

存儲項目2個

1.對象存儲

服務名:對象存儲

項目名:Swift

功能:REST風格的接口和扁平的數據組織結構。RESTFUL HTTP API來保存和訪問任意非結構化數據,ring環的方式實現數據自動復制和高度可以擴展架構,保證數據的高度容錯和可靠性

2.塊存儲

服務名:塊存儲

項目名:Cinder

功能:提供持久化塊存儲,即為云主機提供附加云盤。

共享服務項目3個

1.認證服務

服務名:認證服務

項目名:Keystone

功能:為訪問openstack各組件提供認證和授權功能,認證通過后,提供一個服務列表(存放你有權訪問的服務),可以通過該列表訪問各個組件。

2.鏡像服務

服務名:鏡像服務

項目名:Glance

功能:為云主機安裝操作系統提供不同的鏡像選擇

3.計費服務

服務名:計費服務

項目名:Ceilometer

功能:收集云平臺資源使用數據,用來計費或者性能監控

高層服務項目1個

1.編排服務

服務名:編排服務

項目名:Heat

功能:自動化部署應用,自動化管理應用的整個生命周期.主要用于Paas

三 openstack各組件詳解及運行流程

各組件邏輯關系圖:

openstack新建云主機流程圖:

虛擬機啟動過程如下:

界面或命令行通過RESTful API向keystone獲取認證信息

keystone通過用戶請求認證信息,并生成auth-token返回給對應的認證請求。

界面或命令行通過RESTful API向nova-api發送一個boot instance的請求(攜帶auth-token)。

nova-api接受請求后向keystone發送認證請求,查看token是否為有效用戶和token。

keystone驗證token是否有效,如有效則返回有效的認證和對應的角色(注:有些操作需要有角色權限才能操作)。

通過認證后nova-api和數據庫通訊。

初始化新建虛擬機的數據庫記錄。

nova-api通過rpc.call向nova-scheduler請求是否有創建虛擬機的資源(Host ID)。

nova-scheduler進程偵聽消息隊列,獲取nova-api的請求。

nova-scheduler通過查詢nova數據庫中計算資源的情況,并通過調度算法計算符合虛擬機創建需要的主機。

對于有符合虛擬機創建的主機,nova-scheduler更新數據庫中虛擬機對應的物理主機信息。

nova-scheduler通過rpc.cast向nova-compute發送對應的創建虛擬機請求的消息。

nova-compute會從對應的消息隊列中獲取創建虛擬機請求的消息。

nova-compute通過rpc.call向nova-conductor請求獲取虛擬機消息。(Flavor)

nova-conductor從消息隊隊列中拿到nova-compute請求消息。

nova-conductor根據消息查詢虛擬機對應的信息。

nova-conductor從數據庫中獲得虛擬機對應信息。

nova-conductor把虛擬機信息通過消息的方式發送到消息隊列中。

nova-compute從對應的消息隊列中獲取虛擬機信息消息。

nova-compute通過keystone的RESTfull API拿到認證的token,并通過HTTP請求glance-api獲取創建虛擬機所需要鏡像。

glance-api向keystone認證token是否有效,并返回驗證結果。

token驗證通過,nova-compute獲得虛擬機鏡像信息(URL)。

nova-compute通過keystone的RESTfull API拿到認證k的token,并通過HTTP請求neutron-server獲取創建虛擬機所需要的網絡信息。

neutron-server向keystone認證token是否有效,并返回驗證結果。

token驗證通過,nova-compute獲得虛擬機網絡信息。

nova-compute通過keystone的RESTfull API拿到認證的token,并通過HTTP請求cinder-api獲取創建虛擬機所需要的持久化存儲信息。

cinder-api向keystone認證token是否有效,并返回驗證結果。

token驗證通過,nova-compute獲得虛擬機持久化存儲信息。

nova-compute根據instance的信息調用配置的虛擬化驅動來創建虛擬機。

下面我們就圍繞上圖流程展開。

1.keystone

User:指使用Openstack service的用戶,可以是人、服務、系統,但凡使用了Openstack service的對象都可以稱為User。

Project(Tenant):可以理解為一個人、或服務所擁有的資源集合。在一個Project(Tenant)中可以包含多個User,每一個User都會根據權限的劃分來使用Project(Tenant)中的資源。比如通過Nova創建虛擬機時要指定到某個Project中,在Cinder創建卷也要指定到某個Project中。User訪問Project的資源前,必須要與該Project關聯,并且指定User在Project下的Role。

Role:用于劃分權限。可以通過給User指定Role,使User獲得Role對應的操作權限。Keystone返回給User的Token包含了Role列表,被訪問的Services會判斷訪問它的User和User提供的Token中所包含的Role。系統默認使用管理Role admin和成員Role _member_ 。

Policy:OpenStack對User的驗證除了OpenStack的身份驗證以外,還需要鑒別User對某個Service是否有訪問權限。Policy機制就是用來控制User對Tenant中資源(包括Services)的操作權限。對于Keystone service來說,Policy就是一個JSON文件,默認是/etc/keystone/policy.json。通過配置這個文件,Keystone Service實現了對User基于Role的權限管理。

Token:是一個字符串表示,作為訪問資源的令牌。Token包含了在指定范圍和有效時間內可以被訪問的資源。EG. 在Nova中一個tenant可以是一些虛擬機,在Swift和Glance中一個tenant可以是一些鏡像存儲,在Network中一個tenant可以是一些網絡資源。Token一般被User持有。

Credentials:用于確認用戶身份的憑證

Authentication:確定用戶身份的過程

Service:Openstack service,即Openstack中運行的組件服務。

Endpoint:一個可以通過網絡來訪問和定位某個Openstack service的地址,通常是一個URL。比如,當Nova需要訪問Glance服務去獲取image 時,Nova通過訪問Keystone拿到Glance的endpoint,然后通過訪問該endpoint去獲取Glance服務。我們可以通過Endpoint的region屬性去定義多個region。Endpoint 該使用對象分為三類:

admin url –> 給admin用戶使用,Post:35357

internal url –> OpenStack內部服務使用來跟別的服務通信,Port:5000

public url –> 其它用戶可以訪問的地址,Post:5000

創建完service后創建API EndPoint. 在openstack中,每一個service都有三種end points. Admin, public, internal。 Admin是用作管理用途的,如它能夠修改user/tenant(project)。 public 是讓客戶調用的,比如可以部署在外網上讓客戶可以管理自己的云。internal是openstack內部調用的。三種endpoints 在網絡上開放的權限一般也不同。Admin通常只能對內網開放,public通常可以對外網開放internal通常只能對安裝有openstack對服務的機器開放。

V3新增

Tenant 重命名為 Project

添加了 Domain 的概念

添加了 Group 的概念

詳細流程:

用戶alice登錄keystone系統(password或者token的方式),獲取一個臨時的token和catalog服務目錄(v3版本登錄時,如果沒有指定scope,project或者domain,獲取的臨時token沒有任何權限,不能查詢project或者catalog)。

alice通過臨時token獲取自己的所有的project列表。

alice選定一個project,然后指定project重新登錄,獲取一個正式的token,同時獲得服務列表的endpoint,用戶選定一個endpoint,在HTTP消息頭中攜帶token,然后發送請求(如果用戶知道project name或者project id可以直接第3步登錄)。

消息到達endpoint之后,由服務端(nova)的keystone中間件(pipeline中的filter:authtoken)向keystone發送一個驗證token的請求。(token類型:uuid需要在keystone驗證token,pki類型的token本身是包含用戶詳細信息的加密串,可以在服務端完成驗證)

keystone驗證token成功之后,將token對應用戶的詳細信息,例如:role,username,userid等,返回給服務端(nova)。

服務端(nova)完成請求,例如:創建虛擬機。

服務端返回請求結果給alice。

2.glance

v1

v2

3.nova與cinder

nova主要組成:

nova-api

nova-scheduler

nova-compute

nova-conductor

cinder主要組成:

cinder-api

cinder-scheduler

cinder-volume

cinder各組件功能:

Cinder-api 是 cinder 服務的 endpoint,提供 rest 接口,負責處理 client 請求,并將 RPC 請求發送至 cinder-scheduler 組件。

Cinder-scheduler 負責 cinder 請求調度,其核心部分就是 scheduler_driver, 作為 scheduler manager 的 driver,負責 cinder-volume 具體的調度處理,發送 cinder RPC 請求到選擇的 cinder-volume。

Cinder-volume 負責具體的 volume 請求處理,由不同后端存儲提供 volume 存儲空間。目前各大存儲廠商已經積極地將存儲產品的 driver 貢獻到 cinder 社區

cinder架構圖:

openstack組件間通信:調用各組件api提供的rest接口,組件內通信:基于rpc(遠程過程調用)機制,而rpc機制是基于AMQP模型實現的

從rpc使用的角度出發,nova,neutron,和cinder的流程是相似的,我們以cinder為例闡述rpc機制

(參考鏈接:https://www.ibm.com/developerworks/cn/cloud/library/1403_renmm_opestackrpc/)

Openstack 組件內部的 RPC(Remote Producer Call)機制的實現是基于 AMQP(Advanced Message Queuing Protocol)作為通訊模型,從而滿足組件內部的松耦合性。AMQP 是用于異步消息通訊的消息中間件協議,AMQP 模型有四個重要的角色:

Exchange:根據 Routing key 轉發消息到對應的 Message Queue 中

Routing key:用于 Exchange 判斷哪些消息需要發送對應的 Message Queue

Publisher:消息發送者,將消息發送的 Exchange 并指明 Routing Key,以便 Message Queue 可以正確的收到消息

Consumer:消息接受者,從 Message Queue 獲取消息

消息發布者 Publisher 將 Message 發送給 Exchange 并且說明 Routing Key。Exchange 負責根據 Message 的 Routing Key 進行路由,將 Message 正確地轉發給相應的 Message Queue。監聽在 Message Queue 上的 Consumer 將會從 Queue 中讀取消息。

Routing Key 是 Exchange 轉發信息的依據,因此每個消息都有一個 Routing Key 表明可以接受消息的目的地址,而每個 Message Queue 都可以通過將自己想要接收的 Routing Key 告訴 Exchange 進行 binding,這樣 Exchange 就可以將消息正確地轉發給相應的 Message Queue。

Publisher可以分為4類:

Direct Publisher發送點對點的消息;

Topic Publisher采用“發布——訂閱”模式發送消息;

Fanout Publisher發送廣播消息的發送;

Notify Publisher同Topic Publisher,發送 Notification 相關的消息。

Exchange可以分為3類:

Direct Exchange根據Routing Key進行精確匹配,只有對應的 Message Queue 會接受到消息;

Topic Exchange根據Routing Key進行模式匹配,只要符合模式匹配的Message Queue都會收到消息;

Fanout Exchange將消息轉發給所有綁定的Message Queue。

AMQP消息模型

RPC 發送請求

Client 端發送 RPC 請求由 publisher 發送消息并聲明消息地址,consumer 接收消息并進行消息處理,如果需要消息應答則返回處理請求的結果消息。

OpenStack RPC 模塊提供了 rpc.call,rpc.cast, rpc.fanout_cast 三種 RPC 調用方法,發送和接收 RPC 請求。

rpc.call 發送 RPC 請求并返回請求處理結果,請求處理流程如圖 5 所示,由 Topic Publisher 發送消息,Topic Exchange 根據消息地址進行消息轉發至對應的 Message Queue 中,Topic Consumer 監聽 Message Queue,發現需要處理的消息則進行消息處理,并由 Direct Publisher 將請求處理結果消息,請求發送方創建 Direct Consumer 監聽消息的返回結果

rpc.cast 發送 RPC 請求無返回,請求處理流程如圖 6 所示,與 rpc.call 不同之處在于,不需要請求處理結果的返回,因此沒有 Direct Publisher 和 Direct Consumer 處理。

rpc.fanout_cast 用于發送 RPC 廣播信息無返回結果

neutron

neutron包含組件:

neutron-server

neutron-plugin

neutron-agent

neutron各組件功能介紹:

Neutron-server可以理解為一個專門用來接收Neutron REST API調用的服務器,然后負責將不同的rest api分發到不同的neutron-plugin上。

Neutron-plugin可以理解為不同網絡功能實現的入口,各個廠商可以開發自己的plugin。Neutron-plugin接收neutron-server分發過來的REST API,向neutron database完成一些信息的注冊,然后將具體要執行的業務操作和參數通知給自身對應的neutron agent。

Neutron-agent可以直觀地理解為neutron-plugin在設備上的代理,接收相應的neutron-plugin通知的業務操作和參數,并轉換為具體的設備級操作,以指導設備的動作。當設備本地發生問題時,neutron-agent會將情況通知給neutron-plugin。

Neutron database,顧名思義就是Neutron的數據庫,一些業務相關的參數都存在這里。

Network provider,即為實際執行功能的網絡設備,一般為虛擬交換機(OVS或者Linux Bridge)。

neutron-plugin分為core-plugin和service-plugin兩類。

Core-plugin,Neutron中即為ML2(Modular Layer 2),負責管理L2的網絡連接。ML2中主要包括network、subnet、port三類核心資源,對三類資源進行操作的REST API被neutron-server看作Core API,由Neutron原生支持。其中:

Service-plugin,即為除core-plugin以外其它的plugin,包括l3 router、firewall、loadbalancer、VPN、metering等等,主要實現L3-L7的網絡服務。這些plugin要操作的資源比較豐富,對這些資源進行操作的REST API被neutron-server看作Extension API,需要廠家自行進行擴展。

“Neutron對Quantum的插件機制進行了優化,將各個廠商L2插件中獨立的數據庫實現提取出來,作為公共的ML2插件存儲租戶的業務需求,使得廠商可以專注于L2設備驅動的實現,而ML2作為總控可以協調多廠商L2設備共同運行”。在Quantum中,廠家都是開發各自的Service-plugin,不能兼容而且開發重復度很高,于是在Neutron中就為設計了ML2機制,使得各廠家的L2插件完全變成了可插拔的,方便了L2中network資源擴展與使用。

(注意,以前廠商開發的L2 plugin跟ML2都存在于neutron/plugins目錄下,而可插拔的ML2設備驅動則存在于neutron/plugins/ml2/drivers目錄下)

ML2作為L2的總控,其實現包括Type和Mechanism兩部分,每部分又分為Manager和Driver。Type指的是L2網絡的類型(如Flat、VLAN、VxLAN等),與廠家實現無關。Mechanism則是各個廠家自己設備機制的實現,如下圖所示。當然有ML2,對應的就可以有ML3,不過在Neutron中L3的實現只負責路由的功能,傳統路由器中的其他功能(如Firewalls、LB、VPN)都被獨立出來實現了,因此暫時還沒有看到對ML3的實際需求。

一般而言,neutron-server和各neutron-plugin部署在控制節點或者網絡節點上,而neutron agent則部署在網絡節點上和計算節點上。我們先來分析控制端neutron-server和neutron-plugin的工作,然后再分析設備端neutron-agent的工作。

neutron新進展(dragon flow):

https://www.ustack.com/blog/neutron-dragonflow/

網絡模式介紹:

根據創建網絡的用戶的權限,Neutron network 可以分為:

Provider network:管理員創建的和物理網絡有直接映射關系的虛擬網絡。

Tenant network:租戶普通用戶創建的網絡,物理網絡對創建者透明,其配置由 Neutorn 根據管理員在系統中的配置決定。

根據網絡的類型,Neutron network 可以分為:

VLANnetwork(虛擬局域網):基于物理 VLAN 網絡實現的虛擬網絡。共享同一個物理網絡的多個 VLAN 網絡是相互隔離的,甚至可以使用重疊的 IP 地址空間。每個支持 VLAN network 的物理網絡可以被視為一個分離的 VLAN trunk,它使用一組獨占的 VLAN ID。有效的 VLAN ID 范圍是 1 到 4094。

Flat network:基于不使用 VLAN 的物理網絡實現的虛擬網絡。每個物理網絡最多只能實現一個虛擬網絡。

local network(本地網絡):一個只允許在本服務器內通信的虛擬網絡,不知道跨服務器的通信。主要用于單節點上測試。

GRE network (通用路由封裝網絡):一個使用 GRE 封裝網絡包的虛擬網絡。GRE 封裝的數據包基于 IP 路由表來進行路由,因此 GRE network 不和具體的物理網絡綁定。

VXLAN network(虛擬可擴展網絡):基于 VXLAN 實現的虛擬網絡。同 GRE network 一樣, VXLAN network 中 IP 包的路由也基于 IP 路由表,也不和具體的物理網絡綁定。

注:在AWS中,該概念對應 VPC 概念。AWS 對 VPC 的數目有一定的限制,比如每個賬戶在每個 region 上默認最多只能創建 5 個VPC,通過特別的要求最多可以創建 100 個。

1.vlan

2.gre與vxlan請參考

http://www.cnblogs.com/sammyliu/p/4622563.html

http://www.cnblogs.com/xingyun/p/4620727.html

gre網絡

gre與vxlan區別

關于gre和vxlan二次封裝數據包的MTU問題

VXLAN 模式下虛擬機中的 mtu 最大值為1450,也就是只能小于1450,大于這個值會導致 openvswitch 傳輸分片,進而導致虛擬機中數據包數據重傳,從而導致網絡性能下降。GRE 模式下虛擬機 mtu 最大為1462。

計算方法如下:

vxlan mtu = 1450 = 1500 – 20(ip頭) – 8(udp頭) – 8(vxlan頭) – 14(以太網頭)

gre mtu = 1462 = 1500 – 20(ip頭) – 4(gre頭) – 14(以太網頭)

可以配置 Neutron DHCP 組件,讓虛擬機自動配置 mtu,

#/etc/neutron/dhcp_agent.ini[DEFAULT]dnsmasq_config_file = /etc/neutron/dnsmasq-neutron.conf#/etc/neutron/dnsmasq-neutron.confdhcp-option-force=26,1450或1462

重啟 DHCP Agent,讓虛擬機重新獲取 IP,然后使用 ifconfig 查看是否正確配置 mtu。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • OpenStack
    +關注

    關注

    1

    文章

    69

    瀏覽量

    18947

原文標題:萬字長文帶你OpenStack從入門到放棄

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    電動工具EMC測試整改:邁向高質量生產的必經之路

    深圳南柯電子|電動工具EMC測試整改:邁向高質量生產的必經之路
    的頭像 發表于 01-14 14:29 ?131次閱讀
    電動工具EMC測試整改:邁向高質量生產的必經<b class='flag-5'>之路</b>

    基于DPU的Openstack裸金屬服務網絡解決方案

    數據的最高級別安全。 裸金屬服務器作為云上資源的重要部分,其網絡需要與云主機和容器同樣連接在VPC下,并且能夠像云主機和容器一樣使用云上的網絡功能和能力。 當前,基于OpenStack的裸金屬服務實現主要依賴于Ironic組件,并通過O
    的頭像 發表于 10-22 14:27 ?341次閱讀
    基于DPU的<b class='flag-5'>Openstack</b>裸金屬服務網絡解決方案

    OPPO應用分發的燎原之火,照亮開發者的增長之路

    全面賦能應用分發,“火炬手”OPPO闖出一條增長之路
    的頭像 發表于 10-18 13:34 ?1427次閱讀
    OPPO應用分發的燎原之火,照亮開發者的增長<b class='flag-5'>之路</b>

    吉利或改變計劃:放棄波蘭轉向西班牙建電動汽車工廠

    10月12日訊,據Energetyka24報道,有內部消息指出,浙江吉利控股集團可能因波蘭華沙政府的決策遲緩而放棄在波蘭建立電動汽車廠的計劃。
    的頭像 發表于 10-12 17:10 ?1.4w次閱讀

    Inflection AI轉向英特爾Gaudi 3,放棄英偉達GPU

    近日,人工智能技術公司Inflection AI宣布了一項重要決策,其最新的企業平臺將放棄采用英偉達(Nvidia)的GPU,轉而選擇英特爾的Gaudi 3加速器。
    的頭像 發表于 10-10 17:21 ?532次閱讀

    基于DPU的OpenStack裸金屬服務快速部署及存儲解決方案

    Openstack作為開源云計算領域的領軍項目,憑借其強大的功能、靈活的架構以及活躍的社區支持,在全球范圍內得到了廣泛的采用。通過Openstack,企業和云服務提供商可以更加高效地管理和利用計算資源、存儲資源和網絡資源,實現業務的快速部署和靈活擴展,從而贏得市場競爭的先
    的頭像 發表于 09-29 14:24 ?489次閱讀
    基于DPU的<b class='flag-5'>OpenStack</b>裸金屬服務快速部署及存儲解決方案

    華納云:OpenStack是虛擬化管理平臺嗎?其工作原理是什么?

    OpenStack 就是一個虛擬化管理平臺嗎?這樣說并不準確。它們存在很多相似性,但并非完全相同。的確,OpenStack 和虛擬化管理平臺都位于虛擬化資源層之上,都可以幫助用戶發現、報告和自動執行
    的頭像 發表于 09-23 14:20 ?395次閱讀

    Meta轉向高通,放棄自研AR眼鏡芯片

    面對嚴峻的財務壓力和戰略調整需求,Meta公司近日宣布放棄為AR眼鏡開發定制芯片的計劃。原本旨在提升圖像識別等功能的Armstrong、Avogadro和Acropolis芯片項目被擱置,Meta轉而選擇采用高通公司的成熟技術。
    的頭像 發表于 08-30 15:45 ?588次閱讀

    國產芯片原廠的出路:從風潮到現實的破局之路

    國產芯片原廠的出路:從風潮到現實的破局之路
    的頭像 發表于 08-12 17:54 ?914次閱讀

    Jtti:云服務器OpenStack的優勢分析

    云服務器在現代IT基礎設施中扮演著至關重要的角色,而OpenStack作為領先的開源云計算平臺,為企業提供了強大的云解決方案。OpenStack具備靈活性、可擴展性和經濟效益,使其在公共云、私有云和
    的頭像 發表于 08-07 16:29 ?386次閱讀

    EMC與EMI測試整改:打造電磁兼容性的電子產品之路

    深圳比創達|EMC與EMI測試整改:打造電磁兼容性的電子產品之路
    的頭像 發表于 05-23 10:00 ?495次閱讀
    EMC與EMI測試整改:打造電磁兼容性的電子產品<b class='flag-5'>之路</b>

    EMC電磁兼容性廠家:行業領軍者的專業之路

    深圳比創達|EMC電磁兼容性廠家:行業領軍者的專業之路
    的頭像 發表于 05-10 10:47 ?689次閱讀
    EMC電磁兼容性廠家:行業領軍者的專業<b class='flag-5'>之路</b>

    EMC測試整改:打造電磁兼容強勁產品的必經之路

    深圳比創達電子|EMC測試整改:打造電磁兼容強勁產品的必經之路
    的頭像 發表于 04-26 10:36 ?500次閱讀
    EMC測試整改:打造電磁兼容強勁產品的必經<b class='flag-5'>之路</b>

    奔馳將放棄電動化?奔馳官方辟謠!

    中工汽車網訊,3月6日,從梅賽德斯-奔馳官方獲悉,關于近期網絡上傳播的“奔馳將放棄電動化”的消息嚴重不實。
    的頭像 發表于 03-07 16:13 ?1558次閱讀

    從盤中孔到真空塞孔,線路板樹脂塞孔技術的演進之路

    從盤中孔到真空塞孔,線路板樹脂塞孔技術的演進之路
    的頭像 發表于 02-25 09:17 ?1067次閱讀
    在线百家乐纸牌| 百家乐官网最保险的方法| 天天百家乐的玩法技巧和规则| 百家乐免费体验金| 六合彩开奖结果查询| 棋牌论坛| 百家乐官网霸王闲| 百家乐官网透明发牌机| 百家乐笑话| 娱乐城开户彩金| 百家乐官网楼梯缆大全| 做生意门口对着通道| 汝城县| 微信百家乐官网群二维码| 杨公24山日课应验诀| 大发888娱乐场下载 游戏平台| 蒙特卡罗娱乐场| 百家乐官网追号| 虎林市| 网上玩百家乐的玩法技巧和规则 | 洛浦县| 太阳城77scs| 百家乐官网7scs| 金都百家乐官网的玩法技巧和规则 | 百家乐官网群11889| 博必发百家乐的玩法技巧和规则| 百家乐官网境外赌博| 百家乐技巧和规律| 真人21点| 网上棋牌游戏赚钱| 蓝盾百家乐官网平台| 大发888娱乐场存款168| 全景网百家乐官网的玩法技巧和规则| 大发888真钱娱乐城| 真人百家乐官网蓝盾娱乐平台| 大发888合作伙伴| 百家乐赌博公司| 百家乐官网正品地址| 新利88国际娱乐网| 德州扑克比赛| 百家乐游戏种类|