2023年最新版Apollo保姆級使用手冊(超級詳盡版本)

Apollo操作說明

前言

  • 研究了一下apollo,發現官方文檔還是很多地方寫的不是很明確(對比Nacos),因此,寫了一份更加簡潔,更加易用,特別適合新手使用的文檔,希望對你有幫助,本文在於詳盡,圖示清晰,簡單易用,十分方便,無論是開發,產品,測試,還是不接觸代碼的人,都可以看的清楚明白.

Apollo環境部署

一、環境構建

軟件名稱 版本 相關文章推薦
Git 儘量最新 https://www.cnblogs.com/liuyangfirst/p/15996063.html
JDK 1.8 https://www.cnblogs.com/liuyangfirst/p/14334385.html
Maven 儘量最新 https://www.cnblogs.com/liuyangfirst/p/15981202.html
MySQL 5.6.10 https://www.cnblogs.com/liuyangfirst/p/15997667.html
DBeaver 儘量最新 https://www.cnblogs.com/liuyangfirst/p/15997753.html
IntelliJ IDEA 儘量使用比較新的版本 https://www.jetbrains.com/idea/

二、官方地址

三、數據庫腳本使用

  • 1.找到下載好的腳本。

  • 2.打開DBeaver,右鍵一個數據庫,選擇工具--->執行腳本.

  • 3.選擇文件所在路徑.額外命令裏添加配置.
--default-character-set=utf8

  • 4.選擇一個文件,點擊確認.

  • 5.填好後,如圖,選擇開始,不報錯執行完畢,就是成功了,成功後,會生成如圖兩個數據庫.

四、配置Apollo文件

  • 1.找到下載好的文件,找到demo文件,對其備份。

  • 2.打開demo文件,進行如圖修改(你的賬戶密碼,不一樣,自行修改)。

五、啓動Apollo

  • 1.右鍵選擇git工具.(保證8080\8090\8070 端口不被佔用)

  • 2.輸入命令啓動.
./demo.sh start
  • 輸入後,進入等待狀態,一直等所有啓動後纔是成功.

  • 3.關閉命令

六、訪問Apollo

  • 3.訪問成功進入主頁

  • 4.訪問地址:官方樣例,可以查看官網如何使用的.

Apollo產品使用

一、修改部門

  • 1、Apollo的部門設計很不好,需要進行修改,修改方式如下。

    • 正常的新建,這時候,只有這個樣例部門,沒有正常的部門,所以要修改。

  • 2、修改方式類似於json修改,首先找到如圖的參數修改。

  • 3.點擊如圖修改,新版的這個可以看到這個配置列表了,舊版需要輸入關鍵字。

    • 舊版是這樣的。

    • 需要輸入:organizations,點擊查詢。

  • 4.新版修改了樣式,操作還是一樣的,就是按照格式修改json。

    • 修改樣例。(自己編的,你也可以自定義)

      [{"orgId":"micro_service","orgName":"研發部"},{"orgId":"002","orgName":"銷售部"},{"orgId":"003","orgName":"行政部"},{"orgId":"004","orgName":"財務部"},{"orgId":"005","orgName":"商務部"},{"orgId":"006","orgName":"保潔部"},{"orgId":"007","orgName":"保安部"},{"orgId":"008","orgName":"餐飲部"},{"orgId":"009","orgName":"運營部"},{"orgId":"010","orgName":"客服部"},{"orgId":"011","orgName":"公關部"},{"orgId":"012","orgName":"法務部"},{"orgId":"013","orgName":"後勤保障部"}]
      
    • 修改新版的,粘貼到這裏。

    • 保存後如圖。一定要格式對,否則會報錯,整個都不好使了。

    • 添加成功,再看新進內,就這樣了。

