检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
部署Nginx Ingress后状态为未就绪怎么办? 问题背景 创建Nginx Ingress后,Ingress处于“未就绪”状态。 解决方案 在创建Nginx Ingress前应为对应集群安装Nginx Ingress Controller插件,若未安装会导致Ingress处于
使用L7负载均衡Ingress-nginx Ingress-nginx控制器用于存储nginx配置,实现统一路由转发管理。关于Ingress-nginx的详细信息请参见Ingress-Nginx Controller和社区官方项目。 本小节将指导您为本地集群安装与使用Ingress-nginx。 约束与限制
Controller使用Kubernetes社区维护的模板与镜像,通过Nginx组件完成流量转发。 ELB Ingress:不开启“对接nginx”。 Nginx Ingress:单击开启“对接nginx”。 在创建Nginx Ingress前应为对应集群安装Nginx Ingress Controller插件,安装插件的具体操作请参见:
Service name: nginx-v1 # nginx-v1服务的服务名 port: 5566 # nginx-v1服务的服务端口 weight: 30 # nginx-v1服务的流量比例 - group:
群内部域名”访问。集群内部域名格式为“<自定义的访问方式名称>.<工作负载所在命名空间>.svc.cluster.local”,例如“nginx.default.svc.cluster.local”。 节点访问(NodePort) 表示工作负载可以从集群外部访问。节点访问 ( NodePort
工作负载基本概念 无状态工作负载(即Kubernetes中的Deployment):实例之间完全独立、功能相同,具有弹性伸缩、滚动升级等特性。如:nginx、wordpress,创建无状态工作负载请参见创建无状态工作负载。 有状态工作负载(即Kubernetes中的StatefulSet):
beta.kubernetes.io/nginx: runtime/default labels: app: nginx-apparmor spec: containers: - name: nginx image: nginx 不符合策略实例的资源定义 示例
等不同类型的工作负载部署到集群联邦下的集群。 在运行中始终不保存任何数据或状态的工作负载称为“无状态负载 Deployment”,例如nginx。您可以通过控制台或kubectl命令行创建无状态负载。 创建无状态负载 登录UCS控制台,在左侧导航栏中选择“容器舰队”。 在“容器舰
容器镜像以nginx开头,不符合策略实例。 apiVersion: v1 kind: Pod metadata: name: nginx-disallowed spec: containers: - name: nginx image: nginx 父主题:
name: nginx-privilege-escalation-allowed labels: app: nginx-privilege-escalation spec: containers: - name: nginx image: nginx
群内部域名”访问。集群内部域名格式为“<自定义的访问方式名称>.<工作负载所在命名空间>.svc.cluster.local”,例如“nginx.default.svc.cluster.local”。 添加方式 您可以在创建工作负载时设置访问方式,也可以在工作负载创建完成后添加访问方式。
alpha.kubernetes.io/nginx: runtime/default labels: app: nginx-seccomp spec: containers: - name: nginx image: nginx 不符合策略实例的资源定义 示例中的container
对于伙伴云集群,各集群提供商或本地数据中心对于网络入方向的端口规则有差异,防止特定端口外的入站通信。因此UCS使用集群网络代理的连接方式,无需在防火墙上启用任何入方向端口,仅通过集群代理程序的方式在出方向与UCS服务建立会话。 伙伴云集群接入网络的方法有两种,具有不同的优点: 公网接入:具有弹性灵活、成本低、易接入的优点。
数据规划 防火墙规划 防火墙的规划需符合表1中要求。 表1 防火墙规划 源设备 源IP 源端口 目的设备 目的IP 目的端口(侦听) 协议 端口说明 侦听端口是否可更改 认证方式 加密方式 ucsctl执行机 源设备所在节点IP ALL 所有节点 目的设备所在节点IP 22 TCP
containers: - name: nginx image: nginx 不符合策略实例的资源定义 示例中hostPID和hostIPC均为true,不符合策略实例。 apiVersion: v1 kind: Pod metadata: name: nginx-host-namespace-disallowed
metadata: name: nginx-volume-types-allowed labels: app: nginx-volume-types spec: containers: - name: nginx image: nginx volumeMounts:
name: nginx-flexvolume-driver-allowed labels: app: nginx-flexvolume-driver spec: containers: - name: nginx image: nginx volumeMounts:
metadata: name: nginx-readonlyrootfilesystem-allowed labels: app: nginx-readonlyrootfilesystem spec: containers: - name: nginx image:
metadata: name: nginx-proc-mount-disallowed labels: app: nginx-proc-mount spec: containers: - name: nginx image: nginx securityContext:
对于附着集群,各集群提供商或本地数据中心对于网络入方向的端口规则有差异,防止特定端口外的入站通信。因此UCS使用集群网络代理的连接方式,如图2所示,无需在防火墙上启用任何入方向端口,仅通过集群代理程序的方式在出方向与UCS服务建立会话。 附着集群接入网络的方法有两种,具有不同的优点: 公网接入:具有弹性灵活、成本低、易接入的优点。