我正在嘗試發(fā)現(xiàn)當(dāng)前執(zhí)行的 AWS Lambda 的 VPC IP 地址或 AWS ENI,以便我可以使用 IP 地址過濾 VPC 日志以查找匹配記錄。Lambda 在 VPC 中運行并且沒有公共 IP 地址。我嘗試了這里建議的各種技術(shù):使用 Python 的 stdlib 查找本地 IP 地址但這些對我不起作用,因為我認(rèn)為它們是從容器的角度而不是 VPC 的角度顯示容器的 IP 地址。
2 回答

夢里花落0921
TA貢獻(xiàn)1772條經(jīng)驗 獲得超6個贊
我們對此的解決方案是在 VPC 中生成一個私有 API,并帶有一個模擬響應(yīng),它將告訴您調(diào)用的私有 IP 地址。然后根據(jù)該私有 IP 查詢 EC2 DescribeNetworkInterfaces api。
由于這很耗時,我們只在冷啟動時運行它,而不是在每次 lambda 運行時運行。

森欄
TA貢獻(xiàn)1810條經(jīng)驗 獲得超5個贊
部分答案是在創(chuàng)建 lambda 時而不是每次運行時設(shè)置 ENI。似乎,但我不確定,運行具有相同安全組的相同 VPC 的 lambda 共享相同的 ENI。所以,嚴(yán)格來說,我不需要在運行時從 lambda 本身的代碼中發(fā)現(xiàn) IP 地址。相反,我可以檢查網(wǎng)絡(luò)接口控制臺以發(fā)現(xiàn) lambda ENI 并將其用于我的過濾目的(當(dāng)然,前提是沒有來自同一網(wǎng)絡(luò)接口上運行的其他 lambda 的太多流量)。
添加回答
舉報
0/150
提交
取消