focaaby's Notes

趨勢不可擋,流行不可跟,探索與思考技術的本質

為什麼 EKS worker node 可以自動加入 EKS cluster(二)?
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]

為什麼 EKS worker node 可以自動加入 EKS cluster(一)
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

WordPress Tuning
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

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" services: gitea: image: gitea/