精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

OpenDaylight中的Karaf

汽車電子技術 ? 來源:碼農與軟件時代 ? 作者: 碼農與軟件時代 ? 2023-02-14 15:08 ? 次閱讀

在上一篇《從零開始學OpenDaylight之六:OSGi》中,我們已經介紹了OSGi的基礎知識,其企業級的部署環境有Apache Karaf、Eclipse Virgo等,本篇我們來分析下Apache Karaf。

一、Karaf基礎

1.基本介紹

Karaf是一個現代的、多種形態的(polymorphic),輕量的、強大的、經過OSGI認證的企業級容器。這里的多種形態指的是它能夠容納各種應用,諸如OSGi、Spring、war等等。單從OSGi的角度來說,Karaf是OSGI的容器實例,類似tomcat是Servlet的容器實例一樣。其邏輯架構圖如下所示:

圖片

從圖中我們可以看出,Karaf使用Apache Felix或Eclipse Equinox運行時框架,編程模型采用Blueprint實現配置,并在此基礎之上提供諸如日志、控制臺、安全、部署等通用功能。

圖片

同時,Karaf 還提出了“Feature”的概念,即特性。通過Feature的定義,最小單元為OSGi Bundle,多個OSGi Bundle根據功能需求聚合在一起形成一個Feature,多個Feature可能聚合在一起形成一個大的Feature,最終所有的OSGi Bundle能有序地組合起來,形成清晰、可重復利用的功能Feature,實現系統的模塊化開發和組件的重復利用。

圖片

  1. Karaf Archive示例

Karaf最終部署的是KAR包,生成KAR包需要如下工作:

①pom.xml文件使用features-maven-plugin;

②feature.xml 指明具體的bundle等信息

圖片

圖片

二、Karaf使用

