VirtualBox 구성해서 쿠버네티스 환경 구성.
구성 환경 :
HOST : Win 11
VM : Master-Node : 프로세스 2CPU, 8192 Mb 1대
Data-Node : 프로세스 2CPU, 4096, 2대
참조사이트 : https://koeiking11.tistory.com/entry/Virtual-Box-CentOs-%EA%B3%B5%EC%9C%A0-%ED%8F%B4%EB%8D%94-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0
참조사이트 : https://stranger-jey.tistory.com/27
- nginx 설치 할 때 Internal error occurred: failed calling webhook "validate.nginx.ingress.kubernetes.io" 난다.
참조사이트 : https://ikcoo.tistory.com/137
: https://pyrasis.com/jHLsAlwaysUpToDateKubernetes/Unit06/05
: https://pyrasis.com/jHLsAlwaysUpToDateKubernetes
Ingress 중요구문! 아래 내용을 넣어줘야 한다.
예제에서는 TLS 설정을 하지 않았기 때문에 강제 리다이렉션을 막기 위해서 Ingress의 어노테이션에 nginx.ingress.kubernetes.io/ssl-redirect: "false"를 추가하였습니다. 만약 TLS를 설정할 시에는 해당 어노테이션은 제거하십시오.
nginx.ingress.kubernetes.io/rewrite-target: /
nginx.ingress.kubernetes.io/ssl-redirect: "false"
참조사이트 : https://guide.ncloud-docs.com/docs/k8s-k8sexamples-ingress
- 도커를 쿠버네티스 v1.20 이상부터 지원을 안해서, 도커 레지스트리를 사용할 수 없다.
대신 Docker Registry를 Harbor 설치 해야하고, 인증서 특히 TLS 부분을 신경 써야 한다.
IP로 하면 안되고, 꼭 도메인 할당해서 해야 한다.
참조사이트 : https://ikcoo.tistory.com/229
: https://ikcoo.tistory.com/230
- sudo docker-compose up -d
- sudo docker-compose down
Client 에서 실행
```
sudo mkdir /etc/docker/certs.d/fnb.registry.com
sudo cp server.cert /etc/docker/certs.d/fnb.registry.com
sudo cp server.key /etc/docker/certs.d/fnb.registry.com
sudo cp ca.crt /etc/docker/certs.d/fnb.registry.com
sudo cp server.crt /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust
```
```
defailt config.toml 파일 생성
containerd config default > /etc/containerd/config.toml
[plugins."io.containerd.grpc.v1.cri".registry]
config_path = ""
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."my.registry.com"]
endpoint = ["https://my.registry.com"]
[plugins."io.containerd.grpc.v1.cri".registry.configs]
[plugins."io.containerd.grpc.v1.cri".registry.configs."my.registry.com".auth]
username = "admin"
password = "Harbor12345"
[plugins."io.containerd.grpc.v1.cri".registry.configs."my.registry.com".tls]
ca_file = "/home/myid/cert.d/ca.crt"
cert_file = "/home/myid/cert.d/server.cert"
key_file = "/home/myid/cert.d/server.key"
sudo systemctl restart containerd
```
- docker rmi $(docker images -f "dangling=true" -q) --force
- sudo crictl rmi $(sudo crictl images -f "dangling=true" -q) --force
- docker run -d -p 8088:8088 auth
- k exec -it pod명 /bin/bash
- 서비스명.네임스페이스명.svc.cluster.local:port/API주소
참조사이트 : https://may9noy.tistory.com/935
- path: /something(/|$)(.*)
참조사이트 : https://thekoguryo.github.io/oracle-cloudnative/oss/ingress-controller/2.nginx-ingress-path/
https://kubernetes.github.io/ingress-nginx/examples/rewrite/