本文介紹了不同發行平台的阿里雲鏡像的已知故障、故障涉及範圍以及解決方案。
Debian 9.6:傳統網路配置問題
- 問題描述:無法Ping通使用Debian 9公用鏡像建立的傳統網路類型執行個體。
- 問題原因:因為Debian系統預設禁用了systemd-networkd服務,傳統網路類型執行個體無法通過DHCP(Dynamic Host Configuration Protocol)模式自動分配IP。
- 涉及鏡像ID:debian_9_06_64_20G_alibase_20181212.vhd。
- 修複方案:您需要運行下列命令解決該問題。
systemctl enable systemd-networkd systemctl start systemd-networkd
CentOS 6.8:裝有NFS Client的執行個體異常崩潰的問題
- 問題描述:載入了NFS用戶端(NFS Client)的CentOS 6.8執行個體出現超長等待狀態,只能通過重啟執行個體解決該問題。
- 問題原因:在2.6.32-696 ~ 2.6.32-696.10的核心版本上使用NFS服務時,如果通訊延遲出現毛刺(glitch,電子脈衝),核心nfsclient會主動斷開TCP串連。若NFS服務端(Server)響應慢,nfsclient發起的串連可能會卡頓在FIN_WAIT2狀態。正常情況下,FIN_WAIT2狀態的串連預設在一分鐘後逾時並被回收,nfsclient可以發起重連。但是,由於此類核心版本的TCP實現有缺陷,FIN_WAIT2狀態的串連永遠不會逾時,因此nfsclient的TCP串連永遠無法關閉,無法發起新的串連,造成使用者請求卡死(hang死),永遠無法恢複,只能通過重啟ECS執行個體進行修複。
- 涉及鏡像ID:centos_6_08_32_40G_alibase_20170710.vhd和centos_6_08_64_20G_alibase_20170824.vhd。
- 修複方案:您可以升級核心至2.6.32-696.11及以上版本。
yum update
说明 操作執行個體時,請確保您已經提前建立了快照備份資料。
CentOS 7:重啟系統後主機名稱大寫字母被修改
- 問題描述:第一次重啟ECS執行個體後,部分CentOS 7執行個體的主機名稱(hostname)存在大寫字母變成小寫字母的現象,如下表所示。
執行個體hostname樣本 第一次重啟後樣本 後續是否保持小寫不變 iZm5e1qe*****sxx1ps5zX izm5e1qe*****sxx1ps5zx 是 ZZHost zzhost 是 NetworkNode networknode 是 - 涉及鏡像:以下CentOS公用鏡像,和基於以下公用鏡像建立的自訂鏡像。
- centos_7_2_64_40G_base_20170222.vhd
- centos_7_3_64_40G_base_20170322.vhd
- centos_7_03_64_40G_alibase_20170503.vhd
- centos_7_03_64_40G_alibase_20170523.vhd
- centos_7_03_64_40G_alibase_20170625.vhd
- centos_7_03_64_40G_alibase_20170710.vhd
- centos_7_02_64_20G_alibase_20170818.vhd
- centos_7_03_64_20G_alibase_20170818.vhd
- centos_7_04_64_20G_alibase_201701015.vhd
- 涉及Hostname類型:如果您的應用有hostname大小寫敏感現象,重啟執行個體後會影響業務。您可根據下面的修複方案修複以下類型的hostname。
hostname類型 是否受影響 何時受影響 是否繼續閱讀文檔 在控制台或通過API建立執行個體時,hostname中有大寫字母 是 第一次重啟執行個體 是 在控制台或通過API建立執行個體時,hostname中全是小寫字母 否 不適用 否 hostname中有大寫字母,您登入執行個體後自行修改了hostname 否 不適用 是 - 修複方案:如果重啟執行個體後需要保留帶大寫字母的hostname時,可按如下步驟操作:
- 遠端連線執行個體。
- 查看現有的hostname。
[root@izbp193*****3i161uynzzx ~]# hostname izbp193*****3i161uynzzx
- 運行以下命令固化hostname。
hostnamectl set-hostname --static iZbp193*****3i161uynzzX
- 運行以下命令查看更新後的hostname。
[root@izbp193*****3i161uynzzx ~]# hostname iZbp193*****3i161uynzzX
- 下一步:如果您使用的是自訂鏡像,請更新cloud-init軟體至最新版本後,再次建立自訂鏡像。避免使用存在該問題的自訂鏡像建立新執行個體後發生同樣的問題。更多詳情,請參見安裝cloud-init和使用執行個體建立自訂鏡像。
Linux:pip操作時的逾時問題
- 問題描述:pip請求偶有逾時或失敗現象。
- 涉及鏡像:CentOS、Debian、Ubuntu、SUSE、OpenSUSE、Aliyun Linux
- 原因分析:阿里雲提供了以下三個pip源地址。其中,預設訪問地址為mirrors.aliyun.com,訪問該地址的執行個體需能訪問公網。當您的執行個體未分配公網IP時,會出現pip請求逾時故障。
- (預設)公網:mirrors.aliyun.com
- Virtual Private Cloud內網:mirrors.cloud.aliyuncs.com
- 傳統網路內網:mirrors.aliyuncs.com
- 修複方案:您可採用以下任一方法解決該問題。
- 方法一
為您的執行個體分配公網IP,即為執行個體綁定一個Elastic IP Address(EIP),詳情請參見綁定彈性網卡。
預付費執行個體還可通過升降配重新分配公網IP,詳情請參見預付費執行個體升級配置。
- 方法二
一旦出現pip響應延遲的情況,您可在ECS執行個體中運行指令碼fix_pypi.sh,然後再重試pip操作。具體步驟如下:
- 遠端連線執行個體。詳情請參見使用管理終端串連 ECS 執行個體。
- 運行以下命令擷取指令檔。
wget http://image-offline.oss-cn-hangzhou.aliyuncs.com/fix/fix_pypi.sh
- 運行指令碼。
- Virtual Private Cloud執行個體:運行命令
bash fix_pypi.sh "mirrors.cloud.aliyuncs.com"
。 - 傳統網路執行個體:運行命令
bash fix_pypi.sh "mirrors.aliyuncs.com"
。
- Virtual Private Cloud執行個體:運行命令
- 重試pip操作。
fix_pypi.sh指令碼內容如下:#!/bin/bash function config_pip() { pypi_source=$1 if [[ ! -f ~/.pydistutils.cfg ]]; then cat > ~/.pydistutils.cfg << EOF [easy_install] index-url=http://$pypi_source/pypi/simple/ EOF else sed -i “s#index-url.#index-url=http://$pypi_source/pypi/simple/#“ ~/.pydistutils.cfg fi if [[ ! -f ~/.pip/pip.conf ]]; then mkdir -p ~/.pip cat > ~/.pip/pip.conf << EOF [global] index-url=http://$pypi_source/pypi/simple/ [install] trusted-host=$pypi_source EOF else sed -i “s#index-url.#index-url=http://$pypi_source/pypi/simple/#“ ~/.pip/pip.conf sed -i “s#trusted-host.*#trusted-host=$pypi_source#” ~/.pip/pip.conf fi } config_pip $1
- 方法一
Aliyun Linux 2:開啟核心選項CONFIG_PARAVIRT_SPINLOCK可能導致效能問題
- 問題描述:開啟核心選項
CONFIG_PARAVIRT_SPINLOCK
後,當ECS執行個體vCPU數量較多,且應用中有大量鎖競爭操作時,應用效能會受到較大影響(例如, Nginx應用的短串連處理能力會因此大幅下降),您可能會在應用中觀察到效能下降的問題。 - 涉及鏡像:Aliyun Linux 2
- 修複方案:核心選項
CONFIG_PARAVIRT_SPINLOCK
在Aliyun Linux 2上預設處於關閉狀態。如果您不確定如何處理核心問題,請勿開啟CONFIG_PARAVIRT_SPINLOCK
。
Aliyun Linux 2:核心特性透明大頁THP開關置為always可能會導致系統不穩定或效能下降
- 問題描述:在您的生產環境系統中,將透明大頁THP(Transparent Hugepage)開關置為
always
,可能會引發系統不穩定和效能下降等問題。 - 涉及鏡像:Aliyun Linux 2
- 修複方案:在Aliyun Linux2中,核心特性
透明大頁(Transparent Hugepage, THP)
開關已預設置為madvise
。雖然在某些特殊情境下,例如運行一些效能基準測試套件時,開關置為madvise
時,相對開關置為always
時效能表現較差。但此類效能基準測試情境的測試結果不具備通用參考性。因此,除非您對THP有較為深入的理解,為了避免對系統造成其他競爭影響,建議您保持madvise
選項不變。
Aliyun Linux 2:NFS v4.0版本中委託(Delegation)功能可能存在問題
- 問題描述:NFS委託(Delegation)功能在v4.0版本中可能存在問題。詳情請參見NFS委託功能v4.0版本。
- 涉及鏡像:Aliyun Linux 2
- 修複方案:使用NFS v4.0版本時,建議您不要開啟Delegation功能。如需從伺服器端關閉該功能,請參見社區文檔。
Aliyun Linux 2:NFS v4.1/4.2版本中存在缺陷可能導致應用程式無法退出
- 問題描述:在NFS的v4.1和v4.2版本中,如果您在程式中使用非同步I/O(AIO)方式下發請求,且在所有I/O返回之前關閉對應的檔案描述符,有一定幾率觸發活鎖,導致對應進程無法退出。
- 涉及鏡像:Aliyun Linux 2
- 修複方案:該問題已在核心4.19.30-10.al7及以上版本中修複。由於該問題出現機率極低,您可根據實際需要決定是否升級核心修複該問題。如需修複,請在終端執行
sudo yum update kernel -y
命令,升級完成後重啟系統即可。注意- 升級核心版本可能會導致系統無法開機等風險,請謹慎操作。
- 升級核心前,請確保您已建立快照或自訂鏡像備份資料。詳情請參見建立快照或使用執行個體建立自訂鏡像。
Aliyun Linux 2:Meltdown/Spectre漏洞修複會影響系統效能
- 問題描述:Aliyun Linux 2核心中,預設開啟了針對處理器硬體高危安全性漏洞Meltdown和Spectre的修複功能。由於此修複功能會影響系統效能,因此在常見的效能基準套件測試中,可能會觀察到不同程度的效能下降現象。
- 涉及鏡像:Aliyun Linux 2
- 修複方案:Meltdown和Spectre是英特爾晶片中發現的兩個高危漏洞,攻擊者可通過這兩個漏洞來訪問核心記憶體,從而竊取應用程式中的敏感資訊,因此,建議您不要在系統中關閉此類高危漏洞的修複功能。但如果您對系統效能有極高要求,可運行以下命令關閉該修複功能:
#追加nopti nospectre_v2到核心啟動參數中 sudo sed -i 's/\(GRUB_CMDLINE_LINUX=".*\)"/\1 nopti nospectre_v2"/' /etc/default/grub sudo grub2-mkconfig -o /boot/grub2/grub.cfg #重啟系統 sudo reboot