日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用Webshell診斷應用

SAE容器提供了臨時的應用運行環境,通常無需運維。為了方便定位和排查線上問題,您可以使用SAE控制臺提供的簡易版Webshell,查看并調試容器。SAE容器的基礎鏡像是面向應用運行時的且暫時狀態的,因此您無需在鏡像中啟動SSH服務,僅需帶有可執行的/bin/bash,同時建議您帶上所需的運維工具以便排查。

使用限制

Webshell不支持Windows鏡像。

應用的網絡環境

SAE應用置于自建的VPC網絡,并提供了命名空間功能,可以將中間件層面的服務調用進行邏輯隔離。命名空間與VPC內的vSwitch為綁定關系,一個命名空間僅能對應一個vSwitch,一個vSwitch可以對應多個命名空間,即VPC內的IP地址為局域網地址,不同VPC內的應用無法互相訪問。命名空間主要用于中間件邏輯隔離,不同命名空間內的應用在中間件層面是隔離的,如服務發現和配置下發等。

說明

關于VPC的原理和產品介紹,請參見產品架構

鑒于VPC的產品特性和當前SAE的產品特性,容器無法直接觸達VPC外的服務(OSS、鏡像服務等阿里云產品除外)。在沒有額外配置的情況下,您的容器單獨運行在網絡環境,因此您無法直接接觸SAE應用容器。

容器無法觸達公網的代碼示例如下。

容器無法觸達公網的代碼示例

容器內如果需要訪問公網服務,須購買NAT,并在VPC內配置vSwitch的SNAT規則。具體操作,請參見配置NAT網關使SAE應用能訪問公網

SNAT規則通過配置SNAT條目,可以實現VPC內無公網IP的實例通過NAT網關綁定的EIP來訪問公網,從而能夠調用公網類產品,獲取公網資源。更多信息,請參見公網類產品

構建鏡像的方法

基于阿里云容器鏡像服務,SAE集成了構建鏡像和管理鏡像的功能。用于構建的基礎鏡像為centos:7,并為您配置了語言與編碼方式、時區和OpenJDK等運行環境。

容器存在的目的是為了讓應用運行起來,SAE不可能以占用所有用戶的運行資源為代價,集成過多的工具。因此,若您對容器內工具有更多需求,請自行構建鏡像或者按需從OSS獲取。更多信息,請參見制作Java鏡像

查看Webshell

使用Webshell完成基本運維的操作步驟如下:

  1. 登錄SAE控制臺

  2. 在左側導航欄,選擇應用管理 > 應用列表,在頂部菜單欄選擇地域,然后單擊具體應用名稱。

  3. 在應用基本信息頁面,單擊實例部署信息頁簽。

  4. 實例部署信息頁簽的默認分組區域,單擊目標實例操作列的Webshell

    webshell

  5. 可選:打開Webshell后,您可以單擊窗口右上角的bt_full_screen圖標,全屏顯示窗口。

  6. 按需在Webshell窗口執行命令,查看并調試您的容器。

    更多信息,請參見獲取實例內部元數據診斷應用

獲取實例內部元數據

您通過SAE成功部署應用后,即可獲取實例的基本元數據,包括安全組ID、VPC ID和vSwitch ID。

實例元數據項

說明

/etc/podinfo/sgId

安全組ID元數據所在的路徑。

/etc/podinfo/vpcId

VPC ID元數據所在的路徑。

/etc/podinfo/vswitchId

vSwitch ID元數據所在的路徑。

說明

如果有多個vSwitch,將以半角逗號(,)分隔開多個vSwitch ID。

您可以登錄SAE控制臺,在Webshell窗口執行以下命令,驗證安全組ID、VPC ID和vSwitch ID的元數據信息。

  1. 執行以下命令,進入podinfo目錄內。

    cd /etc/podinfo/
    說明

    如果執行該命令時顯示can't cd to /etc/podinfo/報錯,您可以選擇重啟實例或重新部署應用解決該問題。

  2. 執行以下命令,查看實例元數據信息的所有文件。

    ls

    預期輸出。

    sgId  vpcId  vswitchId
  3. 按需執行以下命令,驗證實例內部相應的元數據信息。

    • 獲取安全組ID。

      cat sgId

      預期輸出。

      sg-2ze4ddm2rqgenvcx****sh-4.2#
    • 獲取VPC ID。

      cat vpcId

      預期輸出。

      vpc-2zeqku2oevokwm66b****sh-4.2#
    • 獲取vSwitch ID。

      cat vswitchId

      預期輸出。

      vsw-2zewmy4ynhljytzhu****sh-4.2#

一鍵復制安裝命令

您可以登錄SAE控制臺,在Webshell窗口按照以下步驟按需安裝命令。

說明

