1.2. 使用 YAML 配置文件
在启动时,MicroShift 会在系统范围的 /etc/microshift/
目录中搜索名为 config.yaml
的配置文件。要使用自定义配置,您必须创建配置文件并指定在启动 MicroShift 前覆盖默认值的设置。
1.2.1. 自定义设置
要创建自定义配置,您必须在 /etc/microshift/
目录中创建 config.yaml
文件,然后在启动或重启 MicroShift 前更改要覆盖默认值的设置。
在更改任何配置设置后,重新启动 MicroShift 使其生效。config.yaml
文件仅在 MicroShift 启动时读取。
1.2.2. 配置公告地址网络标记
apiserver.advertiseAddress
标志指定要将 API 服务器公告给集群成员的 IP 地址。集群必须可以访问这个地址。您可以在此处设置自定义 IP 地址,但还必须将 IP 地址添加到主机接口。自定义此参数会抢占 MicroShift,将默认 IP 地址添加到 br-ex
网络接口。
如果自定义 advertiseAddress
IP 地址,请通过将 IP 地址添加到主机接口来确保集群可在 MicroShift 启动时被集群访问。
如果未设置,则默认值会在服务网络后设置为下一个即时子网。例如,当服务网络为 10.43.0.0/16
时,广告地址
被设置为 10.44.0.0/32
。
1.2.3. 为 NodePort 服务扩展端口范围
serviceNodePortRange
设置扩展可用于 NodePort 服务的端口范围。当需要公开 30000-32767
范围下的特定标准端口时,这个选项很有用。例如,如果您的设备需要公开网络上的 1883/tcp
MQ 遥测传输(MQTT)端口,因为客户端设备无法使用不同的端口。
NodePort 可以与系统端口重叠,从而导致系统或 MicroShift 出现故障。
配置 NodePort 服务范围时请考虑以下几点:
-
不要在没有明确选择了
nodePort
的情况下创建任何 NodePort 服务。如果没有指定显式nodePort
,则kube-apiserver
会随机分配端口,且无法预测。 -
不要为在设备
HostNetwork
上公开的系统服务端口、MicroShift 端口或其他服务创建任何 NodePort 服务。 表一指定在扩展端口范围时要避免的端口:
表 1.1. 避免的端口。 端口 描述 22/tcp
SSH 端口
80/tcp
OpenShift Router HTTP 端点
443/tcp
OpenShift Router HTTPS 端点
1936/tcp
openshift-router 的指标服务,目前不会公开
2379/tcp
etcd 端口
2380/tcp
etcd 端口
6443
kubernetes API
8445/tcp
openshift-route-controller-manager
9537/tcp
cri-o 指标
10250/tcp
kubelet
10248/tcp
kubelet healthz port
10259/tcp
kube 调度程序