회원가입

로그인

아이디
비밀번호
ID/PW 찾기
아직 회원이 아니신가요? 회원가입 하기

AWS(EC2) - swap 메모리 생성

Profile
맥노턴

logo-aws_title_aws.jpg

AWS EC2 의 1G의 물리적 메모리는 별 작업이 없더라도 금새 소모되기 마련.

swap 이라는 일종의 가상메모리를 생성하여 부족한 메모리를 확보할 수 있다.

 

리눅스 환경에서 스왑메모리는

  1. 파티션 설정 : 가상서버 환경이라 초기부터 파티션을 설정해야 하는데, 이 방법으로는 접근하기가 쉽지 않다.
  2. 파일 생성 : 사용하는 파티션에 스왑파일을 생성하는 방법으로 극복해보자. 과거 윈도우 시스템이 사용하던 방법이다.

 

정말 물리적 메모리가 필요한 상황이 아니라 가끔 오버되는 메모리로 시스템이 멈추는 상황을 막고 싶다면 가장 합리적인 방법이라고 본다.

 

순서는

  1. 원하는 크기의 파일 생성
  2. 스왑메모리를 파일로 지정, 활성화
  3. 시스템 설정

 

1. dd

# sudo dd if=/dev/zero of=/swapfile bs=1M count=1024

1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 15.6017 s, 68.8 MB/s

뭐, 그냥 공식같은 커맨드다. 빈 파일을 / 디렉토리에 swapfile 이라는 이름으로 생성하고, 블럭사이즈는 1M로 1024번 반복해서 1GB짜리 파일을 생성한다.

뭐, 성격상 / 디렉토리에 swapfile 을 생성하고 싶지 않다면, /var/swapfile 이나 /home/swap 이나 맘대로 지정해도 좋다.

 

2. 스왑파일로 지정

# sudo mkswap /swapfile

Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=..........

# sudo swapon /swapfile

swapon: /swapfile: insecure permissions 0644, 0600 suggested.

앞서 만든 빈 파일을 스왑파일로 생성하고, 스왑을 활성화한다. 물리적 메모리 1G + 가상메모리 1G 가 되는 순간이다.

퍼미션을 제안해준다. 퍼미션은 기본 중의 기본. 관리 잘하자.

 

3. 파일시스템으로 설정

# sudo vi /etc/fstab

...

/swapfile swap swap defaults 0 0

 

/etc/fstab 파일을 열어 맨 마지막 행에 /swapfile을 파일시스템으로 설정하여, 시스템이 재시작되더라도 활성화되도록 한다.

 

 

참고. 유용한 커맨드 소개

스왑이 활성화 된 파티션과 사이즈

# swapon -s
Filename                Type        Size    Used    Priority
/swapfile                 file    1048572         0         -1
 

메모리 용량 살펴보기

# free -k
             total       used       free     shared    buffers     cached
Mem:       1019444    1005012      14432         12      18288      71412
-/+ buffers/cache:     915312     104132
Swap:      1048572     203052     845520
 

모든 스왑 끄기/켜기

# swapoff -a

# swapon -a

 

서버 관리는 이렇듯 손이 많이 간다. 힘내자.

Profile
맥노턴
레벨 30
565066/686490
80%
McNorton & Education Lab.
Director
댓글
0
댓글 쓰기
권한이 없습니다.

로그인

아이디
비밀번호
ID/PW 찾기
아직 회원이 아니신가요? 회원가입 하기