배포
릴레인체인을 배포하는 방법을 알아봅니다.
배포(Deployment)
서버에 체인을 배포 하는 방법에 대해 작성되어 있는 문서입니다.
설명에 앞서, 이 문서에서는 네트워크를 통해 체인 스펙 파일을 다운로드 받아 사용하는 방법만을 설명합니다. 만약 해당 방식으로 진행을 원치 않을 경우, 파일을 업로드하거나 서버에서 직접 체인 스펙 파일을 만드는 등 다양한 방법으로 체인 스펙 파일을 등록하시기 바랍니다.
서버 배포 방법은 3가지 방법이 있습니다.
Systemd
Docker
Kubernetes
3가지 방법을 사용하여 배포하는 방법을 알아보겠습니다.
Systemd
Systemd는 Linux 호스트에서 서비스를 관리하는 일반적인 방법입니다. 프로세스가 활성화되어 실행 중인지 확인하고, 재시작에 대한 정책을 설정할 수 있으며, 호스트를 실행하는 사용자를 설정하고, 메모리 사용량을 제한하는 등의 작업을 수행할 수 있습니다.
또한 환경 변수 파일을 사용하여 변수를 서버별 자체 파일로 추상화할 수 있습니다.
Systemd를 사용하기 위해서는 먼저 service로 등록을 해주어야 합니다. 그러기 위해서 /etc/systemd/system 경로에 Infrablockspace.service를 만들어줍니다. 이후 아래 코드를 복사 붙여넣기 해준 다음 <binary file> 과 <options>에 필요한 옵션 값들을 넣어줍니다. <binary file>에는 릴레이체인일 땐 infrablockspace, 파라체인일 땐 infrablockspace-parachain을 입력해줍니다.
#/etc/systemd/system/Infrablockspace.service
[Unit]
Description=Infrablockspace Validator
[Service]
User=Infrablockspace
ExecStart=/home/Infrablockspace/<binary file> <options>
Restart=always
RestartSec=90
[Install]
WantedBy=multi-user.target작성 후, 다음 명령어를 통해 service를 등록해줍니다.
Docker
도커를 활용할 때에는 docker-compose.yml 파일을 사용해서 실행하는 것을 추천합니다.
도커 컴포즈 실행 전, 먼저 체인 스펙 파일을 다운로드 받아야 합니다. 아래 명령어를 통해 다운로드 받을 수 있습니다:
릴레이체인의 경우,
파라체인의 경우,
다운로드 받은 파일은 chain-spec이라는 폴더에 넣어줍니다. 없을 경우, 폴더를 생성해줍니다.
그런 다음 도커 컴포즈 관련 파일을 아래와 같이 작성해줍니다.
릴레이체인의 경우,
파라체인의 경우,
파라체인은 릴레이체인의 부트노드의 id가 필수적으로 필요합니다. 따라서 <bootnode id>를 채워줘야 합니다.
다음 명령어를 통해 실행해줍니다.
쿠버네티스(Kubernetes)
쿠버네티스에서 체인을 배포하기 위해서는 다음과 같은 파일들을 작성해야 합니다.
이때 동적 퍼시스턴트 볼륨 클레임이 가능하다는 전제입니다. 만약 동적 퍼시스턴트 볼륨 클레임이 안 될 경우, 퍼시스턴트 볼륨을 먼서 생성해 주시기 바랍니다.
릴레이체인의 경우,
statefuleset.yaml
service.yaml
pvc.yaml
파라체인의 경우, 작성 방법을 살펴보겠습니다. 아래 코드는 InfraDID용으로 작성된 코드입니다.
statefuleset.yaml
service.yaml
pvc.yaml
쿠버네티스에서 아래 명령어를 실행해주면, 정상적으로 코드가 생성되는 것을 확인할 수 있습니다.
헬름 차트(Helm charts)와 오퍼레이터의 경우 현재 개발 단계에 있어, 추후 업데이트 될 예정입니다.
더 알아보기
Last updated