日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

3天內不再提示

Keepalived詳解

馬哥Linux運維 ? 來源:馬哥Linux運維 ? 2025-02-19 10:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

工作原理

Keepalived本質就是為ipvs服務的,它也不需要共享存儲。IPVS其實就是一些規(guī)則,Keepalived主要的任務就是去調用ipvsadm命令,來生成規(guī)則,并自動實現將用戶需要訪問的地址轉移到可用LVS節(jié)點實現。所以keepalive的高可用是屬于具有很強針對性的高可用,它和corosync這種通用性HA方案不同。

Keepalived的主要目的就是它自身啟動為一個服務,它工作在多個LVS主機節(jié)點上,當前活動的節(jié)點叫做Master備用節(jié)點叫做Backup,Master會不停的向Backup節(jié)點通告自己的心跳,這種通告是基于VRRP協(xié)議的。Backup節(jié)點一旦接收不到Master的通告信息,它就會把LVS的VIP拿過來,并且把ipvs的規(guī)則也拿過來,在自己身上生效,從而替代Master節(jié)點。

Keepalived除了可以監(jiān)控和轉移LVS資源之外,它還可以直接配置LVS而不需要直接使用ipvsadm命令,因為它可以調用,也就是說在LVS+KEEPALIVED模型中,你所有的工作在Keepalived中配置就可以了,而且它還有對后端應用服務器健康檢查的功能。

直接一句話Keepalived就是VRRP協(xié)議的實現,該協(xié)議是虛擬冗余路由協(xié)議。

VRRP工作原理簡述

那么這個VRRP協(xié)議是干嘛用呢?傳統(tǒng)上來說我們通過一個路由器上網,如果故障那就不能用了,如果使用2個路由器,有一個故障你就需要手動的設置客戶端切換到另外的路由器上,或者使用ARP客戶端也可以實現,但總之部署比較麻煩不利于管理,就像下圖:

4f0656d6-edda-11ef-9310-92fbcf53809c.png

有沒有一種辦法可以自動轉移而省去手動配置呢?我們就可以通過VRRP協(xié)議來實現路由器的故障轉移。如下圖:

4f1cdd7a-edda-11ef-9310-92fbcf53809c.png

這里有個問題,VRRP提供一個VIP,它可以來設定那個路由器是活動節(jié)點,然后出現故障進行切換,VIP也隨之對應到新的路由器上,但是內網是用過MAC地址來尋址的,雖然VIP對應到了新的路由器上,可是MAC變了,客戶端的ARP表也沒有更新,所以還是用不了,為了解決這個問題VRRP不但提供VIP還提供VMAC地址,這個VMAC地址是VRRP單獨申請的,大家都可以正常使用。

故障切換的時候雖然改變了后端路由器,但是由于客戶端使用的是VIP和VMAC地址,這樣就不會有任何影響了。

所以Keepalived就是在Linux系統(tǒng)上提供了VRRP功能,當然還提供了服務監(jiān)控功能,比如監(jiān)控后端服務器的健康檢查、LVS服務可用性檢查。

VRRP的工作過程是這樣的:

虛擬路由器中的路由器根據優(yōu)先級選舉出Master,Master路由器通過發(fā)送免費ARP報文,將自己的虛擬MAC地址通告給與它連接的設備。

Master路由器周期性發(fā)送VRRP報文,以公布自己的配置信息(優(yōu)先級等)和工作狀態(tài)

如果Master故障,虛擬路由器中的Backup路由器將根據優(yōu)先級重新選舉新的Master

虛擬路由器狀態(tài)切換時,Master路由器由一臺設備切換會另外一臺設備,新的Master路由器只是簡單的發(fā)送一個攜帶虛擬MAC地址和虛擬IP的免費ARP報文,這樣就可以更新其他設備中緩存的ARP信息

Backup路由器的優(yōu)先級高于Master時,由Backup的工作方式(搶占式或者非搶占式)決定是否重新選舉Master。

VRRP還支持認證,就是為了防止隨意一個VRRP設備加入到當前的虛擬路由組離來,它提供無認證、簡單8位字符串認證和MD5認證(該認證方式Keepalive不支持)。

Keepalive軟件結構

