顯示具有 Ubuntu 標籤的文章。 顯示所有文章
顯示具有 Ubuntu 標籤的文章。 顯示所有文章

NGINX for Windows轉移NGINX for Linux注意事項

NGINX for Windows轉移NGINX for Linux注意事項

最近終於把早期的 NGINX for Windows 轉移至 NGINX for Linux,在轉移過程有不少平台差異造成設定上需微調。以下整理 NGINX from Windows to Linux 一些組態的差異性,以及轉移後進行的一些調整。

如何在Azure Pipeline透過地端Agent使用SSH連線地端Ubuntu Server進行sudo作業

如何在Azure Pipeline透過地端Agent使用SSH連線地端Ubuntu Server進行sudo作業

我們想在地端原有的 Azure DevOps Agent(Based on Linux)對地端的另一台 Linux VM 下一些指令,但某些指令需要使用 sudo 來提權。大致架構如下:

Azure Pipeline(Cloud) ←-> Azure Agent (on-premise,Linux VM) ←-> SSH - sudo commands(on-premise,Linux VM)

追追追:SSL中繼憑證迷行記

追追追:SSL中繼憑證迷行記

AppInsights 01 Get crt.sectigo.com error

現在SSL憑證改成最長時效只有一年已經好幾年了。因此,一開始的故事很簡單,SSL憑證更新之後公司內網所有對此服務(我們暫定為:https://api.kkbruce.net/,雖有點圖文不符,反正就是個含正式SSL憑證的端點)的請求一律失敗(如上圖)!真的是嚇死寶寶了。整個追蹤的時間很長,我盡量整理重點說明就好,但這一路下來,對於整個SSL憑證又多瞭解了一些。

解決在Ubuntu Server 22.04安裝NGINX失敗(2)

解決在Ubuntu Server 22.04安裝NGINX失敗(2)

前一篇分享之後,收到社團朋友的提醒,原因是主機停用 IPv6 造成繫結失敗,不是我說的那樣,這要快點再寫一篇釐清一下。

其實安裝當下,提供的日誌寫的很清楚,是自己沒用心看。

nginx[1695]: nginx: [emerg] socket() [::]:80 failed (97: Unknown error)

解決在Ubuntu Server 22.04安裝NGINX失敗

解決在Ubuntu Server 22.04安裝NGINX(nginx.org)失敗

第一次在 Ubuntu Server 22.04 安裝 NGINX,參考官方教學與另一篇都覺得寫的不錯,反正就是 apt install nginx 就結束了。看到應該這裡就知道,事情沒那麼簡單,因為參考了一些文件,安裝的都不是很順利,因此記下此筆記一篇。

官方教學與另一篇我覺得都寫的不錯:

但執行起來怎麼問題一堆:

Ubuntu Server升級UEFI Firmware BIOS

Ubuntu Server升級UEFI Firmware BIOS

一早登入系統,注意到有二行提醒文字,第一次看到 Ubuntu 的 firmware upgrade 因此留個筆記。

1 device has a firmware upgrade available.
Run `fwupdmgr get-upgrades` for more information.

如何正確修改Ubuntu的50-cloud-init.yaml組態值

如何正確修改Ubuntu的50-cloud-init.yaml組態值

事情是這樣的,新申請的 Ubuntu VM 需要修改些 IP 相關組態,例如,DNS Server 或 Search Domain,結果發現,在 /etc/netplan 下的 00-installer-config.yaml 不見了,取而代之是一個 50-cloud-init.yaml 的組態檔。

cat /etc/netplan/50-cloud-init.yaml

# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        ens33:
            addresses:
            - 192.168.0.25/24
            nameservers:
                addresses:
                - 1.1.1.1
                - 8.8.8.8
                search: []
            routes:
            -   to: default
                via: 192.168.0.1
    version: 2

cat 會看到幾行重要的註解內容。直接對 50-cloud-init.yaml 的進行修改,在重開機後會覆寫回來。試了註解裡的 99-disable-network-config.cfg 沒什麼效果,對 50-cloud-init.yaml 的修改在重開機後還是會被覆寫回來。

Ubuntu Server延伸Disk與LVM的空間

Ubuntu Server延伸Disk與LVM的空間

$ df -h
Filesystem                         Size  Used Avail Use% Mounted on
tmpfs                              1.2G  7.7M  1.2G   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv   97G   76G   17G  82% /

話說,早期自架 Kubernetes 的 Ubuntu Server,不小心由 PoC 轉正之後,各項 Pod 服務陸續上線。但 PoC 的規格沒開到那麼好,近期發現, LVM(Logical Volume Manager)空間使用率已超過 8 成。在 IT 同事擴充 Disk 容量後,不論 Windows 或 Ubuntu 都一樣,還需要在 OS 層級些設定調整。以下學習一下 Ubuntu Server 如何做延伸 Disk 與 LVM 兩者的磁碟容量。

Ubuntu UFW with Kubernetes and Calico Firewall Rules

Ubuntu UFW with Kubernetes and Calico Firewall Rules

之前在架設 Kubernetes 叢集預設把防火牆給關閉。當然,關閉防火牆是非常不安全的行為。 當所有 Kubernetes 和 Calico 組態與服務都上線之後,我們需要把防火牆設定回去。

這裡只針對兩個部分:Kubernetes 與 Calico 所以需要埠(Port)。

Ubuntu Server 22.04雜記:設定IPv4和關閉IPv6及更改APT Mirror清單

Ubuntu Server 22.04雜記:設定IPv4和關閉IPv6及更改APT Mirror清單

因自建 Kubernetes 的關係,常常需要重灌 Ubuntu Server 做一些 PoC,每次都會做 IPv4 與 IPv6 的調整,如果重建的時間久一點,容易忘東忘西,做個筆記較實在。

教你5分鐘在Ubuntu 22.04架設Kubernetes Cluster

教你5分鐘在Ubuntu 22.04架設Kubernetes Cluster

話說[前篇]處理好Notebook、Hyper-V網路與VM網路之間的問題之後,在MicroK8s的幫助下,從Kubernetes到Kubernetes Cluster幾乎都是一行指令就能完成。

安裝MicroK8s:

sudo snap install microk8s --classic --channel=1.25

建立與加入Cluster:

microk8s add-node

方便代表看不到細節。因為想要瞭解細節,因此又花了一些時間學習如何從無到有設定與安裝Kubernetes與建置Kubernetes Cluster。

在筆電上使用Hyper-V建立能重覆開機使用的MicroK8s Cluster環境

在筆電上使用Hyper-V建立能重覆開機使用的MicroK8s Cluster環境

標題很繞舌,這篇想要處理二個在Hyper-V架設Ubuntu Server與MicroK8s碰到的問題:

  • 在筆電上的Hyper-V架設Unbutu Server碰到無法連上網路問題。
    • 正常而言,你需要有一張實體網卡,接上有DHCP的網路,那麼Hyper-V裡的VM在正常設定 [外部](external)網路之後,應該都能連上網際網路。
    • 不正常的是,現在很多筆電都只有Wi-Fi網卡,預設情況下,Hyper-V不能使用Wi-Fi網卡做「[外部](external)網路」的設定使用。也就是說,你把[外部](external)網路設定到Wi-Fi網卡上時,你會發現VM是無法正常上網的。
  • 在Hyper-V把Ubuntu Server與外部網路處理好了能正常上網之後,我們會把MicroK8s架起來(參考:前篇),當然,最重要的是要架成MicroK8s Cluster來使用。剛架好都沒有問題,但當你把MicroK8s Cluster VM關機(或筆電關機)下次再開起來時,你會發現MicroK8s Cluster整組會壞光光,可能連MicroK8s又回到可怕的「microk8s is not running.」狀態。一個重開機就會壞光光的測試環境,光想到要整個重建,就讓人不想碰它了,怎麼還可能拿來學習用。

Ubuntu Server透過Proxy安裝MicroK8s注意事項

Ubuntu Server透過Proxy安裝MicroK8s注意事項

離開Linux多年,最近一些Container(容器)需求,需要回到Linux的世界(看一下Windows Container,讓我嘆口氣!)。伺服器方面,由於想玩MicroK8s,因此選擇Ubuntu Server,由於是全新安裝,直接選最新22.04 TLS版本來使用。網路部分,我們會透過一台Azure架設的Proxy來當對外的端點。Proxy部分可以參考另一篇「整合EXPRESSROUTE以YARP架設內網MCR代理伺服器」的架構。但與透過YARP存取指定的MCR不同,由於在Ubuntu上需要安裝或更新不特定來源的套件,例如,Ubuntu APT、snapd、…,因此YARP比較不合適。我們另外使用Azure Container Instances採用了ubuntu/squid映像檔快速架設出一台通用存取的Proxy。