티스토리 뷰

반응형


이번에는 시간 동기화에 대해 설명하겠습니다.


단독 서버에는 별로 사용할 일이 없는데요.


기껏해봤자, 시간을 매번 확인하기 위해서 사용됩니다.


시간 동기화는 각 서버들이 같은 시간대를 사용함으로써 효율을 상승하기 위함인데요.


아주 간단합니다.



시간 동기화는 총 3가지 방법이 있습니다.



1. 각 서버에서 네트워크가 되는 경우


2. 마스터만 네트워크가 될 경우 


3. 둘다 되지 않을 경우



총 3개가지 방법에 대해 설명하겠습니다.



1. 각 서버에서 네트워크가 되는 경우



[root@seob00 /]# rdate -s time.bora.net

[root@seob00 /]# date

Mon May 19 17:14:35 KST 2014

[root@seob00 /]# clock -w


두 서버에서 rdate -s time.bora.net 하면 됩니다.


time.bora.net에서 제공하는 네트워크 시간대를 그대로 할당받게 됩니다.



마지막 clock -w 명령어CMOS 시간을 현재 OS(시스템) 시간으로 변경한다는 뜻 입니다.


쉽게 말해. CMOS의 시간도 time.bora.net에서 제공하는 시간을 받는 것이죠.


반대로 시스템 시간을 CMOS 시간으로 변경하자고 하신다면 rdate -w 명령어를 입력하시면 됩니다.




2. 마스터만 네트워크가 될 경우 


이 방법부터는 NTP 라는 프로토콜을 사용해야합니다.


시간 서버로 시간을 동기화할 수 있습니다.


포트는 UDP 123 을 사용합니다.



마스터에서 먼저 수행하도록 하겠습니다.


[root@seob00 /]# ntpdate -b -s time.bora.net

[root@seob00 /]# date

Mon May 19 17:27:07 KST 2014

[root@seob00 /]# vi /etc/ntp.conf


일단 ntpd 서비스를 실행하지 않는채로 ntpdate 명령어를 합니다.


만약 ntpd 서비스가 구동되어있다면 ntpdate 명령어는 제대로 먹히지 않습니다.


#server 0.centos.pool.ntp.org iburst

#server 1.centos.pool.ntp.org iburst

#server 2.centos.pool.ntp.org iburst

#server 3.centos.pool.ntp.org iburst

server time.bora.net


/etc/ntp.conf에서 약 26번 줄에 server time.bora.net 라고 입력합니다.


재부팅 시 자동으로 시간이 동기화 됩니다.


[root@seob00 /]# service ntpd restart

Shutting down ntpd:                                        [FAILED]

Starting ntpd:                                             [  OK  ]

[root@seob00 /]# chkconfig ntpd on


ntpd 서비스를 올리고 재부팅 시에 ntpd가 자동으로 올라오도록 설정합니다.




다음은 슬레이브 입니다.


슬레이브에서도 /etc/ntp.conf을 설정해줘야합니다.


마스터에서는 server time.bora.net 였다면 슬레이브에서는 server <마스터 호스트네임>을 입력하시고 저장하시면 됩니다.


[root@seob01 ~]# rdate -s -p seob00

[root@seob01 ~]# date

Mon May 19 17:39:58 KST 2014

[root@seob01 ~]# service ntpd restart

Shutting down ntpd:                                        [FAILED]

Starting ntpd:                                             [  OK  ]

[root@seob01 ~]# chkconfig ntpd on


슬레이브에서도 재부팅 시 동기화를 위해서 ntpd를 시작해야합니다.




3. 둘다 되지 않을 경우


이때는 시간을 수동으로 설정해야합니다.


세가지 방법이 있는데요.


1. 시스템 시간을 CMOS 시간으로 변경


2. 그냥 지금 정해진 시간으로 사용


3. 임의로 시간을 변경




이 방법은 2. 마스터만 네트워크가 될 경우을 응용하시면 됩니다.


1. 시스템 시간을 CMOS 시간으로 변경

clock -w


2. 그냥 지금 정해진 시간으로 사용

조건없이 사용


3. 임의로 시간을 변경

date -s hh:mm:cc

ex) date -s 08:50:30  [ 오전 08시 50분 30초 ]


2. 마스터만 네트워크가 될 경우에서 마스터일 경우 ntpdate 명령어를 이용했습니다.


그 명령어 대신 위 명령어를 이용하여 변경 후.. 똑같이 해주시면 됩니다.




■ 주기적으로 시간 동기화


crontab을 이용하여 주기적으로 시간 동기화를 할 수 있습니다.


vi /etc/crontab을 열어 다음과 같이 입력합니다.


01 * * * * su - root /usr/bin/rdate -s time.bora.net && /sbin/clock -w 


위와 같이 입력하시면 매분마다 time.bora.net 시간과 동기화하며 CMOS 시간까지 맞춥니다.


반응형
댓글
공지사항
최근에 올라온 글