블로그로 돌아가기

Kubernetes 클러스터에 Persistent Volume으로 WordPress를 배포하는 방법

Kubernetes 클러스터에 Persistent Volume으로 WordPress를 배포하는 방법

WordPress은(는) 인터넷에 블로그와 웹사이트를 배포하는 데 사용되는 가장 인기 있는 콘텐츠 관리 시스템 중 하나입니다. 또한 Docker 이미지로 DockerHub 레지스트리에서 사용할 수 있습니다. 이 Docker 이미지를 사용하여 Kubernetes 클러스터에 안정적이고 확장 가능한 웹사이트 플랫폼을 구축할 수 있습니다. Kubernetes에 WordPress를 배포하면 CI/CD 파이프라인을 구현하는 데 도움이 되며 새로운 업데이트를 출시하는 데 걸리는 시간이 단축됩니다. 또한 WordPress 웹사이트의 수평적 확장을 활성화하여 웹사이트 트래픽 급증에 대처할 수 있습니다.

이 가이드에서는 WordPress와 MySQL을(를) Persistent Volume과(와) 함께 Kubernetes 클러스터에 배포하는 방법을 보여줍니다.

전제 조건

Kubernetes 클러스터 확인

시작하기 전에 Kubernetes 클러스터의 상태를 확인하는 것이 좋습니다. kubectl 명령을 사용하여 Kubernetes를 확인할 수 있습니다.

모든 것이 정상이라면 다음과 같은 출력이 표시됩니다.

k8s nodes

MySQL용 Secret 생성

A Secret은(는) 비밀번호나 키와 같은 민감한 데이터를 저장할 수 있는 오브젝트입니다. 이 글에서는 Secret을 사용하여 MySQL 비밀번호를 저장합니다.

먼저, 다음 명령을 사용하여 base64로 인코딩된 비밀번호를 생성합니다.

다음 출력에서 비밀번호의 Secret 값을 얻을 수 있습니다.

다음으로, MySQL 및 WordPress용 secret.yaml 파일을 생성합니다.

다음 구성을 추가합니다.

파일을 저장하고 닫습니다. 그런 다음, 다음 명령을 사용하여 위의 구성을 Kubernetes 클러스터에 적용합니다.

다음과 같은 출력이 표시됩니다.

MySQL 및 WordPress용 PersistentVolume 생성

MySQL 및 WordPress 데이터를 저장하려면 PersistentVolume도 생성해야 합니다.

다음과 같이 pvc-mysql-wp.yaml 파일을 생성해 보겠습니다.

다음 구성을 추가합니다.

완료되면 파일을 저장하고 닫습니다.

다음으로, 다음 명령을 사용하여 Kubernetes 클러스터에 MySQL 및 WordPress용 PersistentVolume을 모두 생성합니다.

다음 출력에서 두 PersistentVolume을 모두 확인할 수 있습니다.

이제 다음 명령을 사용하여 두 PersistentVolume을 모두 확인할 수 있습니다.

다음과 같은 출력이 표시됩니다.

MySQL 디플로이먼트 생성

다음으로, MySQL 도커 이미지를 다운로드하고 컨테이너를 생성하며, 다음 위치에 PersistentVolume을 마운트하는 MySQL 디플로이먼트 설정 파일을 생성합니다: /var/lib/mysql.

다음 설정을 추가합니다.

완료되면 파일을 저장하고 닫습니다. 그런 다음 위의 구성을 Kubernetes 클러스터에 배포합니다.

다음과 같은 출력이 표시되어야 합니다.

Mysql Dep

다음 명령을 사용하여 MySQL 배포를 확인할 수 있습니다.

다음 출력에서 MySQL 배포 상태를 확인할 수 있습니다.

check deployments

WordPress 배포 생성

이제 WordPress 이미지를 다운로드하고 컨테이너를 생성하며, 웹사이트 데이터 파일을 위해 PersistentVolume을 /var/www/html에 마운트하는 WordPress 배포 구성 파일을 생성합니다. 이 파일은 또한 데이터베이스에 액세스하기 위한 WORDPRESS_DB_HOSTWORDPRESS_DB_PASSWORD 환경 변수를 생성합니다.

다음 구성을 추가합니다.

완료한 후 파일을 저장합니다. 그런 다음, 다음 명령을 사용하여 위의 구성을 Kubernetes 클러스터에 적용합니다.

다음 출력에서 성공적인 배포 메시지를 확인할 수 있습니다.

WordPress 배포를 확인하려면 다음 명령을 실행합니다.

다음 출력에서 WordPress 배포 상태를 확인할 수 있습니다.

get deployments

WordPress 웹 UI 접속

WordPress 대시보드에 접속하려면 LoadBalancer의 외부 IP와 포트 번호가 필요합니다. 다음 명령을 사용하여 이 정보를 검색할 수 있습니다.

다음 출력에서 LoadBalancer IP와 포트를 확인할 수 있습니다.

WordPress 파드에 대한 자세한 정보를 보려면 다음 명령을 실행합니다.

다음 출력에서 WordPress의 상세 정보를 확인할 수 있습니다.

이제 웹 브라우저를 열고 다음 URL을 사용하여 WordPress 설치 페이지에 접속합니다. http://78.141.194.181:3162. 다음 화면에서 WordPress 설치 페이지를 볼 수 있습니다.

Configure wordpress

언어를 선택하고 필요한 단계를 완료하여 설치 프로세스를 마칩니다.

결론

이 포스트에서는 Kubernetes 클러스터에서 영구 볼륨을 사용하여 MySQL 및 WordPress를 배포하는 방법을 설명했습니다. 웹사이트 트래픽에 따라 WordPress 배포를 확장할 수도 있습니다. 이제 개발 요구 사항에 따라 위의 배포를 사용할 수 있습니다.

또한, 저희 블로그에서 Docker 및 Kubernetes를 다루는 다른 튜토리얼도 확인해 보세요:

author

Preslav Dobrev

작성자 · CloudSigma

Preslav Dobrev는 CloudSigma의 크리에이티브 디자이너로서, 전통적이고 혁신적인 마케팅 채널을 활용하여 일관된 비즈니스 정체성을 구축하는 데 중점을 두고 있습니다. 그는 영향력 있는 브랜드 내러티브를 창출하기 위해 예술적 비전과 전략적 마케팅을 결합하는 데 능숙합니다.

댓글

아직 댓글이 없습니다. 첫 번째로 작성해 보세요.