記一次 lambda 使用 EFS 錯誤

更新於 發佈於 閱讀時間約 1 分鐘
最近公司寫的系統要上線 , EFS 的存取點套用開發時設定出問題
背景是這樣的
開發 : 存取點 path 設 /xxx , 使用者和群組 id 設 1000 , 目錄使用者和群組 id 也設 1000 , 權限開 0600 (owner 可讀可寫)
上線 : 設定如同開發
神奇的事情出現了 , 開發的EFS 可以正常讀寫 , 上線的卻遇到 open file 有 permission denied
為什麼?

經過今天跟網管一起實驗 , 終於知道為什麼了
直接說重點 , 在 aws console 設定存取點 , 不太會更動到 EFS 上的目錄 , 即使存取點有設目錄
一個例子體現這點是新增存取點 , 然後刪除 , 接著開 EC2 的機器 mount EFS
在掛載目錄下 ls , 可以看到之前建的存取點產生的目錄
新增存取點設同樣的目錄也一樣 , cosole 不會先刪除之前建的目錄再新增
回到開頭的情況 , 0600 是無法被 mount 的 , 所以 lmabda open file 會有問題
那開發怎麼沒問題?
是因為先前建立的存取點 , path 設 /xxx , 目錄權限設 0777
刪除後 , 再新開存取點 , path 設一樣 , 目錄權限設 0600
記得之前講的嗎?
存取點不太影響 EFS , 所以此時新存取點的 path , 目錄權限是 0777
所以才造成開發的存取點讀寫檔案沒問題

結論

