應用監控探針需要與服務端保持網路連通才能正常工作。本文介紹預設CloudMonitor工作空間和非預設CloudMonitor工作空間的資料上報網路要求,以及網路連通性檢查方法。
預設CloudMonitor工作空間上報網路連通性要求
預設CloudMonitor工作空間使用 ARMS 原有資料上報鏈路。
需要開放的目標連接埠
連接埠 | 功能說明 |
80 | 由調用鏈與中繼資料存取點、指標存取點、持續剖析服務和探針自監控服務提供,用於資料上報。 |
8080 | 由 ACM 服務提供,用於應用佈建服務。 |
8848 | 由 ACM 服務提供,用於應用佈建服務。 |
9990 | 由調用鏈與中繼資料存取點提供,用於中繼資料上報。 |
9092 | 由調用鏈與中繼資料存取點提供,用於應用診斷。 |
9093 | 由調用鏈與中繼資料存取點提供,用於應用安全。 |
需要開放的網域名稱
如果應用部署在阿里雲 VPC 內(包括通過專線打通阿里雲 VPC 的情境),請優先使用內網存取點;如果應用部署線上下資料中心或其他雲上,請使用公網存取點。
地區 | 公網存取點 | 內網存取點(VPC 網路) |
華東1(杭州) | arms-dc-hz.aliyuncs.com(調用鏈與中繼資料) | arms-dc-hz-internal.aliyuncs.com(調用鏈與中繼資料) |
華東2(上海) | arms-dc-sh.aliyuncs.com(調用鏈與中繼資料) | arms-dc-sh-internal.aliyuncs.com(調用鏈與中繼資料) |
華北1(青島) | arms-dc-qd.aliyuncs.com(調用鏈與中繼資料) | arms-dc-qd-internal.aliyuncs.com(調用鏈與中繼資料) |
華北2(北京) | arms-dc-bj.aliyuncs.com(調用鏈與中繼資料) | arms-dc-bj-internal.aliyuncs.com(調用鏈與中繼資料) |
華北3(張家口) | arms-dc-zb.aliyuncs.com(調用鏈與中繼資料) | arms-dc-zb-internal.aliyuncs.com(調用鏈與中繼資料) |
華北5(呼和浩特) | dc-cn-huhehaote.arms.aliyuncs.com(調用鏈與中繼資料) | dc-cn-huhehaote-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
華北6(烏蘭察布) | dc-cn-wulanchabu.arms.aliyuncs.com(調用鏈與中繼資料) | dc-cn-wulanchabu-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
華南1(深圳) | arms-dc-sz.aliyuncs.com(調用鏈與中繼資料) | arms-dc-sz-internal.aliyuncs.com(調用鏈與中繼資料) |
華南2(河源) | dc-cn-heyuan.arms.aliyuncs.com(調用鏈與中繼資料) | dc-cn-heyuan-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
華南3(廣州) | dc-cn-guangzhou.arms.aliyuncs.com(調用鏈與中繼資料) | dc-cn-guangzhou-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
西南1(成都) | dc-cn-chengdu.arms.aliyuncs.com(調用鏈與中繼資料) | dc-cn-chengdu-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
中國(香港) | arms-dc-hk.aliyuncs.com(調用鏈與中繼資料) | arms-dc-hk-internal.aliyuncs.com(調用鏈與中繼資料) |
日本(東京) | arms-dc-jp.aliyuncs.com(調用鏈與中繼資料) | arms-dc-jp-internal.aliyuncs.com(調用鏈與中繼資料) |
新加坡 | arms-dc-sg.aliyuncs.com(調用鏈與中繼資料) | arms-dc-sg-internal.aliyuncs.com(調用鏈與中繼資料) |
馬來西亞(吉隆坡) | dc-ap-southeast-3.arms.aliyuncs.com(調用鏈與中繼資料) | dc-ap-southeast-3-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
印尼(雅加達) | arms-dc-indonesia.aliyuncs.com(調用鏈與中繼資料) | arms-dc-indonesia-internal.aliyuncs.com(調用鏈與中繼資料) |
德國(法蘭克福) | arms-dc-frankfurt.aliyuncs.com(調用鏈與中繼資料) | arms-dc-frankfurt-internal.aliyuncs.com(調用鏈與中繼資料) |
英國(倫敦) | dc-eu-west-1.arms.aliyuncs.com(調用鏈與中繼資料) | dc-eu-west-1-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
美國(維吉尼亞) | dc-us-east-1.arms.aliyuncs.com(調用鏈與中繼資料) | dc-us-east-1-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
美國(矽谷) | arms-dc-usw.aliyuncs.com(調用鏈與中繼資料) | dc-us-west-1-internal.arms.aliyuncs.com(調用鏈與中繼資料) |
預設情況下,探針會自動探測網路,優先使用內網存取點;內網不通時使用公網存取點。
需要開放的 IP 段
如果應用部署在阿里雲 VPC 內,請在確保內網網域名稱連通的情況下,開放各服務對應的內網網段。公網存取點不提供固定網段,請按網域名稱配置網路原則。
需要開放的 ACM 引擎 IP 位址
探針需要串連 ACM 引擎擷取配置。可通過對應地區的 ACM 網域名稱查詢引擎 IP:
curl 'http://acm.aliyun.com:8080/diamond-server/diamond'請確保防火牆允許訪問返回的 ACM 引擎 IP。
非預設CloudMonitor工作空間上報網路連通性要求
非預設CloudMonitor工作空間使用Log Service SLS 資料上報鏈路。預設使用 HTTP 協議、IPv4 網路和 80 連接埠。如果應用與目標工作空間位於阿里雲同一地區,建議優先使用私網服務入口;其他情境使用公網服務入口。
使用 SLS 公用雲私網 Endpoint 時,必須使用阿里雲雲上私網 DNS 地址 100.100.2.136 和 100.100.2.138,否則可能無法解析到正確的私網 VIP。
服務入口
地區 | 公網服務入口 | 私網服務入口 |
華東1(杭州) | cn-hangzhou.log.aliyuncs.com | cn-hangzhou-intranet.log.aliyuncs.com |
華東2(上海) | cn-shanghai.log.aliyuncs.com | cn-shanghai-intranet.log.aliyuncs.com |
華東5(南京,本地地區,關停中) | cn-nanjing.log.aliyuncs.com | cn-nanjing-intranet.log.aliyuncs.com |
華東6(福州,本地地區,關停中) | cn-fuzhou.log.aliyuncs.com | cn-fuzhou-intranet.log.aliyuncs.com |
華北1(青島) | cn-qingdao.log.aliyuncs.com | cn-qingdao-intranet.log.aliyuncs.com |
華北2(北京) | cn-beijing.log.aliyuncs.com | cn-beijing-intranet.log.aliyuncs.com |
華北3(張家口) | cn-zhangjiakou.log.aliyuncs.com | cn-zhangjiakou-intranet.log.aliyuncs.com |
華北5(呼和浩特) | cn-huhehaote.log.aliyuncs.com | cn-huhehaote-intranet.log.aliyuncs.com |
華北6(烏蘭察布) | cn-wulanchabu.log.aliyuncs.com | cn-wulanchabu-intranet.log.aliyuncs.com |
華南1(深圳) | cn-shenzhen.log.aliyuncs.com | cn-shenzhen-intranet.log.aliyuncs.com |
華南2(河源) | cn-heyuan.log.aliyuncs.com | cn-heyuan-intranet.log.aliyuncs.com |
華南3(廣州) | cn-guangzhou.log.aliyuncs.com | cn-guangzhou-intranet.log.aliyuncs.com |
西南1(成都) | cn-chengdu.log.aliyuncs.com | cn-chengdu-intranet.log.aliyuncs.com |
中國(香港) | cn-hongkong.log.aliyuncs.com | cn-hongkong-intranet.log.aliyuncs.com |
日本(東京) | ap-northeast-1.log.aliyuncs.com | ap-northeast-1-intranet.log.aliyuncs.com |
韓國(首爾) | ap-northeast-2.log.aliyuncs.com | ap-northeast-2-intranet.log.aliyuncs.com |
新加坡 | ap-southeast-1.log.aliyuncs.com | ap-southeast-1-intranet.log.aliyuncs.com |
馬來西亞(吉隆坡) | ap-southeast-3.log.aliyuncs.com | ap-southeast-3-intranet.log.aliyuncs.com |
印尼(雅加達) | ap-southeast-5.log.aliyuncs.com | ap-southeast-5-intranet.log.aliyuncs.com |
菲律賓(馬尼拉) | ap-southeast-6.log.aliyuncs.com | ap-southeast-6-intranet.log.aliyuncs.com |
泰國(曼穀) | ap-southeast-7.log.aliyuncs.com | ap-southeast-7-intranet.log.aliyuncs.com |
阿聯酋(杜拜) | me-east-1.log.aliyuncs.com | me-east-1-intranet.log.aliyuncs.com |
德國(法蘭克福) | eu-central-1.log.aliyuncs.com | eu-central-1-intranet.log.aliyuncs.com |
英國(倫敦) | eu-west-1.log.aliyuncs.com | eu-west-1-intranet.log.aliyuncs.com |
美國(維吉尼亞) | us-east-1.log.aliyuncs.com | us-east-1-intranet.log.aliyuncs.com |
美國(矽谷) | us-west-1.log.aliyuncs.com | us-west-1-intranet.log.aliyuncs.com |
更多服務入口資訊,請參見Log Service不同網路類型的服務入口。
自動檢查網路連通性
準備工具
請在應用所在容器或機器上安裝 curl 和 nc。指令碼使用 curl -4 強制通過 IPv4 發起 HTTP 要求,所有串連的逾時時間均為 1 秒。
運行自動化檢查指令碼
建立
check_network.sh,並添加以下內容:#!/usr/bin/env bash set -u TIMEOUT_SECONDS=1 REGION_ID="${1:-}" if ! command -v curl >/dev/null 2>&1; then echo "未安裝 curl,請先安裝:https://curl.se/" exit 1 fi if ! command -v nc >/dev/null 2>&1; then echo "未安裝 nc,請先安裝:https://netcat.sourceforge.net/" exit 1 fi if [ -z "${REGION_ID}" ]; then TOKEN=$(curl -4 -sS --connect-timeout "${TIMEOUT_SECONDS}" --max-time "${TIMEOUT_SECONDS}" -X PUT "http://100.100.100.200/latest/api/token" -H "X-aliyun-ecs-metadata-token-ttl-seconds:300" 2>/dev/null || true) REGION_ID=$(curl -4 -sS --connect-timeout "${TIMEOUT_SECONDS}" --max-time "${TIMEOUT_SECONDS}" -H "X-aliyun-ecs-metadata-token: ${TOKEN}" "http://100.100.100.200/latest/meta-data/region-id" 2>/dev/null || true) fi if [ -z "${REGION_ID}" ]; then echo "無法自動擷取地區 ID,請執行:$0 <region_id>" exit 1 fi check_http() { local name="$1" local url="$2" local http_code http_code=$(curl -4 -sS -o /dev/null --connect-timeout "${TIMEOUT_SECONDS}" --max-time "${TIMEOUT_SECONDS}" -w "%{http_code}" "${url}" 2>/dev/null || true) if [ -n "${http_code}" ] && [ "${http_code}" != "000" ]; then printf '%-44s 可連通(HTTP %s) ' "${name}" "${http_code}" else printf '%-44s 不可連通 ' "${name}" fi } check_tcp() { local name="$1" local host="$2" local port="$3" if nc -z -w "${TIMEOUT_SECONDS}" "${host}" "${port}" >/dev/null 2>&1; then printf '%-44s 可連通 ' "${name}" else printf '%-44s 不可連通 ' "${name}" fi } get_default_endpoints() { case "$1" in cn-hangzhou) echo "arms-dc-hz.aliyuncs.com|arms-dc-hz-internal.aliyuncs.com|cn-hangzhou.arms.aliyuncs.com|cn-hangzhou-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-hz-internal.edas.aliyun.com" ;; cn-shanghai) echo "arms-dc-sh.aliyuncs.com|arms-dc-sh-internal.aliyuncs.com|cn-shanghai.arms.aliyuncs.com|cn-shanghai-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-sh-internal.edas.aliyun.com" ;; cn-qingdao) echo "arms-dc-qd.aliyuncs.com|arms-dc-qd-internal.aliyuncs.com|cn-qingdao.arms.aliyuncs.com|cn-qingdao-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-qd-internal.edas.aliyun.com" ;; cn-beijing) echo "arms-dc-bj.aliyuncs.com|arms-dc-bj-internal.aliyuncs.com|cn-beijing.arms.aliyuncs.com|cn-beijing-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-bj-internal.edas.aliyun.com" ;; cn-zhangjiakou) echo "arms-dc-zb.aliyuncs.com|arms-dc-zb-internal.aliyuncs.com|cn-zhangjiakou.arms.aliyuncs.com|cn-zhangjiakou-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-cn-zhangjiakou-internal.edas.aliyun.com" ;; cn-huhehaote) echo "dc-cn-huhehaote.arms.aliyuncs.com|dc-cn-huhehaote-internal.arms.aliyuncs.com|cn-huhehaote.arms.aliyuncs.com|cn-huhehaote-intranet.arms.aliyuncs.com|acm.aliyun.com|-" ;; cn-wulanchabu) echo "dc-cn-wulanchabu.arms.aliyuncs.com|dc-cn-wulanchabu-internal.arms.aliyuncs.com|cn-wulanchabu.arms.aliyuncs.com|cn-wulanchabu-intranet.arms.aliyuncs.com|acm.aliyun.com|-" ;; cn-shenzhen) echo "arms-dc-sz.aliyuncs.com|arms-dc-sz-internal.aliyuncs.com|cn-shenzhen.arms.aliyuncs.com|cn-shenzhen-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-sz-internal.edas.aliyun.com" ;; cn-heyuan) echo "dc-cn-heyuan.arms.aliyuncs.com|dc-cn-heyuan-internal.arms.aliyuncs.com|cn-heyuan.arms.aliyuncs.com|cn-heyuan-intranet.arms.aliyuncs.com|acm.aliyun.com|-" ;; cn-guangzhou) echo "dc-cn-guangzhou.arms.aliyuncs.com|dc-cn-guangzhou-internal.arms.aliyuncs.com|cn-guangzhou.arms.aliyuncs.com|cn-guangzhou-intranet.arms.aliyuncs.com|acm.aliyun.com|-" ;; cn-chengdu) echo "dc-cn-chengdu.arms.aliyuncs.com|dc-cn-chengdu-internal.arms.aliyuncs.com|cn-chengdu.arms.aliyuncs.com|cn-chengdu-intranet.arms.aliyuncs.com|acm.aliyun.com|-" ;; cn-hongkong) echo "arms-dc-hk.aliyuncs.com|arms-dc-hk-internal.aliyuncs.com|cn-hongkong.arms.aliyuncs.com|cn-hongkong-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-hk-internal.edas.aliyun.com" ;; ap-northeast-1) echo "arms-dc-jp.aliyuncs.com|arms-dc-jp-internal.aliyuncs.com|ap-northeast-1.arms.aliyuncs.com|ap-northeast-1-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-ap-northeast-1-internal.edas.aliyun.com" ;; ap-southeast-1) echo "arms-dc-sg.aliyuncs.com|arms-dc-sg-internal.aliyuncs.com|ap-southeast-1.arms.aliyuncs.com|ap-southeast-1-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-singapore-internal.edas.aliyun.com" ;; ap-southeast-3) echo "dc-ap-southeast-3.arms.aliyuncs.com|dc-ap-southeast-3-internal.arms.aliyuncs.com|ap-southeast-3.arms.aliyuncs.com|ap-southeast-3-intranet.arms.aliyuncs.com|acm.aliyun.com|-" ;; ap-southeast-5) echo "arms-dc-indonesia.aliyuncs.com|arms-dc-indonesia-internal.aliyuncs.com|ap-southeast-5.arms.aliyuncs.com|ap-southeast-5-intranet.arms.aliyuncs.com|acm.aliyun.com|-" ;; eu-central-1) echo "arms-dc-frankfurt.aliyuncs.com|arms-dc-frankfurt-internal.aliyuncs.com|eu-central-1.arms.aliyuncs.com|eu-central-1-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-eu-central-1-internal.edas.aliyun.com" ;; eu-west-1) echo "dc-eu-west-1.arms.aliyuncs.com|dc-eu-west-1-internal.arms.aliyuncs.com|eu-west-1.arms.aliyuncs.com|eu-west-1-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-eu-west-1-internal.edas.aliyun.com" ;; us-east-1) echo "dc-us-east-1.arms.aliyuncs.com|dc-us-east-1-internal.arms.aliyuncs.com|us-east-1.arms.aliyuncs.com|us-east-1-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-us-east-1-internal.edas.aliyun.com" ;; us-west-1) echo "arms-dc-usw.aliyuncs.com|dc-us-west-1-internal.arms.aliyuncs.com|us-west-1.arms.aliyuncs.com|us-west-1-intranet.arms.aliyuncs.com|acm.aliyun.com|arms-dc-usw.aliyuncs.com" ;; cn-north-2-gov-1) echo "arms-dc-gov.aliyuncs.com|arms-dc-gov-internal.aliyuncs.com|cn-north-2-gov-1.arms.aliyuncs.com|cn-north-2-gov-1-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-cn-north-2-gov-1-internal.edas.aliyun.com" ;; cn-hangzhou-finance) echo "arms-dc-hz-finance.aliyuncs.com|arms-dc-hz-finance-internal.aliyuncs.com|cn-hangzhou-finance.arms.aliyuncs.com|cn-hangzhou-finance-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-hz-internal.jbp.console.aliyun.com" ;; cn-shanghai-finance-1) echo "arms-dc-sh-finance.aliyuncs.com|arms-dc-sh-finance-internal.aliyuncs.com|cn-shanghai-finance-1.arms.aliyuncs.com|cn-shanghai-finance-1-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-cn-shanghai-finance-1-internal.edas.aliyun.com" ;; cn-shenzhen-finance-1) echo "arms-dc-sz-finance.aliyuncs.com|arms-dc-sz-finance-internal.aliyuncs.com|cn-shenzhen-finance-1.arms.aliyuncs.com|cn-shenzhen-finance-1-intranet.arms.aliyuncs.com|acm.aliyun.com|addr-sz-internal.jbp.console.aliyun.com" ;; *) return 1 ;; esac } echo "地區:${REGION_ID}" echo echo "預設CloudMonitor工作空間(原 ARMS 上報鏈路)" DEFAULT_ENDPOINTS=$(get_default_endpoints "${REGION_ID}" || true) if [ -n "${DEFAULT_ENDPOINTS}" ]; then IFS='|' read -r TRACE_PUBLIC TRACE_PRIVATE METRIC_PUBLIC METRIC_PRIVATE ACM_PUBLIC ACM_PRIVATE <<EOF ${DEFAULT_ENDPOINTS} EOF check_http "公網調用鏈與中繼資料存取點" "http://${TRACE_PUBLIC}/api/checkHealth" check_http "內網調用鏈與中繼資料存取點" "http://${TRACE_PRIVATE}/api/checkHealth" check_http "公網中繼資料存取點(9990)" "http://${TRACE_PUBLIC}:9990/api/checkHealth" check_http "內網中繼資料存取點(9990)" "http://${TRACE_PRIVATE}:9990/api/checkHealth" check_http "公網指標存取點" "http://${METRIC_PUBLIC}/health/readiness" check_http "內網指標存取點" "http://${METRIC_PRIVATE}/health/readiness" check_http "公網 ACM 服務(8080)" "http://${ACM_PUBLIC}:8080/diamond-server/diamond" if [ "${ACM_PRIVATE}" != "-" ]; then check_http "內網 ACM 服務(8080)" "http://${ACM_PRIVATE}:8080/diamond-server/diamond" else echo "當前地區未提供內網 ACM 服務,請確保公網 ACM 可連通。" fi check_tcp "公網應用診斷連接埠(9092)" "${TRACE_PUBLIC}" 9092 check_tcp "內網應用診斷連接埠(9092)" "${TRACE_PRIVATE}" 9092 check_tcp "公網應用安全連接埠(9093)" "${TRACE_PUBLIC}" 9093 check_tcp "內網應用安全連接埠(9093)" "${TRACE_PRIVATE}" 9093 else echo "當前地區沒有預設CloudMonitor工作空間存取點配置。" fi echo echo "非預設CloudMonitor工作空間(SLS 上報鏈路)" check_http "SLS 公網服務入口 /health" "http://${REGION_ID}.log.aliyuncs.com/health" check_http "SLS 私網服務入口 /health" "http://${REGION_ID}-intranet.log.aliyuncs.com/health"添加執行許可權並運行指令碼:
chmod +x check_network.sh ./check_network.sh ${region_id}${region_id}為工作空間所在地區 ID,例如cn-hangzhou。不傳入該參數時,指令碼會嘗試從當前 ECS 執行個體的中繼資料中擷取地區 ID。指令碼同時檢查預設CloudMonitor工作空間的原 ARMS 上報鏈路,以及非預設CloudMonitor工作空間的 SLS 公網、私網服務入口。公網或私網中至少應有一條與實際部署網路匹配的鏈路可連通。