如果集群配置了网络策略,则 Web 终端可能无法启动。要启动 Web 终端实例,Web 终端操作符必须与 Web 终端的 Pod 通信以验证其是否正在运行,并且 OpenShift Dedicated Web 控制台需要发送信息以自动登录到终端内的集群。如果任一步骤失败,则 Web 终端将无法启动,并且终端面板将处于加载状态,直到发生 `context deadline exceeded error` 错误。
为避免此问题,请确保用于终端的命名空间的网络策略允许来自 `openshift-console` 和 `openshift-operators` 命名空间的入站流量。
以下示例显示了允许来自 `openshift-console` 和 `openshift-operators` 命名空间的入站流量的 `NetworkPolicy` 对象。
允许来自 `openshift-console` 命名空间的入站流量
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-from-openshift-console
spec:
ingress:
- from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: openshift-console
podSelector: {}
policyTypes:
- Ingress
允许来自 `openshift-operators` 命名空间的入站流量
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-from-openshift-operators
spec:
ingress:
- from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: openshift-operators
podSelector: {}
policyTypes:
- Ingress