16.2. 경로 생성
웹 콘솔 또는 CLI를 사용하여 비보안 및 보안 경로를 생성할 수 있습니다.
웹 콘솔을 사용하여 탐색의 애플리케이션 섹션에 있는 경로 페이지로 이동할 수 있습니다.
경로 생성 을 클릭하여 프로젝트에 경로를 정의하고 생성합니다.
그림 16.1. 웹 콘솔을 사용하여 경로 생성
CLI를 사용하여 다음 예제에서는 보안되지 않은 경로를 생성합니다.
$ oc expose svc/frontend --hostname=www.example.com
name 옵션을 사용하여 지정하지 않는 한 새 경로는 서비스의 이름을 상속합니다.
보안되지 않은 경로 생성의 YAML 정의
apiVersion: v1
kind: Route
metadata:
name: frontend
spec:
host: www.example.com
path: "/test" 1
to:
kind: Service
name: frontend
CLI를 사용하여 경로 구성에 대한 자세한 내용은 경로 유형을 참조하십시오.
비보안 경로는 기본 구성이므로 설정하는 것이 가장 간단합니다. 그러나 보안 경로는 연결을 비공개로 유지할 수 있는 보안을 제공합니다. 키 및 인증서(PEM-format 파일)로 암호화된 보안 HTTPS 경로를 생성하려면 create route
명령을 사용하고 선택적으로 인증서와 키를 제공할 수 있습니다.
TLS 는 HTTPS 및 기타 암호화된 프로토콜용 SSL을 대체하는 것입니다.
$ oc create route edge --service=frontend \ --cert=${MASTER_CONFIG_DIR}/ca.crt \ --key=${MASTER_CONFIG_DIR}/ca.key \ --ca-cert=${MASTER_CONFIG_DIR}/ca.crt \ --hostname=www.example.com
생성된 경로의 YAML 정의
apiVersion: v1 kind: Route metadata: name: frontend spec: host: www.example.com to: kind: Service name: frontend tls: termination: edge key: |- -----BEGIN PRIVATE KEY----- [...] -----END PRIVATE KEY----- certificate: |- -----BEGIN CERTIFICATE----- [...] -----END CERTIFICATE----- caCertificate: |- -----BEGIN CERTIFICATE----- [...] -----END CERTIFICATE-----
현재 암호로 보호된 키 파일은 지원되지 않습니다. HAProxy는 시작 시 암호를 입력하라는 메시지를 표시하고 이 프로세스를 자동화할 수 없습니다. 키 파일에서 암호를 제거하려면 다음을 실행합니다.
# openssl rsa -in <passwordProtectedKey.key> -out <new.key>
키와 인증서를 지정하지 않고 보안 경로를 생성할 수 있습니다. 이 경우 라우터의 기본 인증서가 TLS 종료에 사용됩니다.
OpenShift Container Platform에서 TLS 종료는 사용자 정의 인증서를 제공하기 위해 SNI 를 사용합니다. 포트 443에서 수신된 모든 비SNI 트래픽은 TLS 종료 및 기본 인증서로 처리되며, 이 경우 요청된 호스트 이름과 일치하지 않을 수 있으므로 검증 오류가 발생합니다.
모든 유형의 TLS 종료 및 경로 기반 라우팅 에 대한 자세한 내용은 아키텍처 섹션에서 확인할 수 있습니다.