4f2b849c-edda-11ef-9310-92fbcf53809c.png

Keepalived啟動后以后會有一個主進程Master,它會生成還有2個子進程,一個是VRRP Stack負責VRRP(也就是VRRP協(xié)議的實現)、一個是Checkers負責IPVS的后端的應用服務器的健康檢查,當檢測失敗就會調用IPVS規(guī)則刪除后端服務器的IP地址,檢測成功了再加回來。當檢測后端有失敗的情況可以使用SMTP通知管理員。另外VRRP如果檢測到另外一個Keepalive失敗也可以通過SMTP通知管理員。

Control Plane:這個就是主進程,主進程的功能是分析配置文件,讀取、配置和生效配置文件,指揮那2個子進程工作。

WatchDog:看門狗,這個是Linux系統(tǒng)內核的一個模塊,它的作用是幫助主進程盯著那2個子進程,因為主進程并不負責具體工作,具體工作都是子進程完成的。如果子進程掛了,那Keepalived就不完整了,所以那2個子進程會定期的向主進程打開的一個內部Unix Socket文件寫心跳信息。如果有某個子進程不寫信息了,它就會重啟子進程,主進程就是讓WatchDog來監(jiān)控子進程的。下面我們就使用Keepalive來做LVS的高可用講解。關于后端服務器上的設置我這里就不說了請看另外一篇博文。

Keepalive安裝和配置

服務器 IP地址 角色
Srv01 172.16.42.100
VIP: 172.16.42.111
LVS+Keepalive
Srv02 172.16.42.101
VIP: 192.168.100.1
LVS+Keepalive
Srv03 172.16.42.102
VIP: 172.16.42.111
Nginx
Srv04 172.16.42.103
VIP: 172.16.42.111
Nginx

先決條件

禁用SElinux、清除iptables規(guī)則、關閉防火墻。就算因某種原因不能清除iptables規(guī)則,那么你需要增加一條規(guī)則放行多播

各個節(jié)點時間同步,啟用時間同步服務systemctl start chronyd

確保Keepalive使用的網卡開啟了多播,如下圖:

4f430ea0-edda-11ef-9310-92fbcf53809c.png

如果沒有開啟,可以使用該命令打開ip link set multicast on dev ens33,ens33是網卡名稱。

安裝keepalive

之間通過yum安裝即可yum install -y keepalived。我這里使用的是阿里云的源,它默認就在里面,如下圖:

4f519e84-edda-11ef-9310-92fbcf53809c.png

在2個節(jié)點都安裝。

文件 說明
/usr/sbin/keepalived 二進制程序
/etc/keepalived/keepalived.conf 配置文件
/usr/lib/systemd/system/keepalived.service 服務文件

Keepalive配置文件說明

# 全局配置
global_defs {
   # 郵件通知信息
   notification_email {
     # 定義收件人
     acassen@firewall.loc
   }
   # 定義發(fā)件人
   notification_email_from Alexandre.Cassen@firewall.loc
   # SMTP服務器地址
   smtp_server 192.168.200.1
   smtp_connect_timeout 30
   # 路由器標識,一般不用改,也可以寫成每個主機自己的主機名
   router_id LVS_DEVEL
   # VRRP的ipv4和ipv6的廣播地址,配置了VIP的網卡向這個地址廣播來宣告自己的配置信息,下面是默認值
   vrrp_mcast_group4 224.0.0.18
   vrrp_mcast_group6 ff02::12
}

# 定義用于實例執(zhí)行的腳本內容,比如可以在線降低優(yōu)先級,用于強制切換
vrrp_script SCRIPT_NAME {

}