二、應用操作

  • 1.新建應用。點擊如圖位置,添加相關參數,點擊保存,再返回主界面,就可以看到自己創建的應用了。

  • 2.修改應用,選擇如圖,修改添加時候的信息,點擊修改應用信息,就可以修改了。

  • 3.在總列表裏,可以看到添加的應用。

  • 4.刪除應用,這個功能就需要吐槽下,本來應該在展示界面裏就有,可是它卻在管理員工具裏,這個button設置的不好。

    • 本來在首頁設置直接點刪除很好操作,結果在管理中,而且,還是需要自己輸入ID,這就更費勁操作了。

    • 刪除成功後,提示信息。再點擊返回首頁,才能看到成功刪除,不會自動跳轉。

三、用戶操作

  • 1.添加用戶,進入用戶界面後,添加信息,點擊添加。

  • 舊版的就可以設置簡單的密碼.

  • 新建用戶後,可以進入登陸界面進行登陸.

  • 成功後如圖顯示,但是,這裏的用戶沒有管理員工具.很多功能需要授權使用.

  • 2.編輯用戶,修改用戶的信息。

  • 可以在列表裏選擇禁用,但是,爲什麼不把刪除放在這裏呢?這個界面不是很友好。

  • 選擇過濾進行查詢,選擇重置,就會刪除關鍵字(沒什麼用的設計)。

  • 3.刪除用戶,由於界面沒有開發刪除功能,所以想要刪除用戶(在如圖位置),需要自己刪除數據庫的數據(謹慎操作).


# 一定加好where條件,不然全部用戶刪了,就不用用了
delete  from  users where id = 2 

  • 技能好的可以源碼拷貝下來,二次開發加上刪除用戶的button,技能不好的,想要刪除,就像這樣刪除數據庫的用戶,這是在用戶沒有賦權的簡單模式下刪除,賦權後,還要同步刪除權限.

四、系統權限管理

1、創建應用權限配置

  • 1)操作之前保證新建了一個用戶(詳情看用戶添加),保證有多個可以測試的應用.

  • 2)使用前需要開啓這個功能,才能配置,否則配置無效.

    • 要在系統配置頁面,首先將這個參數添加進去.

    • 輸入配置的信息,點擊提交

    
    role.create-application.enabled = true
    
    

  • 登陸普通用戶:zhangsan,就會發現在首頁應用這裏,圖標都沒了.

  • 管理員這裏是有這個圖標的.

  • 3)登陸超級管理員apollo,使用這裏的授權功能進行授權,再登陸zhangsan(普通用戶查看),發現這裏的圖標又出現了.

  • 在這個列表裏可以選擇.給用戶添加創建應用的權限(用戶默認就有這個權限)

2、創建應用權限配置

  • 1 ) 進入首頁,選擇一個應用進入.

  • 2 )點擊進入後,發現這裏有個管理應用.

    • 先給普通用戶添加這個應用的管理員權限.

  • 3 ) 登陸普通用戶zhangsan,查看其應用.

    • 點擊下拉框發現普通用戶,也可以修改應用的管理員.

  • 4 ) 進入apollo賬戶下,添加參數到系統參數中.

  • 添加參數,到配置中,點擊提交.

    
    role.manage-app-master.enabled = true
    
    

  • 對其設置.

  • 如圖位置找到,選擇點擊.(系統權限管理應該叫做用戶應用權限管理,更加恰當,應該是產品起的名字,奇奇怪怪的)

  • 可以將管理員的應用授權給普通用戶使用權限(那麼就沒什麼變化,所以這裏要禁用其功能).

  • 5 ) 重新登陸zhangsan賬戶,點擊進入應用詳情.

  • 這時就會看到管理員分配的功能沒有了,只有一個查看的功能了.

3、與舊版比對

  • 舊版是沒有這個模塊的,這是新增的一個模塊,對兩個權限進行了修改,全網和官網都沒有相關配置,這裏是作者反覆測試得到的結果.

五、系統參數

  • 可以通過這裏配置.

1、PortalDB 配置管理

  • 這個模塊對應的數據庫就是這個的表.

新增配置

  • 就相當於項目裏的properties

編輯配置

查詢配置

刪除配置

  • 界面沒有開發刪除功能,所以,要在數據庫操作刪除.

  • 謹慎操作,不要輕易操作

2、ConfigDB 配置管理

  • 這個模塊對應的數據庫就是這個的表.