在Karaf官網(http://karaf.apache.org/download.html)下載發布版本并解壓到本地,如下圖所示:

圖片

在命令窗口輸入.\\karaf,可得到如下加載成功的提示信息:

圖片

執行命令:feature:install webconsole

圖片

安裝成功后,在瀏覽器輸入如下URL地址,用戶名和密碼都是karaf。

http://localhost:8181/system/console/bundles

圖片

圖片

執行命令:system:shutdown停止Karaf容器。

圖片

更多信息可以參考:http://mirrors.shu.edu.cn/apache/karaf/documentation/4_x.pdf

三、Karaf在OpenDaylight中的應用

OpenDaylight使用Karaf作為其部署環境,官網提供發布版本,URL地址信息為:http://www.opendaylight.org/software/downloads,下載并解壓后目錄如下:

圖片

執行命令.\\karaf,啟動OpenDaylight控制器

圖片

執行命令feature:list -i,查看已安裝的Feature

圖片查看GUI界面,輸入URL地址:http://127.0.0.1:8181/index.html#/yangui/index

圖片

四、小結

從零開始學OpenDaylight系列介紹到這里,我們已經將OpenDaylight的“外圍”工具和環境講解完成了:

①使用Maven來進行項目構建和依賴包管理;

②基于OSGi框架進行編程:面向組件、服務和接口的編程模型,并使用blueprint容器進行配置管理;

③使用Karaf運行環境,并使用的Feature概念。

從下一篇開始我們將開始講解業務邏輯編程的部分:YANG、DataStore、RPC、Notification等等。

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

    關注

    0

    文章

    494

    瀏覽量

    22046
  • Servlet
    +關注

    關注

    0

    文章

    18

    瀏覽量

    7884
  • tomcat
    +關注

    關注

    0

    文章

    27

    瀏覽量

    4846
收藏 人收藏

    評論

    相關推薦

    T12電烙鐵控模塊#電子元器件 #電子技術 #芯片 #電子工程師

    烙鐵控系統工具使用
    jf_21394466
    發布于 :2022年08月19日 14:06:29

    718.如何利用HomeAssistant,讓你的閑置樹莓派成為智能控?

    控系統樹莓派
    小凡
    發布于 :2022年10月05日 01:53:42

    汽車車身控制與舒適性系統檢修:控門鎖系統控制電路#汽車維修

    汽車電子控系統
    學習電子
    發布于 :2022年11月20日 15:15:49

    汽車車身控制與舒適性系統檢修:控門鎖系統故障診斷和排除#汽車維修

    汽車電子控系統
    學習電子
    發布于 :2022年11月20日 15:16:47

    別克君越控開關失靈,什么情況怎么解決

    開關
    YS YYDS
    發布于 :2023年06月23日 00:38:57

    OpenDaylight軟件定義網絡框架

    ./oschina_soft/controller.zip
    發表于 05-13 10:51 ?3次下載
    <b class='flag-5'>OpenDaylight</b>軟件定義網絡框架

    如何從零開始學OpenDaylight

    OpenDaylight的邏輯架構分為應用層、控制器層和數據轉發層。其中,應用層聚焦網絡業務邏輯開發,負責資源編排;控制器層進行全局網絡的管理;數據轉發層為各種網絡設備,負責數據的轉發。
    的頭像 發表于 02-14 14:04 ?2120次閱讀
    如何從零開始學<b class='flag-5'>OpenDaylight</b>

    OpenDaylight的運行環境

    OpenDaylight作為一種開源的SDN控制器,使用Java語言編寫,
    的頭像 發表于 02-14 14:08 ?797次閱讀
    <b class='flag-5'>OpenDaylight</b>的運行環境

    OpenDaylight的示例

    對于External System來說,我們在介紹基于REST API編程時再進行介紹。
    的頭像 發表于 02-14 14:11 ?639次閱讀
    <b class='flag-5'>OpenDaylight</b>的示例

    什么是OpenDaylight的Maven

    構建的實質是將我們編寫的Java源文件、XML配置文件、HTML頁面、CSS和JS文件等,通過某種方式組合在一起,變為可對外服務項目的過程。同時,構建過程很多都是沒有技術含量且重復的工作,手工操作很無趣且太麻煩。
    的頭像 發表于 02-14 15:02 ?1006次閱讀
    什么是<b class='flag-5'>OpenDaylight</b>的Maven

    OpenDaylight的OSGi

    從寫單個類的打印Hello World小程序到OSGi模塊化開發,確實存在較大的難度,本文將從模塊化、OSGI模型以及OSGI在OpenDaylight的應用等方面進行介紹。
    的頭像 發表于 02-14 15:05 ?748次閱讀
    <b class='flag-5'>OpenDaylight</b><b class='flag-5'>中</b>的OSGi

    OpenDaylight的YANG

    YANG是和NETCONF相伴而生的,而NETCONF作為網絡管理協議,包含安全傳輸層、消息層、操作層和內容層,其中內容層沒有標準化,操作層允許自定義RPC,而這兩者的標準化建模就是由YANG來完成的。
    的頭像 發表于 02-14 15:10 ?1637次閱讀
    <b class='flag-5'>OpenDaylight</b><b class='flag-5'>中</b>的YANG

    OpenDaylight的DataStore是什么

    SDN起源于校園網,發揚光大于數據中心,現廣泛用于廣域網,SDN控制器,可能管理著數十萬臺軟交換機,下發數百萬乃至上千萬條路由信息。因此,作為SDN控制器的開源項目OpenDaylight,無論是業務邏輯還是數據存儲,
    的頭像 發表于 02-14 15:13 ?1429次閱讀
    <b class='flag-5'>OpenDaylight</b><b class='flag-5'>中</b>的DataStore是什么

    OpenDaylight的RPC &amp; Notification是什么

    我們將介紹RPC和Notification,并從進程內外的通信開始,著重介紹遠程過程調用和發布-訂閱機制,然后分析MD-SAL的通信交互過程。
    的頭像 發表于 02-14 15:15 ?928次閱讀
    <b class='flag-5'>OpenDaylight</b><b class='flag-5'>中</b>的RPC &amp; Notification是什么

    OpenDaylight的MD-SAL是什么

    一般情況下,軟件系統的研發分為需求獲取與分析、架構設計、代碼實現、系統發布、上線等階段。其中,架構設計可以細分為架構需求、分析、設計、文檔化、評審、修改和實現等過程,我們以簡化歸一,描述為:提供UI界面和消息接口服務,UI選擇B\S架構風格,消息可以是REST、SOAP以及AMQP等類型,數據庫采用關系型數據庫
    的頭像 發表于 02-14 15:17 ?1087次閱讀
    <b class='flag-5'>OpenDaylight</b><b class='flag-5'>中</b>的MD-SAL是什么