EFS 設定存取點有問題時 , 不彷實際 mount 看看 , aws console 不太會去處理 EFS 上的東西 , 有時要開主機 mount 起來處理以前的設定
avatar-img
3會員
11內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
proof.K的沙龍 的其他內容
網路上有許多解釋雙花(double-spending)攻擊的文章 可是個人認為都不夠全面 , 所以來談談這問題各個面向 雙花的過程 假設有賣家 A , B 攻擊者 C 攻擊者 C 先向賣家 A 買東西 等共識機制讓 C 轉帳 A 的交易確認後 攻擊者 C 發動攻擊 , 讓 C 轉帳 A
會想談這個是因為就連在產業裡做的人 , 也會有奇怪的理解 blockchain網路與分散式網路的不同 從技術上來講 , 沒有不同  甚至 blockchain 技術還要更深 , 因為要解決拜占庭問題 但從產權 , 所有權的角度看 就有很大的不同 , 而這不同對在blockchain上的應用是巨大
udn 的新聞標題 : 五大電信業 不看好5G商機 這讓我想到以前看的一篇文章 :  twicic : 電信業者不想被偷走的晚餐— 台灣電子業今天看什麼? 20160928 一篇是 2016 年的
10月初去參加Meyou的路演 Meyou做什麼 , google 就有了  所以不多說 會後跟相關的網紅聊了一下 第一句問Meyou跟其他直播平台有什麼差別? 對方回答沒有差別 , 跟心中期望的有點
为什么在以太坊上构建项目注定会失败?!: E 上面這篇已經把有獎勵機制的DLT問題講得很清楚了 只能說獎勵機制是兩難 運行帳本需要 server , 開 server 需要電 , 電要錢 所以有獎勵
上週Coscup在kernel的BoF前 , 與社群友人聊到供應鏈或物流使用blockchain的新聞 誤解 看新聞都會提到blockchain的不可篡改可以用在物流追蹤或供應鏈管理 是的 , 沒錯
網路上有許多解釋雙花(double-spending)攻擊的文章 可是個人認為都不夠全面 , 所以來談談這問題各個面向 雙花的過程 假設有賣家 A , B 攻擊者 C 攻擊者 C 先向賣家 A 買東西 等共識機制讓 C 轉帳 A 的交易確認後 攻擊者 C 發動攻擊 , 讓 C 轉帳 A
會想談這個是因為就連在產業裡做的人 , 也會有奇怪的理解 blockchain網路與分散式網路的不同 從技術上來講 , 沒有不同  甚至 blockchain 技術還要更深 , 因為要解決拜占庭問題 但從產權 , 所有權的角度看 就有很大的不同 , 而這不同對在blockchain上的應用是巨大
udn 的新聞標題 : 五大電信業 不看好5G商機 這讓我想到以前看的一篇文章 :  twicic : 電信業者不想被偷走的晚餐— 台灣電子業今天看什麼? 20160928 一篇是 2016 年的
10月初去參加Meyou的路演 Meyou做什麼 , google 就有了  所以不多說 會後跟相關的網紅聊了一下 第一句問Meyou跟其他直播平台有什麼差別? 對方回答沒有差別 , 跟心中期望的有點
为什么在以太坊上构建项目注定会失败?!: E 上面這篇已經把有獎勵機制的DLT問題講得很清楚了 只能說獎勵機制是兩難 運行帳本需要 server , 開 server 需要電 , 電要錢 所以有獎勵
上週Coscup在kernel的BoF前 , 與社群友人聊到供應鏈或物流使用blockchain的新聞 誤解 看新聞都會提到blockchain的不可篡改可以用在物流追蹤或供應鏈管理 是的 , 沒錯
你可能也想看
Google News 追蹤
Thumbnail
/ 大家現在出門買東西還會帶錢包嗎 鴨鴨發現自己好像快一個禮拜沒帶錢包出門 還是可以天天買滿買好回家(? 因此為了記錄手機消費跟各種紅利優惠 鴨鴨都會特別注意銀行的App好不好用! 像是介面設計就是會很在意的地方 很多銀行通常會為了要滿足不同客群 會推出很多App讓使用者下載 每次
Thumbnail
我們在「【Message Queue - Kafka】不斷的試誤…, 用Docker來嘗試安裝Kafka」有介紹如何架設kafka, 其中我們使用環境變數來進行kafka的配置, 但除了環境變數之外, 其實還能夠用檔案配置的方式來對kafka進行配置, 如此一來我們就可以將配置檔與啟動檔完全分開,
遇到問題: root@b10000ea1f5b:/app/backend# ollama run phi3:14b pulling manifest pulling 7a3cc4804c64... 98% ▕███████████████████████████████████████ ▏
儲存庫 (Repository) 是檔案(File)的儲存區域。 在版本控制中,儲存庫是包含所有檔案的資料夾[1]。 每次改動檔案,你都可以選擇要不要儲存。 而那些有被處存的改動,就被稱為「提交 Commit」[2]。 而當一個儲存庫有多個開發者(Developer)在貢獻,
Thumbnail
在讀取檔案時,最怕路徑的問題,常常會有路徑錯誤造成的異常報錯。 為了避免諸如此類的問題發生,明白程式的當前目錄與檔案的路徑是很重要的。 可以利用os 模組是 Python 中的一個標準庫,提供了許多與操作系統的功能。 以下是一些常用的 os 模組基本操作及其範例: 1. os.getcwd
本篇文章將介紹如何使用Lambda建立Pre-Sign URL 的簡單範例,讓讀者瞭解如何自行發揮。
Thumbnail
讀取ini配置文件時如果某個參數不存在,它就會報錯,要怎麼避免呢? 可以使用fallback 參數來指定預設值。 這樣即使配置文件中缺少一些參數,我們的程序也能正常運行並使用預設值。 讓我們來假設一個案例做說明: 先故意將先前範例的port的資料刪掉。
Thumbnail
實踐AWS中使用Lambda來負責登入簽核及與OpenAI API溝通,並利用S3容器託管一個靜態網頁做為前端
Thumbnail
實驗目的:Lambda@Edge (L@E) 讓 CLoudFront (CF) 回源時,自動選擇較近的 S3 region 回源
Thumbnail
工作上需要使用到LDAP,但因為公司提供的Server不便,因此在本機建立LDAP伺服器和使用者是一個解決方案。本文記錄了安裝ApacheDS和Apache Directory Studio,以及建立連線、使用者和組織的步驟。
Thumbnail
在沒有分環境之前,每一隻lambda只有一個code console給所有人一起編輯,開發好了就deploy,根據設定的trigger觸發執行。 現在我們希望能夠在code console開發,然後deploy到不同的stage,目標是不同stage的api gateway能夠調用該lambda的
Thumbnail
/ 大家現在出門買東西還會帶錢包嗎 鴨鴨發現自己好像快一個禮拜沒帶錢包出門 還是可以天天買滿買好回家(? 因此為了記錄手機消費跟各種紅利優惠 鴨鴨都會特別注意銀行的App好不好用! 像是介面設計就是會很在意的地方 很多銀行通常會為了要滿足不同客群 會推出很多App讓使用者下載 每次
Thumbnail
我們在「【Message Queue - Kafka】不斷的試誤…, 用Docker來嘗試安裝Kafka」有介紹如何架設kafka, 其中我們使用環境變數來進行kafka的配置, 但除了環境變數之外, 其實還能夠用檔案配置的方式來對kafka進行配置, 如此一來我們就可以將配置檔與啟動檔完全分開,
遇到問題: root@b10000ea1f5b:/app/backend# ollama run phi3:14b pulling manifest pulling 7a3cc4804c64... 98% ▕███████████████████████████████████████ ▏
儲存庫 (Repository) 是檔案(File)的儲存區域。 在版本控制中,儲存庫是包含所有檔案的資料夾[1]。 每次改動檔案,你都可以選擇要不要儲存。 而那些有被處存的改動,就被稱為「提交 Commit」[2]。 而當一個儲存庫有多個開發者(Developer)在貢獻,
Thumbnail
在讀取檔案時,最怕路徑的問題,常常會有路徑錯誤造成的異常報錯。 為了避免諸如此類的問題發生,明白程式的當前目錄與檔案的路徑是很重要的。 可以利用os 模組是 Python 中的一個標準庫,提供了許多與操作系統的功能。 以下是一些常用的 os 模組基本操作及其範例: 1. os.getcwd
本篇文章將介紹如何使用Lambda建立Pre-Sign URL 的簡單範例,讓讀者瞭解如何自行發揮。
Thumbnail
讀取ini配置文件時如果某個參數不存在,它就會報錯,要怎麼避免呢? 可以使用fallback 參數來指定預設值。 這樣即使配置文件中缺少一些參數,我們的程序也能正常運行並使用預設值。 讓我們來假設一個案例做說明: 先故意將先前範例的port的資料刪掉。
Thumbnail
實踐AWS中使用Lambda來負責登入簽核及與OpenAI API溝通,並利用S3容器託管一個靜態網頁做為前端
Thumbnail
實驗目的:Lambda@Edge (L@E) 讓 CLoudFront (CF) 回源時,自動選擇較近的 S3 region 回源
Thumbnail
工作上需要使用到LDAP,但因為公司提供的Server不便,因此在本機建立LDAP伺服器和使用者是一個解決方案。本文記錄了安裝ApacheDS和Apache Directory Studio,以及建立連線、使用者和組織的步驟。
Thumbnail
在沒有分環境之前,每一隻lambda只有一個code console給所有人一起編輯,開發好了就deploy,根據設定的trigger觸發執行。 現在我們希望能夠在code console開發,然後deploy到不同的stage,目標是不同stage的api gateway能夠調用該lambda的