新增配置

  • 就相當於項目裏的properties

編輯配置

查詢配置

刪除配置

  • 界面沒有開發刪除功能,所以,要在數據庫操作刪除.

  • 謹慎操作,不要輕易操作

六、系統信息

  • 主要是查看功能,就跟Euraka的主頁一樣.

七、配置導出導入

  • 會把配置信息導出成應用配置的信息.

1、配置導出

  • 導出後會產生這樣的文檔.打開查看都是json格式的數據.

2、配置導入

八、應用配置(核心功能使用)

  • 在主頁點擊應用進入應用配置.

1、應用信息配置

  • 查看應用操作.

2、管理應用配置

  • 查看第四章系統權限管理

  • 查看應用操作

3、管理密鑰配置(新版纔有,舊版沒有)

  • 進入密鑰詳情,點擊添加進行添加.

  • 可以點擊啓用或者刪除.

  • 點擊啓用

4、添加集羣配置

  • 集羣就是多個服務器或者多個服務同時使用.

    刪除集羣

  • 在首頁找到管理員工具裏的刪除功能.另一個頁面打開記住集羣的名字,複製粘貼過來.

  • 一個打開記錄集羣名稱.

  • 進入刪除集羣界面.複製集羣名稱粘貼進來.

  • 刪除成功後.

  • 再次查看應用詳情中,刪除成功.

    集羣沒有修改名稱的操作

  • 可以通過修改數據庫實現 .

    
    UPDATE  cluster SET Name='HandSomeBoy' where Id = 7 and IsDeleted=0;
    
    

  • 修改成功,再查看界面.

5、添加Namespace配置

  • 進入內部的NameSpace配置界面,

  • 有兩個模塊:創建Namespace和關聯公共組件Namespace

  • 其他功能.

A、創建Namespace配置

創建新的Namespace

  • 類型:公有就是其他項目也可以使用,私有就是隻有當前的項目可以使用,建法一樣,就是看你是自己項目用還是大家一起用.

設置Namespace

  • 點擊新增配置

  • 具體配置信息描述.

  • 另一種就是通過文本添加,當產生配置表之後,可以進行文本配置的.

  • 配置成功後生成列表.

  • 點擊這裏進行修改

  • 點擊叉進行刪除

  • 其他配置可以按需求修改.

  • 最後發佈配置文件,就相當於上線了的配置文件,可以用服務連接使用了.

B、關聯公共組件Namespace
  • 就是兩個或者多個項目,共同使用一個配置的namespace,也相當於共用的properties.

建立關聯的namespace

  • 選擇另一個應用進入,找到namespace設置,選擇關聯公共namespace

  • 本來沒有namespace,這樣就共用了一個公有的namespace.達到多個項目共用一個公有公共的namespace.

    • 創建成功選擇回到首頁.

  • 還可以進行覆蓋修改操作.

    • key重複了,但是,在這個項目裏單獨的被覆蓋修改了.

C、刪除Namespace

應用內刪除namespace

  • 選中一個應用進入,看到namespace列表,選擇這個地方,選擇刪除.

  • 選擇刪除namespace.

管理員工具中刪除namespace

  • 功能建立的很散,所以,只能這樣寫了.

  • 點擊進入,查看到刪除namespace的地方.

  • 需要查看列表裏的名字,雙開瀏覽器比較方便操作,不然不好複製粘貼.

  • 回到首頁的應用,點擊進入,查看到沒有了.

九、開放平臺授權管理

  • 需要有這個需求的項目作爲前提.

  • 首先要把第三方的應用接入到apollo平臺裏,否則,這裏無法使用

  • 進入主頁分爲兩個模塊:創建第三方應用 和賦權

  • 模擬填寫一下.

  • 模擬填寫一下.

  • 填寫無誤創建成功,就會返回到如圖的列表中,列表就會顯示出來.

Apollo 開發使用

一、構建開發環境

