第7章 既知の問題
OpenShift Container Platform バージョン 4.12 の namespace でサイトを作成すると、次の警告で始まるメッセージが表示されます。
W0320 15:27:27.446084 48301 warnings.go:70] would violate PodSecurity "restricted:v1.24"
このメッセージは OpenShift の将来の制限に関連しているため、無視してかまいません。
SKUPPER-2077 - Skupper Console Prometheus スクレイプ設定が OpenShift 認証で壊れている
コンソールアクセスに OpenShift 認証を使用するようにサイトを設定すると、コンソールにメトリクスは表示されません。
回避策
コンソールメトリクスが必要な場合は、コンソールが有効になっているサイトに対して
内部
認証を使用します。もう 1 つのオプションはunsecured
ですが、そのオプションを使用すると、認証されていないユーザーがコンソールを使用できます。SKUPPER-869 - TCP トランスポートのアイドル接続タイムアウトを有効にする
クライアントが強制終了するなど、エンドポイントが終了すると、もう一方のエンドポイントは半分切断された接続を監視します。他のエンドポイントが接続を切断しないか、接続へのデータ送信を試行しないと、Skupper ルーターによってその接続に割り当てられたメモリーが解放されません。
回避策
可能であれば、この動作を使用するクライアントサーバー設定を避けてください。たとえば、サーバーが休止状態の接続を自動的に閉じるか、クライアントとの通信を試みる場合は、クライアントが終了すると、Skupper ルーターはメモリーを解放します。
SKUPPER-805 - OCP 3.11 の通常ユーザーでは skupper init が使用できない
回避策
以下の 2 つの回避策があります。
- YAML を使用してサイトを設定します。
-
以下のパーミッションでサービスアカウントを作成し、
skupper
CLI を実行します。
--- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: skupper-non-admin rules: - apiGroups: - "" resources: - configmaps - pods - pods/exec - services - secrets - serviceaccounts verbs: - get - list - watch - create - update - delete - apiGroups: - apps resources: - deployments - statefulsets - daemonsets verbs: - get - list - watch - create - update - delete - apiGroups: - route.openshift.io resources: - routes verbs: - get - list - watch - create - delete - apiGroups: - networking.k8s.io resources: - ingresses - networkpolicies verbs: - get - list - watch - create - delete - apiGroups: - projectcontour.io resources: - httpproxies verbs: - get - list - watch - create - delete - apiGroups: - rbac.authorization.k8s.io resources: - rolebindings - roles verbs: - get - list - watch - create - delete
上記の YAML を
role.yaml
に保存し、これを適用して、以下を使用してロールをユーザー名にバインドできます。$ oc apply -f role.yaml $ oc policy add-role-to-user skupper-non-admin <username> -n <namespace-name> --role-namespace=<namespace-name>