'가상서버'에 해당되는 글 5건

  1. 2009.12.21 SCVMM 관리자 콘솔 이용한 가상서버 다른 Hyper-V서버로 이동
  2. 2009.11.27 ipvsadm을 이용한 LVS 시스템 구축
  3. 2009.10.06 Hyper-V 물리적서버->가상서버 변경시 네트워크 오류
2009. 12. 21. 18:36

SCVMM 관리자 콘솔 이용한 가상서버 다른 Hyper-V서버로 이동

이동하고 싶은 가상컴퓨터을 선택하고.
작업 목록에 있는 마이그레이션을 선택한다.

이동하고 싶은 Hyper-V 서버가 표시된다. (별표가 많을수록 서버사양의 리소스가 많다는것을 표시한다)

이동경로을 폴더을 선택하고

해당 네트워크을 선택한다.

선택한 내용을 종합적으로 보여준다.

현재 가상 컴퓨터가 이동 작업을 표시해 주고 있다.
이동을 하는데 한 2시간 정도 소요되는것 같다. (파일용량 30G, 허브 100MB)


출처 : http://applewave.tistory.com

Trackback 0 Comment 0
2009. 11. 27. 22:29

ipvsadm을 이용한 LVS 시스템 구축

Linux Virtual Server 란?

1대의 서버로 증가하는 사용자들을 처리하기 힘들때 2대이상의 서버를 구축하여 로드  하는 운영 시스템이다.

 

일반적으로 DNS의 라운드 로빈  로드 밸런싱 하는 방법이 있으나, LVS 시스템은 라운드 로빈 방식  아니라 총 4가지 방법으로 로드 밸런싱을 할수 있어 사용자의 상황에  대처할수 있다.

 

1. 라운드 로빈(round-robin)

로드 밸런서로 들어오는 요청들을 차례대로 순차적으로 각각의 서버로 할당하는 

DNS 로도 쉽게 구현이 가능한 방식이다.

 

2. 가중 라운드 로빈(weighted round-rovin)

동작 자체는 라운드 로빈 방식이지만, 로드 밸런싱을 할 서버들이 각각  사양일 경우 서로 다른 가충치를 설정하여 요청들을 할당하는 방식이다.

 

3. 최소 연결(least connection)

 서버들중에서 가장 적은 수의 요청을 처리하고 있는 서버를 선택하여 요청을  할당하는 방식이다. 이 방식의 장점은 서버들의 현재 부하 상태를 동적으로  요청을 처리할수 있다.

 

4. 가중  연결 (weighted least connection)

 연결 방식을 따르지만, 가중 라운드 로빈 방식과 마찮가지로 각 서버에  다른 가중치를 설정하여 요청들을 할당할수 있다.

 

 시스템에서 NAT, DR(Direct routing) IP터널링 으로 구성이 가능하지만 여기서는 DR방식으로 

 

DR(Direct rounting) 기본 구성도는 아래 링크를 참고  바랍니다.

http://wiki.kldp.org/Translations/html/Virtual_Server-KLDP/VS-DRouting.gif

 

 

이제  시스템을 구축해보자

 

모든 설명은 레드햇 기반인 CentOS  버전을 기준으로 설명한다.

웹서버 2대에 대해서 1대의 LVS 가  밸런싱을 하는 방식에 대해서 설명한다.

 

Virtual IP  192.168.10.10

Real IP(Web1) = 192.168.10.20

Real IP(Web2) = 

 

LVS 서버에 yum명령을 사용하여 ipvsadm 을 설치한후 

 

#yum -y install ipvsadm

# ipvsadm 
IP Virtual Server version 1.2.1 (size=4096)
 LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port          Forward Weight ActiveConn InActConn

#

 

이렇게 나오면 제대로 설치가 된것이다.

 

이제 LVS 서버에 사용할 Virtual IP를 설정해보자.

 

# ifconfig eth0:1 192.168.10.10 netmask 255.255.255.0 up

 

ifconfig 를 사용한 네트워크 설정은 서버가 재부팅이 되면 사라지기때문에,

 파일을 생성해주자.

 

또한 해당 시스템을 통해 다른  패킷이 포워딩 될수 있도록 수정하자.

 

#vi 

net.ipv4.ip_forward=1

 

#sysctl 

 

이제 설치한 ipvsadm 에 새로운 서비스를 

 

#ipvsadm -A -t 192.168.10.10:80 -s rr

192.168.10.10 IP의 tcp 80번포트를 라운드 로빈(rr) 방식으로 새로운 서비스로 

