解決在Ubuntu Server 22.04安裝NGINX失敗(2)
在前一篇分享之後,收到社團朋友的提醒,原因是主機停用 IPv6 造成繫結失敗,不是我說的那樣,這要快點再寫一篇釐清一下。
其實安裝當下,提供的日誌寫的很清楚,是自己沒用心看。
nginx[1695]: nginx: [emerg] socket() [::]:80 failed (97: Unknown error)
坐,請坐,請上座。 茶,上茶,請上茶。
在前一篇分享之後,收到社團朋友的提醒,原因是主機停用 IPv6 造成繫結失敗,不是我說的那樣,這要快點再寫一篇釐清一下。
其實安裝當下,提供的日誌寫的很清楚,是自己沒用心看。
nginx[1695]: nginx: [emerg] socket() [::]:80 failed (97: Unknown error)
第一次在 Ubuntu Server 22.04 安裝 NGINX,參考官方教學與另一篇都覺得寫的不錯,反正就是 apt install nginx
就結束了。看到應該這裡就知道,事情沒那麼簡單,因為參考了一些文件,安裝的都不是很順利,因此記下此筆記一篇。
官方教學與另一篇我覺得都寫的不錯:
但執行起來怎麼問題一堆:
前情提要,我們在 Calico 3.27 升級至 Calico 3.28 之後的版本都會碰到 Defaul IP Pool 跑回 192.168.x.x
而且改不動的情況。
$ calicoctl version
Client Version: v3.27.4
Git commit: 2183fee02
Cluster Version: v3.27.4
Cluster Type: typha,kdd,k8s,operator,bgp,kubeadm
$ calicoctl get ippool -o wide
NAME CIDR NAT IPIPMODE VXLANMODE DISABLED DISABLEBGPEXPORT SELECTOR
new-pool 10.244.0.0/16 true Never CrossSubnet false false all()
一早登入系統,注意到有二行提醒文字,第一次看到 Ubuntu 的 firmware upgrade 因此留個筆記。
1 device has a firmware upgrade available.
Run `fwupdmgr get-upgrades` for more information.
事情是這樣的,新申請的 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
的修改在重開機後還是會被覆寫回來。