공부합시다!
-
Kubernetes (K8S): HPA(Horizontal Pod Autoscaling)공부합시다!/Kubernetes 2023. 7. 4. 22:07
오늘은 K8S의 AutoScaling기능을 담당하는 HPA(Horizontal Pod Autoscaling: 이하 HPA)에 대해서 살펴보겠습니다. 1. HPA 의의 1.1. 워크로드 리소스(예: Deployment또는 StatePullSet)를 자동으로 업데이트하며, 워크로드의 크기를 수요에 맞게 자동으로 스케일링. 1.2. 수평 스케일링은 부하 증가에 대해 파드를 더 배치하는 것을 뜻함. 1.3. 부하량이 줄어들고, 파드의 수가 최소 설정값 이상인 경우, HorizontalPodAutoscaler는 워크로드 리소스(디플로이먼트, 스테이트풀셋, 또는 다른 비슷한 리소스)에게 스케일 다운을 지시. 1.4. HPA는 크기 조절이 불가능한 오브젝트(예: Daemonset)에는 적용할 수 없음. 1.5. HA..
-
Kubernetes (K8S): Object - 6-1. Storage: emptyDir공부합시다!/Kubernetes 2023. 7. 4. 00:13
emptyDir은 임시 볼륨입니다. 생명주기가 pod와 동일 동일 pod내에 복수개의 Container가 존재한다면 모든 Container가 공유합니다. pod존재하는 node에 특정 위치에 volume의 name으로 존재합니다. /var/lib/kubelet/pods/45df9acf-d3d5-466a-b213-25c200470c44/volumes/kubernetes.io~empty-dir 45df9acf-d3d5-466a-b213-25c200470c44는 임의의 문자열입니다. pod와 생명주기가 동일하다는 점 잊지마세요. pod내의 container가 삭제 되더라도 해당 volume은 존재합니다. 자세한 내용은 나중에 포스팅 합니다.
-
Kubernetes (K8S): pull rate limit 해결 - Containerd Local Repository공부합시다!/Kubernetes 2023. 6. 22. 17:26
원격지 docker hub의 Repository 사용으로 인한 pull rate limit를 docker를 이용하여 미리 다운로드한 Image를 Containerd에서 사용할 수 있는 방법입니다. 1. docker를 이용하여 다운로드 이미지 archive # docker save -o word.tar \ > nginx:1.14 nginx:1.23 nginx:latest \ > alpine:latest \ > httpd:latest \ > mysql:5.7 wordpress:5.6 \ > centos:7 2. K8S Cluster의 모든 Node로 scp를 이용한 파일 전송 scp word.tar root@10.0.0.{1..4}:/root/ 3. 전송한 파일을 containerd에 archive 해제 c..
-
Ansible: HAPROXY + Apache + Wordpress공부합시다!/Ansible 2023. 6. 14. 17:41
Haproxy와 apache web server를 동일 node에 구성하는 예제입니다. haproxy는 80 port를 web server는 8080 port를 사용합니다. 1. code --- - name: wordpress download & install, php7.4 install hosts: was1 tasks: - name: wget, httpd, php repository, php7.4 repo install yum: name: "{{ item }}" state: present loop: - wget - httpd - yum-utils - epel-release - http://rpms.remirepo.net/enterprise/remi-release-7.rpm - haproxy - name..
-
Ansible: nginx + wordpress공부합시다!/Ansible 2023. 6. 14. 17:31
nginx + wordpress 1. code --- - name: nginx & wordpress & php-fpm hosts: nginx tasks: - name: package install yum: name: - wget - yum-utils - epel-release state: present ignore_errors: yes - name: nginx package install yum: name: nginx state: present ignore_errors: yes - name: url download wordpress get_url: url: https://ko.wordpress.org/wordpress-5.8.6-ko_KR.tar.gz dest: ./ - name: archive & un..
-
CentOS7: Nginx + Wordpress + PHP7.4 + MySQL5.7공부합시다!/LInux 2023. 6. 14. 11:53
apache 웹서버에 Nginx 구성은 이미 해 보았으니 이제는 Nginx 웹서버에 wordpress를 구성해 보도록 하겠습니다. 대부분 동일한 과정 입니다만 추가로 php-fpm 설치 및 구성 작업이 존재합니다. 1. 설치된 packages의 최종 버젼 확인 1.1. php7.4.33 1.2. nginx1.20.1 1.3. wordpress5.8.6 2. 필수 package 설치 2.1. wget: url을 이용한 파일 다운로드 2.2. yum-utils: yum-config-manager를 이용한 php7.4 enable 2.3. epel-release: redhat 공식 리포지토리 2.4. nginx: Web Server 2.5. 설치 명령어 # yum install -y wget yum-utils..
-
Dockerfile - CentOS7 + HTTPD공부합시다!/Container 2023. 5. 19. 13:21
1. Dockerfile 1.1. docker inspect로 특정 App 실행하기 위해서 사용 1.2. 코드 형태로 image를 제작할 수 있는 TextFile 1.3. 특정 App를 실행하는 image 제작 1.4. 필수는 아니나 Dockerfile를 제작할 때에는 디렉토리 생성 후 해당 디렉토리에 접근해 사용할 것을 권장 # mkdir /test # cd /test # vi Dockerfile FROM httpd:/latest MAINTAINER sdkim # docker build -t test:1.0 . # docker images 1.5. 베이스 이미지, 컨테이너에서 실행되는 명령, 환경 변수 설정, 컨테이너에서 실행되는 데몬 등의 기능이 정의됨. 2. DockerFile의 기본구성 2.1. ..
-
Kubernetes (K8S): pull rate limit 해결 - Secret Base공부합시다!/Kubernetes 2023. 3. 31. 17:35
최근 docker or Kubernetes 사용중 pull rate limit 문제가 자주 발생합니다. 그 해결책을 조금 공유 하고자 합니다. 간단히 말해서 hub.docker.com 에 Login을 하는 방법입니다. 1. docker 1.1. # docker login 으로 hub.docker.com 로그인 2. Kubernetes 2.1. secret에 로그인 코드 생성 후 문제 해결 2.2. ngnix와 mysql를 생성하는 yml 파일 작성 2.3. apply 적용 2.4. 다운로드 제약 확인 2.5. 코드 작성 예시 2.6. secret 파일 작성 2.7. 각 yaml 파일의 끝에 코드 삽입 후 사용 2.8. yml 파일 적용 2.9. 제약 사항 없음을 확인 2.10. Patch 3. CLI 3..