자세한 명령어 옵션은 ipvsadm --help 로 확인해보자

참고로  언급된 4가지 스케쥴링 방법을 모두 적용가능하다

예) ipvsadm  -t 192.168.10.10:80 -s wlc (가중 최소 연결)

 

 추가가 끝났으면, 로드 밸런싱을 할 대상 서버들의 Real IP를 추가해준다.

 

#ipvsadm -a -t 192.168.10.10:80 -r 192.168.10.20:80 -g

#ipvsadm -a -t 192.168.10.10:80 -r 192.168.10.30:80 -g

#ipvsadm -L

IP Virtual Server version  (size=4096)
Prot LocalAddress:Port Scheduler Flags
   -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.10.10:http rr
   ->           Route   1      0         0
   -> 192.168.10.30:http         Route   1      0          

 

LVS서버의 설정은 끝났다. 하지만 이 정보는  재부팅이 되면 날아간다.

재부팅후에 정보가 남아 있도록 약간의 작업을  진행해주자.

 

#/etc/rc.d/init.d/ipvsadm save

 ipvsadm on

참고) ipvsadm save 명령을 내리면 /etc/sysconfig/ipvsadm  설정 값이 저장된다.

 

이제 LVS 서버의 설정은  끝이 났다.

 

이제 서비스 되어질 웹서버 2대에  설정한다.

설정방법은 2대다 동일하기 때문에 1대만 설명하겠다.

 

먼저 웹서버에서도 가상 디바이스를 설정하여 Virtual IP를 추가해야한다.

 위에 설명되어 있다. 참고바란다.

 

여기서 의문점이 생긴다.  가상 디바이스를 추가하여 Virtual IP를 할당해주어야 하는데.

여기서 ARP  발생할수 있다. 그렇다면 ARP는 무엇인가.

 

ARP란?

IP주소를 해당 MAC주소로 바꿔주는 프로토콜을 말한다. 네트워크장비는 기본적으로  통신을 하기때문에 IP주소를 MAC주소로 변환을 해줘야 통신이 가능해진다.

클라인트가 가상 IP를 요청했을 때 동일 네트워크에 Virtual  2개 이상 갖고 있기 때문에 경우에 따라서 Real Server에서 응답을  경우가 있다고 한다. 이렇게 되면 로드밸런싱이 되지 않기 때문이다.
arptables_jf를 이용해서 응답하지 않도록 해줘야 한다.

#yum -y arptables_jf

#arptables -i  -A IN -d 192.168.10.10 -j DROP
#arptables -i eth0 -A  -d 192.168.10.10 -j mangle --mangle-ip-s 192.168.10.20
#/etc/rc.d/init.d/arptables_jf save
#chkconfig arptables_if 

 

arptables_jf save 명령 사용시에도  /etc/sysconfig/arptables 파일에 값이 기록되어 저장된다.

 

 을 이용하여 LVS 시스템을 Direct Routing 구성으로 구축해보았다.

ps) 단순히 rr(라운드 로빈) 방식만을 취한다면 차라리 DNS  로빈 설정이 훨신 수월하고 편리하다는 느낌이다. 하지만 위에 언급된 4가지  운영 상황에 맞게 설정할수 있어 충분히 장점이 될것 같고, L4 등도 고가라 도입하기가 쉽지 않을떄 한번 고려해볼만한 LVS 시스템이라 생각된다.


출처 : 리눅스포탈


Trackback 0 Comment 0
2009. 10. 6. 18:54

Hyper-V 물리적서버->가상서버 변경시 네트워크 오류

물리적 서버를 가상서버로 옮길때 물리적 서버와 가상서버 간에 네트워크 문제가 발생이 된다.
이 문제는 물리적서버와 가상서버의 통신이 가끔 원할하지 않는 현상으로 발생하여 문제점을 찾기가 어렵다.
그리고 가상 서버와 물리적 서버 둘다 켜져 있을 때 가끔씩 발생을 하며.
둘중 한대의 서버가 꺼져있을때는 문제가 발생하지 않는다.

원인
SCVMM으로 생성 한 Virtual Image와 Real System의 MAC Address가 동일하게 설정되어 있어 Corrupt 발생 됨.

해결방법
Virtual Image의 속성->Network Adapter -> MAC Address를 Static에서 Dynamic으로 변경한 후 문제가 해결되었습니다.

* 변경할 서버 전원을 종료 한 후에 virtual image setting 에 들어가서 Network Adapter를 선택하게되면 설정 변경이 가능하다.




출처 : http://applewave.tistory.com

Trackback 0 Comment 0