在Webshell中安裝的命令,會在下次容器重建后消失。對于常用的命令,建議您在制作鏡像時提前安裝。

  1. 單擊Webshell窗口右上角的bt_copy_code圖標。

  2. 在彈出的一鍵復制安裝命令對話框內,按需選擇以下安裝組件,預覽命令并單擊復制

    • 安裝openssh:OpenSSH是SSH(Secure Shell)協議的免費開源實現,OpenSSH提供了服務端后臺程序和客戶端工具,用來加密遠程控制和文件傳輸過程中的數據。您可以通過安裝OpenSSH,借助遠程調試的能力實現SSH遠程登錄以及SFTP、SCP上傳下載文件的功能,進而方便您臨時調試SAE的某個應用實例。

    • 安裝net-tools(netstat)netstat命令用于監控網絡狀態,可以顯示路由表、實際的網絡連接以及每一個網絡接口設備的狀態信息。

    • 安裝iproute(ss):Socket Statistics(ss)命令用于獲取Socket統計信息,雖然與netstat命令獲取的內容類似,但是ss命令能夠快速顯示更詳細的有關TCP和連接狀態的信息。

  3. 在Webshell窗口粘貼已復制的命令并回車執行。

診斷應用

通過常規檢查診斷應用

診斷SAE應用包括常規檢查和上傳下載搜集的日志兩種方式。其中,常規檢查方法眾多。以Java應用為例,有進程檢查、線程以及JVM的健康狀態檢查。操作示例如下。

  • 執行以下命令,檢查應用的Java進程是否存在。

    ps -ef | grep java
    說明

    容器內通常使用主進程啟動應用,如果應用被停止,則容器也會退出,SAE自動將退出的容器重新啟動,防止業務中斷。

    • 如果進程不存在,請執行dmesg | grep -i kill命令檢查OOM日志。

    • 如果日志存在,表示應用的進程被停止,需要檢查工作目錄下hs_err_pid{PID}.log日志文件,并定位具體原因。

  • Java類型應用在線分析還可以使用阿里巴巴開源軟件Arthas,建議在測試鏡像中集成Arthas工具進行常規診斷。Arthas能夠實時查看Java類加載情況,方便觀察方法出參、入參和環境變量等。

    1. 連接公網。

      具體操作,請參見配置NAT網關使SAE應用能訪問公網

    2. 執行以下命令,下載Arthas。

      sudo wget https://alibaba.github.io/arthas/arthas-boot.jar
    3. 執行以下命令,運行Arthas。

      sudo java -jar arthas-boot.jar

通過日志上傳下載診斷應用

如果常規檢查不能滿足您的需求,推薦您將容器內收集到的日志上傳到云端,并下載到本地進行分析。

  • 文件不超過10 MB:您可以直接使用Webshell內置的功能。具體操作,請參見使用Webshell實現文件上傳下載

  • 文件超過10 MB:您可以使用阿里云OSS服務。OSS服務連通阿里云下所有網絡環境,因此您可以使用該服務進行日志上傳下載,具體操作步驟如下。

  1. 在容器內部安裝OSS命令行工具。具體操作,請參見安裝OSS命令行工具

    本文中以64位CentOS系統的用戶為例,在沒有打通公網的情況下您可以選擇在本地下載,然后將這個文件上傳到OSS,然后獲取OSS的VPC內網地址并下載文件。

    1. 執行以下命令,下載ossutil。

      sudo wget http://gosspublic.alicdn.com/ossutil/1.5.0/ossutil64
    2. 執行以下命令,修改文件執行權限。

      sudo chmod 755 ossutil64
  2. 配置所需的OSS命令行工具,并附上當前地域VPC內的Endpoint,填寫用于接收上傳文件的賬號的AccessKey,查看已經創建的Bucket,檢查您的OSS服務是否可用。

    說明
    • 請確保您的阿里云賬號(不必是當前賬號,任意開通阿里云OSS服務的賬號均可)已開通OSS服務。

    • 創建Bucket。具體操作,請參見控制臺創建存儲空間

    1. 執行以下命令,創建配置文件,用于存儲OSS訪問信息。

      按照提示配置您的AccessKey、Endpoint信息,無需填寫STS Token。

      ./ossutil64 config  
    2. 執行以下命令,列舉所有Bucket。

      檢查賬號是否可用,如果報錯則配置錯誤。

      ./ossutil64 ls

      輸出示例如下:

      CreationTime                                 Region    StorageClass    BucketName
      2021-12-08 18:53:46 +0800 CST       oss-cn-hangzhou        Standard    oss://test-bucket
    3. 執行以下命令,創建一個用于上傳的模擬日志文件sae-app.log

      echo "Hello" > sae-app.log
    4. 執行以下命令,上傳日志文件至指定的Bucket。

      ./ossutil64 cp sae-app.log {bucket-address}                                       

      示例代碼如下:

      ./ossutil64 cp sae-app.log oss://test-bucket
  3. 結果驗證。

    • 方式一:執行以下命令,查看已上傳的示例文件。

      ./ossutil64 ls oss://test-bucket

      輸出示例如下:

      LastModifiedTime                   Size(B)  StorageClass   ETAG                                  ObjectName
      2021-12-08 19:26:18 +0800 CST            6      Standard   09F7E02F1290BE211DA707A266F1****      oss://cri-55md3gmii09m****-chart/sae-app.log
      Object Number is: 1
      0.047758(s) elapsed
    • 方式二:從OSS管理控制臺或其他工具中找到您的日志文件,下載到本地,并使用您熟悉的工具進行分析。