ironman-2022 為什麼 EKS cluster 知道預設 CNI Plugin 為 Amazon VPC CNI plugin 預設 EKS cluster 使用 VPC CNI Plugin 作為 CNI。本文將探討「為什麼 EKS cluster 知道預設 CNI Plugin 為 VPC CNI plugin」,希望理解 EKS CNI plugin 設定過程。
ironman-2022 為什麼 EKS worker node 可以自動加入 EKS cluster(二)? 接續前一篇,我們了解了 EKS node group 定義,並知道了 EKS worker node 使用了 EKS optimized Amazon Linux AMI 內預先設置好的 bootstrap 設定 container runtime、kubelet 等設定。 Kubernetes 為確保 Control Plane 及 worker node 溝通安全性,於 Kubernetes 1.4 導入了 certificate request 及 signing API 機制 [https://github.com/kubernetes/kubernetes/pull/20439/files]
ironman-2022 為什麼 EKS worker node 可以自動加入 EKS cluster(一) 如果是一個自建的 Kubernetes cluster,我們會需要使用 Certificate Authority 憑證給予 Kubernetes Components [https://kubernetes.io/docs/concepts/overview/components/#node-components] [1] 所使用,如 Kubernetes The Hard Way [https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/04-certificate-authority.md] [2] 或是以下 kubeadm join [https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-join/] [3] 命令則可以使 Kubernetes node
ironman-2022 為什麼 kubectl 可以訪問 EKS cluster 本文將探討這兩個問題「為什麼原生的 kubectl 可以直接訪問 EKS cluster」以及「為什麼 AWS CLI 權限與訪問 EKS cluster」,希望理解在 kubectl 如何與 IAM 權限整合允許訪問 EKS cluster。
ironman-2022 建立 EKS Cluster 故本系列文章希望研究在 AWS 平台上 EKS 一些有趣的功能是如何實現,並且了解 EKS 如何整合上游 Kubernetes 功能與 AWS 服務整合。
hardware How to control your external display brightness on macOS and Arch Linux 本文將介紹如何在 macOS 及 Arch Linux 系統上調整外接螢幕亮度。
kubernetes Why logging system collects container logs from specific directory 本文章介紹了常見 Kubernetes Logging 架構,並解探討了為了使用 Node Agent 架構模式上為何收集 /var/log/containers/ 目錄內的 log 而非其他目錄。
Why Linux OS takes over 5 minutes during boot-up process In this article, I would show you how to find which systemd unit might lead the boot-up times through `systemd-analyze`[1] command.
kubernetes AWS VPC CNI plugin random livenessProbe failures after upgrading to Kubernetes 1.20 In this article, I will show you Kubelet fixed Exec Probe Timeouts issue, whose timeout of 1s is respected and triggers probes failures and pods restart.
cdk Why my CDK VPC constructor does not respect maximum availability zones In this article, we'll know the environment variable account and region are requirements for the production CDK stack. Also, StacksPros need to be inherited as well.
opsworks How OpsWorks mount EBS Volume automatically The ephemeral device mount points are mounted by the cloud-init module and the EBS volumes are mounted by the default OpsWorks recipe aws_opsworks_ebs. In this article, we will know how OpsWorks mount the EBS volumes.
cloudformation Automatically validating the multiple SAN through DNS validation within multiple hosted zone by using CloudFormation template ACM support automatically renews DNS-validated certificates. This article will go through how to request a public certificate with multiple SAN, which included the domain name in a public hosted zone and a private hosted zone.
ecr Push a Helm Chart to AWS ECR This article will go through how to push a Helm chart to ECR. Also, I try to use the Helm Dependency on ECR. The ECR supported the Helm template written in Helm Dependency, but ECR repositories are still not can not add as Helm repo currently.
kubernetes EKS service with internal NLB, but gets timeouts randomly While deploying both client and server on the EKS cluster and connecting through internal NLB, however, the communication gets timeout randomly.
wordpress WordPress Tuning 前言 以前在兼差幫忙管理系所網站時,那時候學校主流 CMS [https://en.wikipedia.org/wiki/Content_management_system] 使用的是 Joomla,當年也從 apache2 移轉使用 NGINX 做了些微的調教,但是也沒有認真做個筆記。剛好公司的官網也要從 windows 移轉到 linux 伺服器上,不過使用的是 WordPress,也稍微 survey 了相關調教,本篇為移轉過程及相關調教筆記。 安裝與移轉 使用伺服器架構為基本的 LNMP,可以參考 DigitalOcean - How To Install Linux, Nginx, MySQL, PHP (LEMP stack) in Ubuntu 16.04
ubuntu Calculator in Ubuntu 18.04 GNOME search 前言 看到 gslin 大大的直接在-ubuntu-的-unity-上直接計算 [https://blog.gslin.org/archives/2018/12/17/8638/%E7%9B%B4%E6%8E%A5%E5%9C%A8-ubuntu-%E7%9A%84-unity-%E4%B8%8A%E7%9B%B4%E6%8E%A5%E8%A8%88%E7%AE%97/] ,後來想到 Ubuntu 18.04 應該也要有這功能才對,於是就找了一下。 過程 在 18.04
mysql After Migrating MySQL to MariaDB, AppArmor blocks MariaDB 解決移轉至 MariaDB 重啟伺服器之後持續遇到 AppArmor 阻擋 MariaDB 之問題
letencrypt Create Let's Encrypt Wildcard Certificate With BIND DNS server 本文介紹如何利用 certbot 建立 Let's Encrypt Wildcard Certificate
github Build Vue project with Travis CI on GitHub Pages Travis.ci 主要於 GitHub 上時常使用到的持續整合工具,也支援了非常多程式語言,如 Node.js, PHP, Java, C, Golang… 等。這次 slide project 透過 vue-cli 了一個小專案,但是每次都必須手動 push 至 GitHub Pages 覺得有點小困擾,本篇透過 Travis 支援 Open Source 專案方式,設置自動部屬於到專案頁面上。
raft Raft algorithm - 1 前言 在嘗試事做分散式的架構時,原則上在多台機器同時需要處理一件事情的時候,但是多台機器必須知道這項事情是否被處理、紀錄等,舉例: 若有 message queue(後簡稱 MQ)架設成叢集式架構,那如何讓不同的機器保持有一樣 MQ 順序不亂,機器間溝通就需要有「共識」,讓每個人來拿的都是同一個順序。 什麼是 Raft Raft 是一容易理解的共識演算法,具有與 Paxos 演算法相當的容錯與效能。 何謂「共識」? 分散式系統容錯中十分重要的問題,包含了多台伺服器同意數值的改變。傳統的共識演算法需要過多數決(magority)來進行共識,舉例來說:一個 5 台伺服器叢集系統,可以允許在兩台伺服器當機,而其餘伺服器持續運作;倘若有更多台伺服器當機,就會停止運作。 第一章節:介紹 將近十年來多數共識演算法都是基於 Paxos 或是受它影響,也就成為主流教導學生的題材。很不幸運的事 Paxos 演算法並不是那麼容易理解,需要更複雜的架構來實作系統。
Gitea with Nginx Reverse Proxy 前言 先前在 DevOps Taipei 2017 有注意到有前輩在推廣 Gitea,因為個人也有些私人需求而來研究一下如何架設。 本篇可知道: * 如何用 Docker 架設 Gitea server * 利用 Nginx docker 設定 reverse proxy * Let's Encrypt 綁定 reverse proxy 開始安裝 Gitea 建立一個目錄儲存 Git 資料 sudo mkdir -p /var/lib/gitea 由於稍後會用 Ngnix docker 實作 reverse proxy,這邊先開始撰寫 docker-compose version: "3"