# 一個vrrp_instance就是定義一個虛擬路由器的,實例名稱
vrrp_instance VI_1 {
    # 定義初始狀態(tài),可以是MASTER或者BACKUP
    state MASTER
    # 工作接口,通告選舉使用哪個接口進行
    interface ens33
    # 虛擬路由ID,如果是一組虛擬路由就定義一個ID,如果是多組就要定義多個,而且這個虛擬
    # ID還是虛擬MAC最后一段地址的信息,取值范圍0-255
    virtual_router_id 51
    # 使用哪個虛擬MAC地址
    use_vmac XXXXXX
    # 監(jiān)控本機上的哪個網卡,網卡一旦故障則需要把VIP轉移出去
    track_interface {
        eth0
        ens33
    }
    # 如果你上面定義了MASTER,這里的優(yōu)先級就需要定義的比其他的高
    priority 100
    # 通告頻率,單位為秒
    advert_int 1
    # 通信認證機制,這里是明文認證還有一種是加密認證
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    # 設置虛擬VIP地址,一般就設置一個,在LVS中這個就是為LVS主機設置VIP的,這樣你就不用自己手動設置了
    virtual_ipaddress {
        # IP/掩碼 dev 配置在哪個網卡
        192.168.200.16/24 dev eth1
        # IP/掩碼 dev 配置在哪個網卡的哪個別名上
        192.168.200.17/24 dev label eth1:1
    }
    # 虛擬路由,在需要的情況下可以設置lvs主機 數據包在哪個網卡進來從哪個網卡出去
    virtual_routes {
        192.168.110.0/24 dev eth2
    }
    # 工作模式,nopreempt表示工作在非搶占模式,默認是搶占模式 preempt
    nopreempt|preempt
    # 如果是搶占默認則可以設置等多久再搶占,默認5分鐘
    preempt delay 300
    # 追蹤腳本,通常用于去執(zhí)行上面的vrrp_script定義的腳本內容
    track_script {

    }
    # 三個指令,如果主機狀態(tài)變成Master|Backup|Fault之后會去執(zhí)行的通知腳本,腳本要自己寫
    notify_master ""
    notify_backup ""
    notify_fault ""
}

