아래는 예시 화면 입니다. "rcB~~"의 토큰을 _acme-challenge.yourdomain.com. 도메인의 TXT 레코드로 등록 해줍니다. (토큰 값은 매번 다릅니다) 등록 후 약 2~3분이 지나고 TXT 레코드가 잘 등록 되었는지 확인 후 엔터를 눌러 진행하면 발급이 완료 됩니다.
Let's Encrypt 와일드 카드 SSL 인증서 갱신
Let's Encrypt 인증서의 경우 유효 기간이 90일 이며, 만료일 30일 전부터 갱신이 가능 합니다.
docker run -it --rm --name certbot \
-v '/etc/letsencrypt:/etc/letsencrypt' \
-v '/var/lib/letsencrypt:/var/lib/letsencrypt' \
certbot/certbot renew --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory
Let's Encrypt 인증서의 유효 기간이 짧다보니, 아래와 같이 renew 스크립트 파일을 만들어 크론탭에 등록하여 자동 갱신하도록 설정하는것이 좋습니다.
cd /root
vim letsencrypt_renew.sh
#!/bin/bash
docker run -it --rm --name certbot \
-v '/etc/letsencrypt:/etc/letsencrypt' \
-v '/var/lib/letsencrypt:/var/lib/letsencrypt' \
certbot/certbot renew --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory
:wq
chmod 750 /root/letsencrypt_renew.sh
crontab -e
# 짝수달 3일 0시 0분에 renew 스크립트 실행
00 00 03 */2 * /root/letsencrypt_renew.sh
쿠버네티스 kube-flannel CrashLoopBackOff 해결 방법 (Error registering network: failed to acquire lease: node "node1" pod cidr not assigned)
아래와 같이 kube-flannel이 CrashLoopBackOff가 발생하였습니다.
로그를 확인해본 결과 Error registering network: failed to acquire lease: node "node1" pod cidr not assigned 에러가 발생중인것을 확인할 수 있었는데, 해외 문서에 따르면 불분명한 문제(?)로 Pod CIDR 임대 실패하여 발생하는 에러라고 합니다.
저는 아래와 같이 해당 현상을 해결할 수 있었는데, 우선 아래 명령어를 입력하여 kube-controller-manager.yaml 파일을 열어주세요.
vim /etc/kubernetes/manifests/kube-controller-manager.yaml
allocate-node-cidrs=true는 재대로 설치 했다면 true로 되어있을 것이고, cluster-cidr를 확인 후 나와줍니다.
이후 master node에서 아래와 같이 입력해주면 되는데, 각자의 환경에 맞게 노드명과 CIDR를 수정하여 입력해주시면 됩니다.
저의 경우 node1, node2, node3이 있으므로 노드명을 변경해가며 총 3번 입력 후 kube-flannel이 재대로 Running 되는것을 확인할 수 있습니다.