94 lines
2.6 KiB
Markdown
94 lines
2.6 KiB
Markdown
# 구성 (Local 실행 기준)
|
|
1. mapping.yaml
|
|
> 마이그레이션 할 어노테이션 정의가 작성 되는 파일
|
|
```yaml
|
|
# 예시
|
|
nginx.ingress.kubernetes.io/ssl-redirect:
|
|
haproxy: haproxy.org/ssl-redirect
|
|
support: full
|
|
|
|
nginx.ingress.kubernetes.io/force-ssl-redirect:
|
|
haproxy: haproxy.org/ssl-redirect
|
|
support: full
|
|
|
|
nginx.ingress.kubernetes.io/backend-protocol:
|
|
haproxy: haproxy.org/backend-protocol
|
|
support: full
|
|
|
|
nginx.ingress.kubernetes.io/load-balance:
|
|
haproxy: haproxy.org/load-balance
|
|
support: full
|
|
```
|
|
support 기준은 아래와 같음
|
|
```yaml
|
|
full : 1:1 매핑 되는 옵션
|
|
# ex)
|
|
# nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
|
# haproxy.org/ssl-redirect: "true"
|
|
|
|
partial : 기능은 같으나, 방식이 다름
|
|
# nginx.ingress.kubernetes.io/limit-rps: "10"
|
|
# haproxy.org/rate-limit-requests: "10"
|
|
# haproxy.org/warning-limit-rps: "burst/period semantics differ"
|
|
|
|
unsupported : 지원 되지 않음
|
|
|
|
# ex)
|
|
# nginx.ingress.kubernetes.io/configuration-snippet: |
|
|
# more_set_headers "X-Test: foo";
|
|
```
|
|
|
|
2. migrate.py
|
|
> 실행 파일, 옵션은 아래와 같음 (pip install ruamel.yaml 실행 필요)
|
|
```shell
|
|
--single : 하나의 파일로 결과물 생성
|
|
--split : 각각의 yaml 파일로 저장
|
|
--out : 저장 경로 설정
|
|
--ingress-class : ingressClassName 설정
|
|
--report : report 파일 저장 경로
|
|
--mapping : 맵핑 파일 지정 (default : mapping.yaml)
|
|
```
|
|
|
|
# 구성 (Kubernetes 실행 기준)
|
|
1. Dockerfile
|
|
> 이미지 빌드 수행
|
|
|
|
2. mapping.yaml 파일 configmap으로 Kubernetes에 배포
|
|
```yaml
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: ingress-annotation-mapping
|
|
namespace: default
|
|
data:
|
|
mapping.yaml: |
|
|
nginx.ingress.kubernetes.io/ssl-redirect:
|
|
haproxy: haproxy.org/ssl-redirect
|
|
support: full
|
|
|
|
nginx.ingress.kubernetes.io/force-ssl-redirect:
|
|
haproxy: haproxy.org/ssl-redirect
|
|
support: full
|
|
|
|
nginx.ingress.kubernetes.io/backend-protocol:
|
|
haproxy: haproxy.org/backend-protocol
|
|
support: full
|
|
|
|
nginx.ingress.kubernetes.io/load-balance:
|
|
haproxy: haproxy.org/load-balance
|
|
support: full
|
|
|
|
nginx.ingress.kubernetes.io/rewrite-target:
|
|
haproxy: haproxy.org/path-rewrite
|
|
support: full
|
|
|
|
nginx.ingress.kubernetes.io/proxy-connect-timeout:
|
|
haproxy: haproxy.org/proxy-connect-timeout
|
|
support: full
|
|
```
|
|
|
|
3. Pod 배포
|
|
```
|
|
작성중
|
|
```
|