# 定義LVS集群服務,可以是IP+PORT;也可以是fwmark 數字,也就是防火墻規(guī)則
# 所以通過這里就可以看出來keepalive天生就是為ipvs而設計的
virtual_server 10.10.10.2 1358 {
    delay_loop 6
    # 算法
    lb_algo rr|wrr|lc|wlc|lblc|sh|dh 
    # LVS的模式
    lb_kind NAT|DR|TUN
    # 子網掩碼,這個掩碼是VIP的掩碼
    nat_mask 255.255.255.0
    # 持久連接超時時間
    persistence_timeout 50
    # 定義協(xié)議
    protocol TCP
    # 如果后端應用服務器都不可用,就會定向到那個服務器上
    sorry_server 192.168.200.200 1358

    # 后端應用服務器 IP PORT
    real_server 192.168.200.2 1358 {
        # 權重
        weight 1
        # MSIC_CHECK|SMTP_CHEKC|TCP_CHECK|SSL_GET|HTTP_GET這些都是
        # 針對應用服務器做健康檢查的方法
        MISC_CHECK {}
        # 用于檢查SMTP服務器的
        SMTP_CHEKC {}

        # 如果應用服務器不是WEB服務器,就用TCP_CHECK檢查
        TCP_CHECK {
          # 向哪一個端口檢查,如果不指定默認使用上面定義的端口
          connect_port 
          # 向哪一個IP檢測,如果不指定默認使用上面定義的IP地址
          bindto 
          # 連接超時時間
          connect_timeout 3
        }

        # 如果對方是HTTPS服務器就用SSL_GET方法去檢查,里面配置的內容和HTTP_GET一樣
        SSL_GET {}

        # 應用服務器UP或者DOWN,就執(zhí)行那個腳本
        notify_up "這里寫的是路徑,如果腳本后有參數,整體路徑+參數引起來"
        notify_down "/PATH/SCRIPTS.sh 參數"

        # 使用HTTP_GET方法去檢查
        HTTP_GET {
            # 檢測URL
            url { 
              # 具體檢測哪一個URL
              path /testurl/test.jsp
              # 檢測內容的哈希值
              digest 640205b7b0fc66c1ea91c463fac6334d
              # 除了檢測哈希值還可以檢測狀態(tài)碼,比如HTTP的200 表示正常,兩種方法二選一即可
              status_code 200
            }
            url { 
              path /testurl2/test.jsp
              digest 640205b7b0fc66c1ea91c463fac6334d
            }
            url { 
              path /testurl3/test.jsp
              digest 640205b7b0fc66c1ea91c463fac6334d
            }
            # 向哪一個端口檢查,如果不指定默認使用上面定義的端口
            connect_port 
            # 向哪一個IP檢測,如果不指定默認使用上面定義的IP地址
            bindto 
            # 連接超時時間
            connect_timeout 3
            # 嘗試次數
            nb_get_retry 3
            # 每次嘗試之間間隔幾秒
            delay_before_retry 3
        }
    }

    real_server 192.168.200.3 1358 {
        weight 1
        HTTP_GET {
            url { 
              path /testurl/test.jsp
              digest 640205b7b0fc66c1ea91c463fac6334c
            }
            url { 
              path /testurl2/test.jsp
              digest 640205b7b0fc66c1ea91c463fac6334c
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

配置Srv01和Srv02

配置VRRP部分

Srv01上的keepalived.conf

global_defs {
   notification_email {
     acassen@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id srv01
}


vrrp_instance VI_1 {
    state MASTER
    interface ens33
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }

    virtual_ipaddress {
        172.16.42.111/24 brd 172.16.42.111 dev ens33 label ens33:0
    }
    preempt delay 60
}

Srv02上的keepalived.conf,唯一不同的就是state、priority以及router_id。

global_defs {
   notification_email {
     acassen@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id srv02
}


vrrp_instance VI_1 {
    state BACKUP
    interface ens33
    virtual_router_id 51
    priority 90
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }

    virtual_ipaddress {
        172.16.42.111/24 brd 172.16.42.111 dev ens33 label ens33:0
    }
    preempt delay 60
}

啟動2個節(jié)點,啟動后會自動配置ens33:0這個子接口的虛擬IP

4f61856a-edda-11ef-9310-92fbcf53809c.png

在主節(jié)點上你通過systemctl status keepalived看不到它到底是什么角色,不過在BACKUP節(jié)點上你可以看到,但是你在主節(jié)點日志中cat /var/log/message里可以看到Srv01進入到MASTER狀態(tài),如下圖:

4f733f76-edda-11ef-9310-92fbcf53809c.png

查看Srv02的狀態(tài)

4f8f9a22-edda-11ef-9310-92fbcf53809c.png

那么你通過停止Srv01上的keepalived服務就看到MASTER會被轉移到Srv02上。

使用該命令查看VRRP通告tcpdum -i ens33 -nn host 224.0.0.18,你在2臺主機都會看到相同的信息。

4fa93400-edda-11ef-9310-92fbcf53809c.png

Srv01使用真實物理IP對該地址進行發(fā)送通告,那么Srv02也會收到,如果Srv01宕機,那么Srv02就會使用自己的物理IP向該地址發(fā)送通告,由于Srv01已經宕機那么此時Srv02的優(yōu)先級就是最高的,所以Srv02就變成了MASTER。

配置LVS部分

這里只是用了LVS來說明如何配置Keepalived,如果要看完整內容請移步使用Keepalived構建LVS高可用集群

在keepalived.conf文件中增加下面的內容,2臺服務器增加的內容一致,所以這里就寫一份。

virtual_server 172.16.42.111 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    nat_mask 255.255.255.0
    persistence_timeout 0
    protocol TCP

    sorry_server 192.168.200.200 1358

    # 后端應用服務器 IP PORT
    real_server 172.16.42.102 80 {
        weight 1
        # 應用服務器UP或者DOWN,就執(zhí)行那個腳本
        notify_up "/usr/local/notify.sh up"
        notify_down "/usr/local/notify.sh down"
        HTTP_GET {
            # 檢測URL
            url { 
              path /index.html
              # 除了檢測哈希值還可以檢測狀態(tài)碼,比如HTTP的200 表示正常,兩種方法二選一即可
              status_code 200
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }

    real_server 172.16.42.103 80 {
        weight 1
        # 應用服務器UP或者DOWN,就執(zhí)行那個腳本
        notify_up "/usr/local/notify.sh up"
        notify_down "/usr/local/notify.sh down"
        HTTP_GET {
            # 檢測URL
            url { 
              path /index.html
              # 除了檢測哈希值還可以檢測狀態(tài)碼,比如HTTP的200 表示正常,兩種方法二選一即可
              status_code 200
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

這里的notify_up|down腳本我寫的很簡單就是為了使用一下這個功能,內容如下:

#!/bin/bash

# 不同的是2個主機上的echo部分不一樣,因為主機名不同。
if [ $1 == "up" ]; then
  echo "Srv02 is UP" > /tmp/notify.txt
elif [ $1 == "down" ]; then
  echo "Srv02 is DOWN" > /tmp/notify.txt
fi

重啟Keepalived服務之后你就可以通過ipvsadm -Ln查看ipvs規(guī)則了,這些規(guī)則在2臺服務器上都會有,如下圖:

4fbfa69a-edda-11ef-9310-92fbcf53809c.png

測試訪問

使用下面的命令快速訪問for i in {1..20}; do curl http://172.16.42.111/ | grep "Srv0" --color ; done

4fce1856-edda-11ef-9310-92fbcf53809c.png

可以看到2臺服務器交替,因為我們使用的rr調度算法。

故障轉移測試

連續(xù)訪問VIP,然后停止Srv01上面的keepalived服務,這就意味著Srv01也就是失去了VIP,然后觀察請求情況以及是否觸發(fā)之前設定的腳本。

4fe067ae-edda-11ef-9310-92fbcf53809c.png

在Srv01上查看腳本執(zhí)行情況

4ff7fa68-edda-11ef-9310-92fbcf53809c.png

查看Srv02上面的日志

5006072a-edda-11ef-9310-92fbcf53809c.png

鏈接:https://www.cnblogs.com/rexcheny/p/10778567.html

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

    關注

    1

    文章

    38

    瀏覽量

    10525
  • Keepalived
    +關注

    關注

    0

    文章

    8

    瀏覽量

    4345

原文標題:Keepalive詳解

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【CANopen實戰(zhàn)】如何實現PDO數據變化即刻發(fā)送(事件觸發(fā)模式詳解

    【CANopen實戰(zhàn)】如何實現PDO數據變化即刻發(fā)送(事件觸發(fā)模式詳解
    的頭像 發(fā)表于 04-09 14:39 ?202次閱讀
    【CANopen實戰(zhàn)】如何實現PDO數據變化即刻發(fā)送(事件觸發(fā)模式<b class='flag-5'>詳解</b>)

    導熱凝膠真實導熱系數測試標準詳解

    鉻銳特實業(yè)|東莞導熱膠廠家|本文詳解導熱凝膠真實導熱系數的含義、常見誤區(qū)及主流測試標準(重點ASTM D5470),幫助您辨別虛標數據,選擇高性能熱界面材料,提升電子設備散熱可靠性。
    的頭像 發(fā)表于 03-30 15:01 ?328次閱讀
    導熱凝膠真實導熱系數測試標準<b class='flag-5'>詳解</b>

    ATX電源電路分析詳解開關電源的原理

    ATX電源電路分析詳解開關電源的原理,WORD版,圖文并茂,詳細說明各個元件在電路中的作用。適合初學者
    發(fā)表于 03-29 16:47 ?3次下載

    GINKGO MICRO 銀杏微半導體MOS管在汽車車燈的應用參數詳解與選型指南

    GINKGO MICRO 銀杏微半導體MOS管在汽車車燈的應用參數詳解與選型指南 一、概述 汽車車燈已全面進入LED/矩陣/像素化時代, MOSFET 作為車燈驅動、調光、保護、升壓/降壓核心開關
    的頭像 發(fā)表于 03-12 17:59 ?1182次閱讀
    GINKGO MICRO 銀杏微半導體MOS管在汽車車燈的應用參數<b class='flag-5'>詳解</b>與選型指南

    從“人機交互”到“數字預演”:詳解 HMI、SCADA 與虛擬調試的閉環(huán)架構

    從“人機交互”到“數字預演”:詳解 HMI、SCADA 與虛擬調試的閉環(huán)架構
    的頭像 發(fā)表于 03-05 11:36 ?368次閱讀
    從“人機交互”到“數字預演”:<b class='flag-5'>詳解</b> HMI、SCADA 與虛擬調試的閉環(huán)架構

    高導熱灌封膠如何驗證?詳解導熱系數的精準測試方法與影響因素 | 鉻銳特實業(yè)

    高導熱灌封膠導熱系數如何精準驗證?本文詳解ASTM D5470等主流測試方法、影響實測值的關鍵因素及專業(yè)判斷標準,幫助您甄選真正可靠的產品。 | 鉻銳特實業(yè)
    的頭像 發(fā)表于 12-04 11:37 ?857次閱讀
    高導熱灌封膠如何驗證?<b class='flag-5'>詳解</b>導熱系數的精準測試方法與影響因素 | 鉻銳特實業(yè)

    【迅為工業(yè)RK3568穩(wěn)定可靠】itop-3568開發(fā)板Linux驅動開發(fā)實戰(zhàn):RK3568內核模塊符號導出詳解

    【迅為工業(yè)RK3568穩(wěn)定可靠】itop-3568開發(fā)板Linux驅動開發(fā)實戰(zhàn):RK3568內核模塊符號導出詳解
    的頭像 發(fā)表于 11-21 13:25 ?1705次閱讀
    【迅為工業(yè)RK3568穩(wěn)定可靠】itop-3568開發(fā)板Linux驅動開發(fā)實戰(zhàn):RK3568內核模塊符號導出<b class='flag-5'>詳解</b>

    CentOS 7下MySQL 8雙主熱備高可用架構全解

    Centos7部署MySQL8+keepalived雙主熱備(含Keepalived配置與GTID同步優(yōu)化方案) 架構拓撲原理 GTID同步 VIP 192.168.1.100 MySQL主節(jié)點1
    的頭像 發(fā)表于 08-12 17:08 ?1014次閱讀

    【HarmonyOS 5】鴻蒙mPaaS詳解

    【HarmonyOS 5】鴻蒙mPaaS詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財# 一、mPaaS是什么? mPaaS 是 Mobile
    的頭像 發(fā)表于 07-11 18:23 ?1033次閱讀
    【HarmonyOS 5】鴻蒙mPaaS<b class='flag-5'>詳解</b>

    達夢數據庫常用管理SQL命令詳解

    達夢數據庫常用管理SQL命令詳解
    的頭像 發(fā)表于 06-17 15:12 ?7691次閱讀
    達夢數據庫常用管理SQL命令<b class='flag-5'>詳解</b>

    HarmonyOS 5 makeObserved接口詳解

    【HarmonyOS 5】makeObserved接口詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財# 一、makeObserved接口
    的頭像 發(fā)表于 06-16 17:58 ?810次閱讀

    【HarmonyOS 5】鴻蒙中的UIAbility詳解(三)

    【HarmonyOS 5】鴻蒙中的UIAbility詳解(三) ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財# 一、前言 本文是鴻蒙中的UIAbility
    的頭像 發(fā)表于 06-14 22:32 ?897次閱讀

    安徽京準:北斗衛(wèi)星同步時鐘的安裝與調試詳解

    安徽京準:北斗衛(wèi)星同步時鐘的安裝與調試詳解
    的頭像 發(fā)表于 06-05 10:08 ?1779次閱讀
    安徽京準:北斗衛(wèi)星同步時鐘的安裝與調試<b class='flag-5'>詳解</b>

    SSH常用命令詳解

    SSH常用命令詳解
    的頭像 發(fā)表于 06-04 11:30 ?2210次閱讀

    【必看】開關電源中每一個元器件的計算+51頁圖文詳解

    開關電源的各個元器件怎么計算?損耗怎么估算?散熱器的大小怎么計算? 51頁圖文詳解,一文帶你弄懂! 純分享貼,有需要可以直接下載附件獲取完整資料! (如果內容有幫助可以關注、點贊、評論支持一下哦~)
    發(fā)表于 05-12 16:20
    黄石市| 岗巴县| 延边| 耿马| 化德县| 电白县| 巴塘县| 沈阳市| 贵德县| 苍山县| 准格尔旗| 南昌市| 裕民县| 阿尔山市| 孝义市| 鹤庆县| 尖扎县| 齐河县| 藁城市| 山西省| 渭南市| 汾阳市| 镇原县| 容城县| 沅江市| 克山县| 曲松县| 连云港市| 汾阳市| 自治县| 兰州市| 苍山县| 彰武县| 化德县| 青浦区| 苍南县| 新绛县| 宁德市| 文成县| 岱山县| 哈尔滨市|