將現有資源納入 Terraform 的管理

隨著 DevOps 概念的普及,越來越多公司都開始使用 IaC (Infrastructure as Code) 工具來管理他們日益漸多的基礎建設資源。小弟我在工作上也很常使用 Terraform 這個 IaC 工具來管理雲端資源。理由無它,不論是建立資...

在 Linux 中建立記憶體硬碟

記憶體硬碟 (RAM Disk) 相較於傳統機械硬碟或是固態硬碟,可以提供更快的讀寫速度。即使是已經過時很久的 DDR3 記憶體,也能提供 2000 MB/s 以上的讀寫速度。但擁有飛快讀寫速度的代價,就是資料無法永久保存,只要...

降低分布式網路的管理複雜度,簡單介紹 VXLAN

最近工作上碰到一個專案要使用 VXLAN 來做 BGP (Border Gateway Protocol) 通訊,藉此完成路由訊息的交換。因為網路相關內容一直都是我的罩門,剛好可以藉此機會來了解一下什麼是 VXLAN。LAN 的演進在介紹 VXLAN 之...

如何使用 IAM Role 進行跨帳號的資源存取

如果你想要讓別人能夠存取你 AWS 帳號上的資源,最安全的做法,就是新增一個 IAM Role,並透過 Assume Role 的方式,將這個 Role 賦予給對方。對方可以透過 STS (Security Token Service) 來取得這個 Role 的暫時性...

來當資安研究員,Joomla 的 XSS 漏洞研究

前陣子,在全世界 CMS (Content Management System) 市場擁有 2% 市占率的 Joomla 被發現含有 XSS (Cross-Site Scripting) 漏洞。 造成這個漏洞的原因並非是 Joomla 的程式邏輯有什麼問題,而是 PHP 本身提供的函式...

我不想維護伺服器啦!分享怎麼將 Laravel 部署至 AWS Lambda

文中使用到的 PlanetScale 資料庫服務,在 3 月 7 號發了一篇文章宣布 4 月 8 號後不再提供免費服務。🥲可以考慮使用 Neon 這個提供 Serverless PostgreSQL 的服務。假設你今天寫了一個網站,想要放到網路上讓其他人...

在 GitHub Action 中使用 OIDC 取得操作 AWS 資源的權限

如果想要在 GitHub Action 中取得操作 AWS 資源的權限,最簡單的做法,就是建立一個 IAM User 並產生與之對應的 Secret Key,再將 Secret Key 儲存在 Action Secrets 中。這樣我們就可以在工作流程中透過 secrets 取...

共用相同的 Workflow,簡單介紹 Action Composition

GitHub Action 是一個很方便的 CI/CD 工具,你可以用它來自動化程式部署前的多項任務,例如測試、靜態分析和排版檢查。但如果任務太多,用來描述 CI/CD 流程的定義檔案可能會變得冗長,並包含重複的部分。舉個例子,...

解決使用 Proxy 導致 Docker 無法拉取 Image 的問題

某天在公司內部申請一個 VM (Virtual machine) 來做 PoC (Proof of concept)。一開始拿到 VM 發現無法上網,原來我們公司對內部網路的控管較為嚴謹,內部的 VM 會要求使用 proxy 來對外連線。使用 proxy 還有一個好...

使用 Argo CD 的 Resource Hooks 來匯入資料庫資料

在傻傻的人工備份資料一陣子之後,我才發現可以使用 K8s 的 CronJob 來定期備份資料庫的資料。使用 CronJob 備份的效果讓我相當的滿意,終於擺脫了人工作業!但這次我有了另外一個問題。如何在 K8s 一建立好資料庫資...