軟件名稱 版本 相關文章推薦
Git 儘量最新 https://www.cnblogs.com/liuyangfirst/p/15996063.html
JDK 1.8 https://www.cnblogs.com/liuyangfirst/p/14334385.html
Maven 儘量最新 https://www.cnblogs.com/liuyangfirst/p/15981202.html
MySQL 5.6.10 https://www.cnblogs.com/liuyangfirst/p/15997667.html
DBeaver 儘量最新 https://www.cnblogs.com/liuyangfirst/p/15997753.html
IntelliJ IDEA 儘量使用比較新的版本 https://www.jetbrains.com/idea/

二、構建微服務項目

參考文章

軟件名稱 版本 相關文章推薦
Git 儘量最新 https://www.cnblogs.com/liuyangfirst/p/15996063.html

三、微服務接入Apollo

1、 修改pom

  • 在pom.xml中添加Apollo客戶端 。

    
    <dependency>
        <groupId>com.ctrip.framework.apollo</groupId>
        <artifactId>apollo-client</artifactId>
        <version>1.1.0</version>
    </dependency>
    
    
  • 項目的父類中添加。

2、修改properties

  • 主要添加在consumer的路徑下,就是調用apollo服務的模塊。(由於是分佈式,所以Apollo就相當於一個公共的服務,公共服務的東西被項目通過服務的方式調用。)

  • 在resources目錄下新建apollo-env.properties文件

# 這個是最有用的
dev.meta=http://localhost:8080
# 功能驗收測試環境
fat.meta=http://211.103.136.242:7134
# 用戶驗收測試環境
uat.meta=http://172.17.0.83:8080
# 生產環境
pro.meta=http://itcast.xxx.com
  • application.properties中進行如下配置
# 項目ID
app.id=account-service
# 啓動階段就注入配置(提高優先級)
apollo.bootstrap.enabled = true
# 使用哪些命名空間中的配置項
apollo.bootstrap.namespaces = application,micro_service.spring-boot-http,springrocketmq
# 服務端口
server.port=63000

3、編譯啓動

A.配置啓動參數
  • 完整的VM Options如下:

-Denv=DEV -Dapollo.cluster=DEFAULT

B、其他描述
  • Environment

    
    # 可以通過Java的System Property的env來指定環境:
    -Denv=DEV
    
    
  • Cluster(集羣)

    
    # 通過Java的System Property的apollo.cluste來指定集羣:
    -Dapollo.cluster=DEFAULT
    
    

4、模塊啓動順序

序號 模塊 描述
1 啓動Apollo 啓動Apollo的jar包
2 DiscoveryServer 註冊中心
3 GatewayServerGatewayServer 網關
4 ConsumerService 用戶中心
  • 啓動無誤,就是配置成功了.

五、調用流程圖

  • 對應關係

六、版本對應

版本對應關係

  • springboot/springcloud/apollo-client 對應版本
年份 springboot springcloud apollo-client jdk
2023.2.1 3.0.2 2022.0.0 2.1.0 1.8
2023.X.X 2.6.8 2021.0.2 2.1.0 1.8
自行使用版本 2.1.3.RELEASE Greenwich.RELEASE 1.2.0 1.8
  • spring對應版本
年份 spring apollo-client jdk
2023.2.1 3.1.1.RELEASE 2.1.0 1.8
  • springboot/springcloud 對應版本(官網)

apollo-client已有版本

七、注意

1、配置 集體放在Apollo配置中心,怎麼被應用獲取呢?

  • 通過Apollo客戶端。在項目裏就是加個pom依賴,然後修改相關配置。

  • 客戶端的作用:從配置中心取配置

2、配置properties的作用?

  • 雖然有了配置中心的客戶端,但是,客戶端不知道要取什麼配置,去哪裏取。
  • 配置中心在哪裏存放,要從配置中心的哪個項目裏,取哪個環境的,取哪個集羣的,哪個命名空間裏的什麼配置。

結語

嘔心瀝血,爆肝兩個星期(需要寫配置環境的文檔,還要反覆測試,以便爲各位看官老爺提供最好的精品文章),希望點贊,收藏,評論,轉發,您的支持就是本博主前進的動力.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章