VMware NSX Container Plugin 3.0.2 | 2020년 9월 10일 | 빌드 16863080 이 설명서의 추가 사항 및 업데이트 사항을 정기적으로 확인하십시오. |
릴리스 정보에 포함된 내용
릴리스 정보에는 다음과 같은 항목이 포함됩니다.
새로운 기능
- OpenShift 4.4 지원(NSX-T Data Center 3.0.1.1 이상)
- 수신에 대한 JWT 클라이언트 인증 지원(NSX-T Data Center 3.0.0 이상)
- 선택기 없이 LoadBalancer 유형의 Kubernetes 서비스 지원
- 주석을 통해 네임스페이스 및 서비스별로 특정 SNAT IP를 지정하는 기능
- 분산 방화벽 규칙에 대한 로깅 트래픽을 사용하도록 설정하는 새 주석
- Photon OS 지원
- 포드 보안 정책 지원
- 수신에 대한 pathType 특성 지원
NSX Container Plugin 3.0.2.2는 패치 릴리스입니다. Pivotal Stemcells 621.85 이상, 456.121 이상에서 OVS 커널 모듈 컴파일 문제를 해결합니다.
호환성 요구 사항
제품 | 버전 |
---|---|
PCF(Tanzu Application Service)에 대한 NCP/NSX-T 타일 | 3.0.2 |
NSX-T | 2.5.2, 2.5.2.1, 2.5.2.2, 2.5.3, 3.0.0, 3.0.1, 3.0.2, 3.0.3 |
vSphere | 6.7, 7.0 |
Kubernetes | 1.17, 1.18 |
OpenShift 3 | 3.11 |
OpenShift 4 | RHCOS 4.3, 4.4 |
Kubernetes 호스트 VM OS | Ubuntu 16.04, Ubuntu 18.04, CentOS 7.7, CentOS 7.8, CentOS 8.1, RHEL 7.8, RHEL 8.1 참고: RHEL/CentOS 7.8, 8.1의 경우 nsx-ovs는 지원되지 않습니다. 업스트림 OVS와만 호환됩니다. |
OpenShift 호스트 VM OS | RHEL 7.7, RHEL 7.8 |
OpenShift BMC (이 릴리스에서는 사용되지 않음) |
|
Tanzu Application Service(Pivotal Cloud Foundry) | Ops Manager 2.8 + PAS 2.8 Ops Manager 2.9 + PAS 2.9 Ops Manager 2.10 + PAS 2.10 |
이 릴리스로의 업그레이드 지원:
- 모든 이전 3.0.x 릴리스 및 모든 NCP 2.5.x 릴리스
해결된 문제
- 문제 2518312: NCP 부트스트랩 컨테이너가 Ubuntu 18.04.4, 커널 4.15.0-88에 nsx-ovs 커널 모듈을 설치하지 못함
NCP 부트스트랩 컨테이너(nsx-ncp-bootstrap)가 Ubuntu 18.04.4, 커널 4.15.0-88에 nsx-ovs 커널 모듈을 설치하지 못했습니다.
use_nsx_ovs_kernel_module = False in nsx-node-agent-config를 설정하여 이 커널에서 NSX-OVS를 설치하지 마십시오. 대신, 호스트에서 업스트림 OVS 커널 모듈을 사용하십시오(기본적으로 Ubuntu에는 기본적으로 OVS 커널 모듈이 함께 제공됨). 호스트에 OVS 커널 모듈이 없는 경우 OVS 커널 모듈을 수동으로 설치하고, nsx-node-agent-config에서 use_nsx_ovs_kernel_module을 False로 설정하거나, NSX-OVS를 설치할 수 있도록 커널 버전을 4.15.0-76으로 다운그레이드합니다.
- 문제 2548815: 관리자에서 정책으로 가져온 NCP 클러스터에서 NCP가 자동으로 확장된 Tier-1 라우터를 삭제하지 못함
자동으로 크기가 조정된 Tier-1 라우터는 해당 LocaleService에서 참조되고 있기 때문에 관리자-정책 가져오기 후에 정책 모드로 실행되는 NCP에서 삭제할 수 없습니다.
해결 방법: NSX Manager UI를 사용하여 Tier-1 라우터를 수동으로 삭제하십시오.
- 문제 2549433: DHCP 리스 만료 시 ovs_uplink_port로 구성된 단일 인터페이스를 사용하는 OpenShift 노드가 이름 서버 정보를 손실함
nsx-node-agent 구성에서 ovs_uplink_port로 구성된 단일 인터페이스를 사용하는 OpenShift 노드에서 ovs_uplink_port의 DHCP 리스가 만료될 때 이름 서버 정보가 손실됩니다.
해결 방법: 고정 IP 주소를 사용하십시오.
- 문제 2550625: 클러스터를 관리자에서 정책으로 마이그레이션한 후 공유 IP 풀의 IP 주소가 해제되지 않음
클러스터를 관리자에서 정책으로 마이그레이션한 후 네임스페이스를 삭제해도 해당 네임스페이스에 할당된 IP 주소가 해제되지 않습니다.
해결 방법: 없음.
- 문제 2549765: 여러 대상 포트가 있는 NAT 규칙이 있는 경우 관리자 개체를 정책으로 가져오지 못함
상위 계층 라우터에 여러 대상 포트가 있는 NAT 규칙이 있는 경우 관리자-정책 가져오기 프로세스가 실패합니다. 이러한 시나리오 중 하나는 Kubernetes 매개 변수 ingress_mode가 NCP 구성에서 'nat'이고 Kubernetes에 'ncp/ingress-controller' 주석이 있는 포드가 있는 경우입니다.
해결 방법: NCP가 실행되지 않으며, 가져오기를 시작하기 전에 NAT 규칙을 편집하고 '80' 및 '443' 대상 포트를 제거합니다.
- 문제 2550474: OpenShift 환경에서 HTTPS 경로를 HTTP로 변경하면 HTTP 경로가 예상대로 작동하지 않을 수 있음
HTTPS 경로를 편집하고 TLS 관련 데이터를 삭제하여 HTTP 경로로 변환하는 경우 HTTP 경로가 예상대로 작동하지 않을 수 있습니다.
해결 방법: HTTPS 경로를 삭제하고 새 HTTP 경로를 생성합니다.
- 컨테이너 IP 블록이 구성되지 않은 경우 시작 시 NCP가 실패함
"컨테이너 IP 블록"이 구성되지 않고 "SNAT IP 블록 없음"만 구성된 완전하게 라우팅된 배포의 경우, 시작 시 "IndexError: 목록 인덱스가 범위를 벗어남"으로 NCP 3.0.1이 실패합니다.
알려진 문제
- 문제 2131494: 수신 클래스를 nginx에서 nsx로 변경한 후에도 NGINX Kubernetes 수신이 계속 작동함
NGINX Kubernetes 수신을 생성할 때 NGINX에서 트래픽 전달 규칙이 생성됩니다. 수신 클래스를 다른 값으로 변경하면 클래스를 변경한 후에 Kubernetes 수신을 삭제하더라도 NGINX에서 규칙이 삭제되지 않고 계속 적용됩니다. 이 문제는 NGINX의 제한 사항입니다.
해결 방법: NGINX에서 생성된 규칙을 삭제하려면 클래스 값이 nginx일 때 Kubernetes 수신을 삭제합니다. 그런 다음 Kubernetes 수신을 다시 생성합니다.
- ClusterIP 유형의 Kubernetes 서비스에 대해 클라이언트 IP 기반 세션 선호도가 지원되지 않음
NCP는 ClusterIP 유형의 Kubernetes 서비스에 대해 클라이언트 IP 기반 세션 선호도를 지원하지 않습니다.
해결 방법: 없음
- ClusterIP 유형의 Kubernetes 서비스에 대해 hairpin-mode 플래그가 지원되지 않음
NCP는 ClusterIP 유형의 Kubernetes 서비스에 대해 hairpin-mode 플래그를 지원하지 않습니다.
해결 방법: 없음
- 문제 2192489: PAS director 구성에서 'BOSH DNS server'를 사용하지 않도록 설정한 후에도 컨테이너의 resolve.conf 파일에 Bosh DNS 서버(169.254.0.2)가 계속 나타남
PAS 2.2를 실행하는 PAS 환경의 PAS director 구성에서 'BOSH DNS 서버'를 사용하지 않도록 설정한 후에도 컨테이너의 resove.conf 파일에 Bosh DNS 서버(169.254.0.2)가 여전히 나타납니다. 이로 인해 FQDN(정규화된 도메인 이름)을 사용한 ping 명령에 시간이 오래 걸립니다. PAS 2.1에는 이 문제가 존재하지 않습니다.
해결 방법: 없음. 이 문제는 PAS 문제입니다.
- 문제 2224218: 서비스 또는 애플리케이션을 삭제했을 때 SNAT IP가 다시 IP 풀로 릴리스되는 데 2분이 걸림
서비스 또는 애플리케이션을 삭제하고 2분 내에 다시 생성하면 IP 풀에서 새로운 SNAT IP를 받게 됩니다.
해결 방법: 동일한 IP를 다시 사용하려면 서비스 또는 애플리케이션을 삭제하고 다시 생성하기 전에 2분을 기다립니다.
- 문제 2404302: NSX-T에 동일한 리소스 유형(예: HTTP)의 로드 밸런서 애플리케이션 프로파일이 여러 개 있는 경우 NCP가 이 중 하나를 선택해서 가상 서버에 연결함
NSX-T에 여러 HTTP 로드 밸런서 애플리케이션 프로파일이 있는 경우 NCP는 적절한 x_forwarded_for 구성의 프로파일을 하나 선택해서 HTTP 및 HTTPS 가상 서버에 연결합니다. NSX-T에 여러 FastTCP 및 UDP 애플리케이션 프로파일이 있는 경우 NCP는 이 중 하나를 선택해서 TCP 및 UDP 가상 서버에 각각 연결합니다. 로드 밸런서 애플리케이션 프로파일이 다른 설정이 적용된 다른 애플리케이션에서 생성되었을 수 있습니다. NCP가 로드 밸런서 애플리케이션 프로파일 중 하나를 NCP 생성 가상 서버에 연결하도록 선택하면 다른 애플리케이션 워크플로가 손상될 수 있습니다.
해결 방법: 없음
- 문제 2397621: OpenShift 3 설치가 실패함
OpenShift 3을 설치하려면 노드가 준비 상태여야 하며, 이를 위해서는 CNI 플러그인을 설치해야 합니다. 이 릴리스에서는 별도의 CNI 플러그인 파일이 없기 때문에 OpenShift를 설치하지 못합니다.
해결 방법: 설치를 시작하기 전에 각 노드에 /etc/cni/net.d 디렉토리를 생성하십시오.
- 문제 2413383: 일부 노드가 준비되지 않아 OpenShift 3을 업그레이드하지 못함
기본적으로 NCP 부트스트랩 포드는 마스터 노드에서 예약되지 않습니다. 따라서 마스터 노드 상태는 항상 [준비 안 됨]입니다.
해결 방법: “계산” 역할이 있는 마스터 노드를 할당하여 nsx-ncp-bootstrap 및 nsx-node-agent DaemonSets에서 포드를 생성할 수 있도록 하십시오. nsx-ncp-bootstrap이 NSX-CNI를 설치하면 노드 상태가 "준비"로 변경됩니다.
- 문제 2460219: 기본 서버 풀이 없으면 HTTP 리디렉션이 작동하지 않음
HTTP 가상 서버가 서버 풀에 바인딩되지 않으면 HTTP 리디렉션이 실패합니다. 이 문제는 NSX-T 2.5.0 및 이전 릴리스에서 발생합니다.
해결 방법: 기본 서버 풀을 생성하거나 NSX-T 2.5.1로 업그레이드합니다.
- 문제 2518111: NCP가 NSX-T에서 업데이트된 NSX-T 리소스를 삭제하지 못함
NCP는 지정한 구성에 따라 NSX-T 리소스를 생성합니다. NSX Manager 또는 NSX-T API를 통해 해당 NSX-T 리소스를 업데이트하는 경우 NCP가 해당 리소스를 삭제했다가 필요할 때 다시 생성하지 못할 수 있습니다.
해결 방법: NCP가 NSX Manager 또는 NSX-T API를 통해 생성한 NSX-T 리소스를 업데이트하지 마십시오.
- 문제 2524778: NCP 마스터 노드를 삭제한 후에 NSX Manager에 NCP가 종료 또는 비정상으로 표시됨
NCP 마스터 노드를 삭제한 후(예: 백업 노드로 성공적으로 전환한 후), NCP의 상태가 실행 중일 때도 계속 종료로 표시됩니다.
해결 방법: Manager API DELETE /api/v1/systemhealth/container-cluster/<cluster-id>/ncp/status를 사용하여 오래된 상태를 수동으로 지우십시오.
- 문제 2416376: NCP에서 128개가 넘는 공백에 바인딩되는 PAS ASG(애플리케이션 보안 그룹)를 처리하지 못함
NSX-T 분산 방화벽 제한 때문에 NCP는 128개보다 많은 공백에 바인딩되는 PAS ASG를 처리할 수 없습니다.
해결 방법: 여러 개의 ASG를 생성하고 각각에 128개 이상의 공백이 포함되지 않도록 바인딩합니다.
- 문제 2534726: NSX-T 타일을 통해 NCP 3.0.1로 업그레이드하는 데 실패하는 경우 BOSH 명령줄을 사용하여 업그레이드를 다시 실행하면 성능 문제가 발생함
OpsMgr에서 NSX-T 타일을 통해 NCP 3.0.1로 업그레이드하는 경우 NCP에서 사용되는 NSX Manager의 HA 스위칭 프로파일이 비활성으로 표시됩니다. NCP가 다시 시작되면 스위칭 프로파일이 삭제됩니다. 업그레이드가 실패하고 “bosh deploy -d <deployment-id> -n <deployment>.yml”과 같은 BOSH 명령을 사용하여 업그레이드를 다시 실행하면 HA 스위칭 프로파일이 삭제되지 않습니다. NCP가 계속 실행되지만 성능이 저하됩니다.
해결 방법: 항상 BOSH 명령줄이 아닌 OpsMgr를 통해 NCP를 업그레이드하십시오.
- 문제 2537221: NSX-T를 3.0으로 업그레이드한 후 NSX Manager UI의 컨테이너 관련 개체에 대한 네트워킹 상태가 알 수 없음으로 표시됨
NSX Manager UI에서 탭 [인벤토리] > [컨테이너]에는 컨테이너 관련 개체와 해당 상태가 표시됩니다. PKS 환경에서 NSX-T를 3.0으로 업그레이드한 후 컨테이너 관련 개체의 네트워킹 상태가 [알 수 없음]으로 표시됩니다. 이 문제는 PKS가 NSX-T의 버전 변경을 감지하지 못하기 때문에 발생합니다. NCP가 포드로 실행 중이고 작동 여부 프로브가 활성 상태인 경우에는 이 문제가 발생하지 않습니다.
해결 방법: NSX-T 업그레이드한 후에는 NSX Manager를 오버로드하지 않도록 NCP 인스턴스를 점진적으로(동시에 10개 이하) 다시 시작합니다.
- 문제 2552918: 분산 방화벽에 대해 관리자-정책 가져오기에 대한 롤백이 실패하여 클러스터 롤백이 실패함
드문 경우지만 분산 방화벽 섹션 및 규칙에 대해 실패한 관리자-정책 가져오기 프로세스는 롤백을 수행해야 합니다. 이로 인해 클러스터 롤백이 실패하고 NSX Manager에 오래된 리소스가 남아 있게 됩니다.
해결 방법: 백업 및 복원 기능을 사용하여 NSX Manager를 정상 상태로 복원합니다.
- 문제 2552573: OpenShift 4.3 환경에서 DHCP가 정책 UI를 사용하여 구성된 경우 클러스터 설치가 실패할 수 있음
OpenShift 4.3 환경에서 클러스터를 설치하려면 DHCP 서버를 사용하여 IP 주소 및 DNS 정보를 제공할 수 있어야 합니다. 정책 UI를 사용하여 NSX-T에 구성된 DHCP 서버를 사용하는 경우 클러스터 설치가 실패할 수 있습니다.
해결 방법: 관리자 UI를 사용하여 DHCP 서버를 구성하고, 설치하지 못한 클러스터를 삭제했다가 클러스터를 다시 생성합니다.
- 문제 2552564: OpenShift 4.3 환경에서 겹치는 주소를 찾았으면 DNS 전달자가 작동을 중지할 수 있음
OpenShift 4.3 환경에서 클러스터를 설치하려면 DNS 서버를 구성해야 합니다. NSX-T를 사용하여 DNS 전달자를 구성하고 IP 주소가 DNS 서비스와 겹치면 DNS 전달자의 작동이 중지되고 클러스터 설치가 실패합니다.
해결 방법: 외부 DNS 서비스를 구성하고, 설치하지 못한 클러스터를 삭제한 후 클러스터를 다시 생성합니다.
- 문제 2483242: 컨테이너의 IPv6 트래픽이 NSX-T SpoofGuard에 의해 차단됨
SpooGuard를 사용하도록 설정한 경우 IPv6 링크 로컬 주소가 자동으로 화이트리스트에 추가되지 않습니다.
해결 방법: NCP 구성에서 nsx_v3.enable_spoofguard = False를 설정하여 SpoofGuard를 사용하지 않도록 설정합니다.
- 문제 2552609 - 잘못된 XFF(X-Forwarded-For) 및 X-Forwarded-Port 데이터
HTTPS 수신 규칙(Kubernetes) 또는 HTTPS 경로(OpenShift)에 대해 INSERT 또는 REPLACE를 사용하여 XFF를 구성하는 경우 XFF 헤더에 잘못된 X-Forwarded-For 및 X-Forwarded-Port 값이 표시될 수 있습니다.
해결 방법: 없음.
- 문제 2555336: 관리자 모드에서 생성된 중복된 논리적 포트로 인해 포드 트래픽이 작동하지 않음
이 문제는 여러 클러스터에 여러 개의 포드가 있을 때 발생할 가능성이 높습니다. 포드를 생성하면 포드 트래픽이 작동하지 않습니다. NSX-T에는 동일한 컨테이너에 대해 생성된 여러 논리적 포트가 표시됩니다. NCP 로그에는 논리적 포트 중 하나의 ID만 찾을 수 있습니다.
해결 방법: 포드를 삭제한 후 다시 생성합니다. NCP가 다시 시작되면 NSX-T의 오래된 포트가 제거됩니다.
- 문제 2554357: IPv6에는 로드 밸런서 자동 크기 조정이 작동하지 않음
IPv6 환경에서 기존 로드 밸런서 크기에 도달하면 LoadBalancer 유형의 Kubernetes 서비스가 활성화되지 않습니다.
해결 방법: PKS 배포에 대해서는 /var/vcap/jobs/ncp/config/ncp.ini에서, 다른 배포의 경우에는 nsx-ncp-configmap에서 nsx_v3.lb_segment_subnet = FE80::/10을 설정합니다. 그런 다음, NCP를 다시 시작합니다.
- 문제 2597423: 관리자 개체를 정책으로 가져올 때 롤백으로 인해 일부 리소스의 태그가 손실되었습니다.
관리자 개체를 정책으로 가져올 때 롤백이 필요한 경우 다음 개체의 태그가 복원되지 않습니다.
- Spoofguard 프로필(공유 및 클러스터 리소스의 일부)
- BgpneighbourConfig(공유 리소스의 일부)
- BgpRoutingConfig(공유 리소스의 일부)
- StaticRoute BfdPeer(공유 리소스의 일부)
해결 방법: 공유 리소스의 일부인 리소스에서는 태그를 수동으로 복원합니다. 백업 및 복원 기능을 사용하여 클러스터 리소스의 일부인 리소스를 복원합니다.
- 문제 2579968: LoadBalancer 유형의 Kubernetes 서비스를 자주 변경하면 일부 가상 서버와 서버 풀이 예상대로 삭제되지 않습니다.
LoadBalancer 유형의 Kubernetes 서비스를 자주 변경하면 일부 가상 서버와 서버 풀이 삭제되어야 하는데도 NSX-T 환경에 남아 있을 수 있습니다.
해결 방법: NCP를 다시 시작합니다. 또는 오래된 가상 서버와 관련 리소스를 수동으로 제거합니다. LoadBalancer 유형의 Kubernetes 서비스에 있는 external_id 태그에 가상 서버의 식별자가 없는 경우 가상 서버가 오래된 것입니다.
- 문제 2536383: NSX-T를 3.0 이상으로 업그레이드한 후에 NSX-T UI에 NCP 관련 정보가 올바르게 표시되지 않습니다.
NSX-T를 3.0 이상으로 업그레이드한 후 NSX-T UI의 인벤토리 > 컨테이너 탭에 컨테이너 관련 개체의 네트워킹 상태가 [알 수 없음]으로 표시됩니다. 또한 NCP 클러스터가 시스템 > 패브릭 > 노드 > NCP 클러스터 탭에 표시되지 않습니다. 이 문제는 일반적으로 PKS 환경에서 표시됩니다.
해결 방법: NSX-T 업그레이드한 후에는 NCP 인스턴스를 점진적으로(동시에 10개 이하) 다시 시작합니다.
- 문제 2622099: LoadBalancer 유형의 Kubernetes 서비스가 오류 코드 NCP00113 및 오류 메시지 "다른 사용자가 개체를 수정했습니다."를 나타내며 초기화에 실패했습니다.
정책 API를 사용하는 단일 계층 배포에서, 기존 Tier-1 게이트웨이를 상위 계층 게이트웨이로 사용하고 게이트웨이의 풀 할당 크기가 [라우팅]인 경우 유형 LoadBalancer의 Kubernetes 서비스가 오류 코드 NCP00113 및 오류 메시지 "다른 사용자가 개체를 수정했습니다. 다시 시도하십시오.”를 나타내며 초기화되지 않을 수 있습니다.
해결 방법: 이 문제가 나타나면 5분 동안 기다립니다. 그런 다음, NCP를 다시 시작합니다. 문제가 해결될 것입니다.
- 문제 2633679: NCP Operator가 API/policy/api/v1/infra/tier-1s/<tier1-id>/segments/<segment-id>를 사용하여 생성된 Tier-1 세그먼트에 연결되는 OpenShift 노드를 지원하지 않습니다.
NCP Operator가 API/policy/api/v1/infra/tier-1s/<tier1-id>/segments/<segment-id>를 사용하여 생성된 Tier-1 세그먼트에 연결되는 OpenShift 노드를 지원하지 않습니다.
해결 방법: API/policy/api/v1/infra/segments/<segment-id>를 사용하여 세그먼트를 생성합니다.
- Kubernetes 설치 중에 "파일에 로깅"을 사용하도록 설정하면 NCP가 시작되지 않습니다.
이 문제는 컨테이너 호스트의 uid:gid=1000:1000에 로그 폴더에 대한 사용 권한이 없는 경우에 발생합니다.
해결 방법: 다음 중 하나를 수행합니다.
- 컨테이너 호스트에서 로그 폴더의 모드를 777로 변경합니다.
- 컨테이너 호스트에서 로그 폴더의 "rwx" 사용 권한을 uid:gid=1000:1000에 부여합니다.
- "파일에 로깅" 기능을 사용하지 않도록 설정합니다.
- 문제 3033821: 관리자-정책 마이그레이션 후 분산 방화벽 규칙이 올바르게 적용되지 않음
관리자-정책 마이그레이션 후 새로 생성된 네트워크 정책 관련 DFW(분산 방화벽) 규칙이 마이그레이션된 DFW 규칙보다 우선 순위가 높습니다.
해결 방법: 정책 API를 사용하여 필요에 따라 DFW 규칙의 순서를 변경합니다.