【发布时间】:2022-02-01 00:45:05
【问题描述】:
我正在尝试遵循有关如何从这些链接安装单节点 OKD 4.9 集群的官方文档:
- https://docs.okd.io/4.9/installing/installing_sno/install-sno-preparing-to-install-sno.html
- https://docs.okd.io/4.9/installing/installing_sno/install-sno-installing-sno.html
这是我的网络拓扑:
这是使所有主机都具有静态 IP 地址的 pfsense DHCP 配置:
这是 pfsence DNS 配置:
这是我的install-config.yaml:
apiVersion: v1
baseDomain: lan
compute:
- name: worker
replicas: 0
controlPlane:
name: master
replicas: 1
metadata:
name: okd
networking:
networkType: OVNKubernetes
clusterNetwork:
- cidr: 192.168.222.0/24
hostPrefix: 24
serviceNetwork:
- 172.30.0.0/16
platform:
none: {}
BootstrapInPlace:
InstallationDisk: /dev/sda
pullSecret: '{"auths":{"fake":{"auth": "bar"}}}'
sshKey: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDMkC4l/XYNdhPv1yp1boHACNWEde/QdWRPBKzqepHXI93n70kzqrbXEG8dmRRrSYifvvoLa8+3speBrDmuiuUcXCCXrhWWExCTzVcxjL/MeRxK8XSXmmT39DVF+lQbpS0zfv2wA7cr5Hy894nyI3k2UD1awjGD3S2cnfHFrowwRXh1SAPJZy3H4wvC2+Ff0VaLe0Z3j+HBnFsVshdhQRxybccnLR8101+kVbeCgslF+QoNSKCreU/y3OZ1fU34ft0chWy/Kr8IjFPcCR2jRbc/L1IZd8QI4/ujOLUiNe4uW8CLD3JRKCHkttx5oLVQqxxLsDhdsdmCq9Z6uu/t1pL+uxt+Aab/wy/lpEuzmbVrPz3Fg1bNNSpm5ul8Zwql02bqu3QFzOjhI4r/ua/f36RASa+Ij9deYl8BrzFz0uXGiwMoEJlhAahu/MhfuABBUIg8g/dS4dkEU9cSelipWynDvz95MkvWED5fzRWTSUpkZWsXM87UJ0Ty8yor7diAyK0= admin@okd-admin.lan'
当我使用发现 ISO 启动 okd-master 机器并在 okd-admin 节点上运行 ./openshift-install --dir=ocp wait-for install-complete 时,我收到以下错误:
E0201 01:30:03.627445 5642 reflector.go:138] k8s.io/client-go/tools/watch/informerwatcher.go:146: Failed to watch *v1.ClusterVersion: failed to list *v1.ClusterVersion: Get "https://api.okd.lan:6443/apis/config.openshift.io/v1/clusterversions?fieldSelector=metadata.name%3Dversion&limit=500&resourceVersion=0": dial tcp 192.168.222.2:6443: connect: connection refused
从错误消息中可以看出,api.okd.lan 域名已正确解析为192.168.222.2。
但是在okd-master 节点上的端口6443 上没有任何监听。
我不明白发生了什么。
更新
我制作这个 Dockerfile 是为了快速生成新的 ISO-s 进行测试:
FROM fedora
ENV OKD_VERSION="4.9.0-0.okd-2022-01-29-035536"
RUN dnf install -y wget coreos-installer
RUN cd /home && \
wget https://github.com/openshift/okd/releases/download/$OKD_VERSION/openshift-client-linux-$OKD_VERSION.tar.gz -O oc.tar.gz && \
tar zxf oc.tar.gz && \
chmod +x oc
RUN cd /home && \
wget https://github.com/openshift/okd/releases/download/$OKD_VERSION/openshift-install-linux-$OKD_VERSION.tar.gz -O openshift-install-linux.tar.gz && \
tar zxvf openshift-install-linux.tar.gz && \
chmod +x openshift-install
RUN cd /home && \
ISO_URL=$(./openshift-install coreos print-stream-json | grep location | grep x86_64 | grep iso | cut -d\" -f4) && \
wget $ISO_URL -O fcos-live.x86_64.iso
COPY install-config.yaml /home/ocp/install-config.yaml
RUN cd /home && \
./openshift-install --dir=ocp create single-node-ignition-config
RUN cd /home && \
cp ocp/bootstrap-in-place-for-live-iso.ign iso.ign && \
coreos-installer iso ignition embed -fi iso.ign fcos-live.x86_64.iso
此脚本为我生成 ISO:
@echo off
docker build -t okd-iso-maker .
docker run --name okd-iso-maker odk-iso-maker
docker stop okd-iso-maker
docker cp odk-iso-maker:/home/fcos-live.x86_64.iso ./fcos-live.x86_64.iso
echo ISO generation complete!
pause
我想出了如何通过 SSH 连接到 okd-master 并检查日志。
运行journalctl -u bootkube.service 我得到了这些logs。
【问题讨论】: