CRIU, Linux에서 프로세스 상태를 저장하고 복원하는 시스템

크리 우 (사용자 공간에서 검사 점 및 복원) 하나 또는 프로세스 그룹의 상태를 저장할 수있는 도구입니다. 그런 다음 이미 설정된 네트워크 연결을 끊지 않고 시스템 또는 다른 서버를 다시 시작한 후에도 저장된 위치에서 작업을 다시 시작합니다.

이 도구를 사용하면 실행중인 애플리케이션을 정지 할 수 있습니다. (또는 그 일부) 영구 저장소에 파일 모음으로 저장합니다. 그런 다음 파일을 사용하여 고정 된 위치에서 응용 프로그램을 복원하고 실행할 수 있습니다.

독특한 특징 CRIU 프로젝트의 커널이 아닌 사용자 공간에서 주로 구현됩니다.

CRIU 소개

CRIU 도구 OpenVZ 프로젝트의 일부로 개발되고 있습니다. 커널에서 체크 포인트 / 복원을 교체하는 것을 목표로합니다.

이기는하지만 주요 초점은 컨테이너 마이그레이션을 지원하는 것입니다., 사용자가 실행중인 프로세스 및 프로세스 그룹의 현재 상태를 확인하고 복원 할 수 있습니다.

현재, 이 도구는 x86-64 및 ARM 시스템에서 사용할 수 있습니다. y 다음 기능을 지원합니다.

  • 프로세스 : 계층, PID, 사용자 및 그룹 인증 자 (UID, GID, SID 등), 시스템 기능, 스레드, 실행 및 중지 상태
  • 응용 프로그램 메모리 : 메모리 매핑 파일 및 공유 메모리
  • 파일 열기
  • 파이프 및 FIFO
  • 유닉스 도메인 소켓
  • ESTABLISHED 상태의 TCP 소켓을 포함한 네트워크 소켓
  • 시스템 V IPC
  • 타이머
  • 신호
  • 터미널
  • 특정 시스템에 대한 커널 호출 : inotify, signalfd, eventfdyepoll

적용 영역 사이 CRIU 기술의 프로세스의 연속성을 중단하지 않고 운영 체제를 다시 시작합니다. 장기 실행, 격리 된 컨테이너 라이브 마이그레이션, 느린 프로세스 시작 속도 향상 (초기화 후 저장된 상태에서 시작할 수 있음), 서비스를 다시 시작하지 않고 커널 업데이트 수행, 주기적으로 장기 실행 작업 상태를 저장하여 충돌시 작업 재개 , 클러스터 된 노드 간로드 밸런싱, 다른 시스템에서 프로세스 복제 (원격 시스템으로 분기), 다른 시스템에서 분석을 위해 작동 중 또는 프로그램에서 더 많은 작업을 취소해야하는 경우에 사용자 애플리케이션의 스냅 샷을 생성합니다. CRIU는 OpenVZ, LXC / LXD 및 Docker와 같은 컨테이너 관리 시스템에서 사용됩니다.

CRIU 3.15의 새 버전 정보

현재 도구는 버전 3.15입니다.는 최근 출시되었으며 동결 / 복원 작업 중에 CRIU에서 직접 프로세스 이미지를 전송할 수있는 criu-image-streamer 서비스를 도입했습니다.

  • 로컬 파일 시스템에서 버퍼링없이 외부 저장소 (S3, GCS 등)에서 이미지를 전송할 수 있습니다.
  • MIPS 아키텍처에 대한 지원이 추가되었습니다.
  • 기존 PID 네임 스페이스에 속하지 않는 프로세스를 동결 한 다음 기존 PID 네임 스페이스로 복원 할 수 있습니다.
  • 파일을 확인하기 위해 추가 메커니즘이 추가되었습니다.
  • BPF 구조 BPF_HASH_OF_MAPS 및 BPF_ARRAY_OF_MAPS 고정 및 복원에 대한 지원이 추가되었습니다.
  • cgroup의 두 번째 버전에 대한 초기 지원이 추가되었습니다.

Linux에 CRIU를 설치하는 방법은 무엇입니까?

이 도구를 설치하는 데 관심이있는 사람들은 대부분의 Linux 배포판의 공식 채널에서 사용할 수 있다는 것을 알아야합니다.

따라서 도구를 설치하려면 터미널을 열고 패키지 관리자의 도움으로 도구를 찾거나 우리가 공유하는 다음 명령 중 하나를 사용하십시오.

사람들의 경우 Debian, Ubuntu 사용자 및이 두 가지 파생 제품 :

sudo apt install criu

사용자 인 사람들을 위해 아치 리눅스와 그 파생물 :

sudo pacman -S criu

사용자 인 경우 opensuse :

sudo zypper install criu

최종적으로 도구를 컴파일하려는 사람들을 위해 다음을 입력하여 수행 할 수 있습니다.

git clone https://github.com/checkpoint-restore/criu.git
cd criu
make clean
make
make install
sudo criu check
sudo criu check --all

그것에 대해 더 알고 싶다면 이 도구에 대한 세부 정보를 확인할 수 있습니다. 다음 링크에서.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.