Table of Contents | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
bsr 설치 패키지는 Windows 와 Linux 용 패키지가 있으며, Linux 용은 RHEL(CentOS(RHEL) 6.4 이상 rpm 패키지와 패키지, Ubuntu 16.04 LTS 이상 deb 패키지, SUSE 패키지로 구분하여 배포합니다. 설치 패키지를 구하려면 맨텍 기술연구소로 문의하시기 바랍니다.(dev3@mantech기술연구소(bsr@mantech.co.kr)로 문의하시기 바랍니다.
Note |
---|
주의 사항 bsr 은 drbd 와 같이 설치해 운용할 경우 시스템 자원 사용에 대한 충돌이 발생합니다. 시스템에 drbd가 기존에 설치 되어 있었다면 이를 제거해야 합니다. |
Windows
설치
Windows 용 인스톨러를 실행시키고 설치 위자드에서 안내하는 단계에 따라 손쉽게 설치할 수 있습니다. 설치가 완료되면 시스템을 리부팅해야 재시작해야 합니다.
설치
...
경로
설치가 성공적으로 완료되면 아래와 같이 디렉토리가 디렉터리가 구성됩니다.
bin
...
bsr 서비스를 포함한 바이너리 실행 파일 및 스크립트(bsrsupport 등) 파일들이 위치합니다.
etc
구성 파일 경로 입니다.
jre
설치 패키지를 위한 Java
...
런타임의 경로입니다.
...
bsrservice
bsr service 바이너리의 경로입니다.
bsr service 는 복제 수행을 위한 초기화 작업을 수행합니다. 서비스가 중단 될 경우 복제가 중단될 수 있기 때문에 서비스 제어에 주의를 요합니다.
업데이트
log
bsr 로그 파일의 경로 입니다.
Info |
---|
Windows bsr 은 넷링크와 서비스 용도로 TCP 루프백 5678, 5679 포트를 사용합니다. 이 포트를 변경 하려면 다음 레지스트리 경로의 키 값을 변경하고 시스템을 재 시작 해야 합니다.
|
모듈 적재
Windows bsr 커널모듈은 시스템이 시작되어 OS 커널이 로드되는 이른 시점에 자동으로 적재 됩니다.
서비스 구성
bsr 설치 패키지에 의해 자동 구성 됩니다.
삭제
제어판의 프로그램 및 기능에서 삭제합니다. 삭제 후 시스템을 재 시작해야 합니다.
업데이트
업데이트는 구 버전 프로그램을 삭제한 후 신 버전 프로그램을 설치 하는 작업입니다.
bsr이 설치된 상태에서 신규 버전의 패키지를 재설치하면 재 설치하면 업데이트 설치가 자동으로 수행됩니다. 업데이트 후 시스템을 재시작해야 합니다.
Info |
---|
기존 버전을 제어판의 프로그램 및 기능에서 삭제하여 재설치를 하는 방식은 삭제 후 리부팅이 필수이기 때문에 번거로울 수 있고, 만약 삭제 후 (실수로) 리부팅 없이 재설치를 하면 심각한 문제가 발생할 수 있으므로 주의를 요합니다. 제어판에서 삭제 후 업데이트를 하는 방식은 권장하지 않습니다. |
삭제
bsr의 삭제는 제어판의 프로그램 및 기능에서 bsr 패키지를 삭제할 수 있습니다. 삭제 후 머신을 리부팅해야 합니다.
Linux
리눅스는 커널모듈과 유틸리티 패키지를 구분하여 배포하기 때문에 각각 개별적으로 설치해야 하고 bsr 서비스를 별도로 구성해야 합니다.
...
시큐어 부트 지원
설치
커널 모듈 설치
Info |
---|
[root@bsr-01 bsr]# rpm -ivh /root/rpmbuild/RPMS/x86_64/kmod-bsr-1.6.0_2.6.32_754.24.3-PREALPHA3.el6.x86_64.rpm |
유틸리티 설치
제어판에서 프로그램을 삭제한 후 재 설치 할 수도 있지만 삭제 후 시스템 재 시작을 반드시 해야 합니다. 만약 재 시작 없이 프로그램 재 설치를 바로 진행할 경우 비정상적인 설치로 인해 시스템 크래쉬가 발생하므로 주의해야 합니다. |
Note |
---|
랜카드 교체 bsr 설치 이후 네트워크 랜카드의 교체가 있을 경우 bsrcon /nodelayedack <resource> 명령을 사용하여 수동으로 Disable TCP Delayed ACK 의 내용을 다시 적용해야 합니다. 이를 하지 않을 경우 성능 저하가 발생할 수 있습니다. |
RHEL
커널패키지 호환성
윈도우즈의 ABI 상위 호환 정책과는 다르게, 리눅스에선 일반적으로 특정 버전의 리눅스 커널 패키지는 상위 커널 버전에 호환되지 않습니다. 커널 버전이 올라갈수록 새로운 기능과 개선 사항이 비호환적으로 추가되기 때문에, 이전 버전의 커널 패키지를 설치하면 호환성 문제가 발생할 수 있습니다. 패키지가 상위 버전 커널에서 우연히 설치가 되더라도 동작 중에 커널패닉 등 심각한 문제가 발생할 수 있습니다.
이처럼 bsr 도 특별하게 명시하지 않는 한 하위 버전 패키지의 상위 커널 호환을 보장하지 않으며 특정 커널 버전을 위해 빌드된 전용 버전의 bsr 패키지로 설치해야 합니다.
설치
유틸리티
Info |
---|
[root@bsr-01 x86_64]# rpm -ivh bsr-utils-1.6-A3.el7.x86_64.rpm |
커널모듈
Info |
---|
[root@bsr-01 bsr]# rpm -ivh kmod-bsr-1.6_3.10.0_957-A3.el7.x86_64.rpm |
bsr 커널모듈 설치는 시스템 재 시작을 요구하지 않습니다.
시큐어 부트
시큐어부트 구성을 고려하지 않을 경우 이 단계는 건너 뜁니다.
커널 모듈 설치 과정에 /etc/pki/mantech/ 경로에 공개키가 설치됩니다. 해당 공개키를 UEFI 콘솔에 등록(Enroll)하기 위해 먼저 다음과 같이 등록을 요청(import) 합니다.
Info |
---|
#mokutil --import /etc/pki/mantech/bsr_signing_key_pub.der input password: input password again: |
비밀번호 지정 후 리부팅 합니다. 리부팅 시작 시점에 UEFI 콘솔에서 해당 공개키를 등록(Enroll)합니다.
설치 경로
/usr/sbin/
바이너리 실행 파일들(bsradm, bsrcon, bsrmeta, bsrmon, bsrsetup, bsrsupport, bsrwatch)이 위치합니다.
/usr/lib/bsr/
스크립트 파일(bsr service, notify)의 경로입니다.
/etc/bsr.d/
구성파일의 경로 입니다.
/var/log/bsr/
bsr 로그의 경로 입니다.
/usr/lib/modules/{kernel-version}.{version}.x86_64/extra/bsr/
bsr.ko 모듈 파일의 경로 입니다.
모듈 적재
bsr 커널 모듈을 적재합니다.
Info |
---|
# modprobe bsr # lsmod |grep bsr bsr 52113408 0 libcrc32c 16384 4 nf_conntrack,nf_nat,bsr,xfs |
Info |
---|
[root@bsr-01 bsr]# modinfo bsr [root@bsr-01 x86_64]# rpm -ivh /root/rpmbuild/RPMS/x86_64/bsr-utils-1.6.0-PREALPHA3.el6.x86_64.rpm |
적재
bsr 모듈을 적재 합니다.
Info |
---|
[root@bsr-01 bsr]# modprobe bsr |
bsradm -V |
Note |
---|
시큐어부트와 관련하여 커널 모듈 적재에 실패할 경우 /wiki/spaces/B/pages/1634173020 문서를 참고하여 시큐어부트 코드서명 과정을 단계 별로 진행해 보세요. |
서비스 구성
시스템이 시작될 때 항상 bsr 리소스를 자동으로 기동(up) 시키려면 bsr 서비스를 활성화 하고 svc-auto-up 옵션을 구성해야 합니다. svc-auto-up 의 기본값은 yes 입니다.
RHEL 6
chkconfig bsr on
service bsr start
RHEL 7 or Ubuntu
systemctl enable bsr
systemctl start bsr
Code Block |
---|
resource r0 {
...
on hostname {
options {
svc-auto-up yes;
}
}
...
} |
삭제
삭제는 다음의 과정을 거칩니다.
리소스 중지
서비스 중지
커널 모듈 삭제
유틸리티 삭제
Info |
---|
bsradm down all systemctl stop bsr rpm -e kmod-bsr rpm -e bsr-utils |
업데이트
업데이트는 이미 설치된 버전을 삭제하고 새 버전으로 재 설치하는 작업입니다.
먼저 제품을 삭제한 후 다음의 업데이트 과정을 차례로 수행합니다.
유틸리티 업데이트
Info |
---|
[root@bsr-01 bsr]# rpm -Uvh bsr-utils-1.6-A4.el7.x86_64.rpm |
커널 모듈 업데이트
Info |
---|
[root@bsr-01 bsr]# rpm -Uvh kmod-bsr-1.6_3.10.0_957-A4.el7.x86_64.rpm |
시큐어 부트
이 단계는 시큐어부트가 구성되어 있을 경우에만 해당합니다.
기존의 bsr 모듈 공개키가 이미 등록된 상태이면 관련 업데이트는 필요하지 않습니다.
만약 시큐어 부트를 위한 개인키-공개키가 갱신되었다면 시큐어 부트 설정 과정을 다시 수행해야 합니다.
Ubuntu
설치
필수 패키지
Ubuntu 패키지는 동적 커널모듈 지원(Dynamic Kernel Module Support(DKMS))을 사용하고 있으며 이를 위해 아래 패키지들의 설치를 필요로 합니다.
Info |
---|
root@ubuntu:/home/mantech# apt-get install git build-essential debhelper dkms docbook-xsl help2man python-all python-dbus python-gobject dh-systemd flex autoconf automake |
os 버전에 따라 특정 패키지가 제공되지 않아 에러가 발생할 수 있습니다.
E: Package 'python-dbus' has no installation candidate
E: Unable to locate package python-gobject
E: Unable to locate package dh-systemd
에러가 발생하는 패키지들은 제외하고 설치를 다시 시도하십시오.
root@ubuntu:/home/mantech# apt-get install git build-essential debhelper dkms docbook-xsl help2man python-all flex autoconf automake
유틸리티
Info |
---|
root@ubuntu:/home/mantech# dpkg -i bsr-utils_1.6-A3_amd64.deb |
커널모듈
Info |
---|
root@ubuntu:/home/mantech# dpkg -i bsr-dkms_1.6-A3_all.deb |
의존성 문제로 인해 설치에 실패할 경우 아래 명령을 통해 의존성 문제를 해결하고 재 시도 하면 됩니다.
Info |
---|
root@ubuntu:/home/mantech# apt-get -f -y install |
bsr 커널모듈 설치는 시스템 재 시작을 요구하지 않습니다.
시큐어 부트
dkms 패키지는 설치 최종 단계에서 third-party drivers 를 위한 MOK 생성 및 코드서명을 자동으로 진행합니다.
시큐어부트 구성을 고려하지 않을 경우 이 단계는 건너 뜁니다.
생성된 공개키 등록을 위해 모듈 설치 중 아래와 같은 화면이 출력됩니다.
...
OK 선택 후, MOK 등록에 사용될 암호를 입력합니다.
...
시스템 리부팅 후 UEFI 콘솔에 진입하여, 공개 키를 시스템에 등록합니다.
...
Info |
---|
|
설치 경로
/usr/sbin/
바이너리 실행 파일들(bsradm, bsrcon, bsrmeta, bsrmon, bsrsetup, bsrsupport, bsrwatch)이 위치합니다.
/usr/lib/bsr/
스크립트 파일(bsr service, notify)의 경로입니다.
/etc/bsr.d/
구성파일의 경로 입니다.
/var/log/bsr/
bsr 로그의 경로 입니다.
/usr/lib/modules/{kernel-version}-generic/updates/dkms/
bsr.ko 모듈 파일의 경로 입니다.
모듈 적재
bsr 커널 모듈을 적재합니다.
Info |
---|
# modprobe bsr # lsmod |grep bsr bsr 52113408 0 libcrc32c 16384 4 nf_conntrack,nf_nat,bsr,xfs |
Info |
---|
[root@bsr-01 bsr]# modinfo bsr [root@bsr-01 x86_64]# bsradm -V |
Note |
---|
시큐어부트와 관련하여 커널 모듈 적재에 실패할 경우 /wiki/spaces/B/pages/3596976727 문서를 참고하여 시큐어부트 코드서명 과정을 단계 별로 진행해 보세요. |
서비스 구성
시스템이 시작될 때 항상 bsr을 자동으로 기동 시키려면 bsr 서비스를 구성해 두어야 합니다.
CentOS 6
chkconfig bsr on
service bsr start
CentOS 7
systemctl enable bsr
systemctl start bsr
설치 정보
설치 후 정상 설치 여부를 모듈 정보를 통해 확인 합니다.
활성화 하고 svc-auto-up 옵션을 구성해야 합니다. svc-auto-up 의 기본값은 yes 입니다.
Info |
---|
systemctl enable bsr systemctl start bsr |
Code Block |
---|
resource r0 {
...
on hostname {
options {
svc-auto-up yes;
}
}
...
} |
삭제
삭제는 다음의 과정을 거칩니다.
리소스 중지
서비스 중지
커널 모듈 삭제
유틸리티 삭제
Info |
---|
bsradm down all systemctl stop bsr dpkg -r bsr-dkms dpkg -r bsr-utils |
업데이트
업데이트는 이미 설치된 버전을 삭제하고 새 버전으로 재 설치하는 작업입니다.
먼저 제품을 삭제한 후 다음의 업데이트 과정을 차례로 수행합니다.
유틸리티 업데이트
Info |
---|
root@ubuntu:/home/mantech# dpkg -i bsr-utils_1.6-A4_amd64.deb |
커널 모듈 업데이트
Info |
---|
root@ubuntu:/home/mantech# dpkg -i bsr-dkms_1.6-A4_all.deb |
시큐어 부트
이 단계는 시큐어부트가 구성되어 있을 경우에만 해당합니다.
기존의 bsr 모듈 공개키가 이미 등록된 상태이면 관련 업데이트는 필요하지 않습니다.
만약 시큐어 부트를 위한 개인키-공개키가 갱신되었다면 시큐어 부트 설정 과정을 다시 수행해야 합니다.
SUSE
설치
유틸리티
Info |
---|
# rpm -ivh bsr-utils-1.6.5.1_sles12-sp4_20230621151754.rpm |
커널모듈
Info |
---|
# rpm -ivh bsr-kmp-default-1.6.5.1_sles12-sp4_4.12.14-94.41_20230621151754.rpm |
Note |
---|
zypper 명령 사용 시 Signature verification failed 가 발생할 수 있으며, ignore 를 선택하고 설치를 진행합니다. # zypper install bsr-kmp-default-1.6.5.1_sles12-sp4_4.12.14-94.41_20230621151754.rpm … bsr-kmp-default-1.6.5.1_k4.12.14_94.41-1.x86_64 (Plain RPM files cache): Signature verification failed [6-File is unsigned] |
bsr 커널모듈 설치는 시스템 재 시작을 요구하지 않습니다.
시큐어 부트
시큐어부트 구성을 고려하지 않을 경우 이 단계는 건너 뜁니다.
커널 모듈 설치 과정에 /etc/pki/mantech/ 경로에 공개키가 설치됩니다. 해당 공개키를 UEFI 콘솔에 등록(Enroll)하기 위해 먼저 다음과 같이 등록을 요청(import) 합니다.
Info |
---|
#mokutil --import /etc/pki/mantech/bsr_signing_key_pub.der input password: input password again: |
비밀번호 지정 후 리부팅 합니다. 리부팅 시점에 UEFI 콘솔에서 해당 공개키를 등록(Enroll)합니다.
설치 경로
/usr/sbin/
바이너리 실행 파일들(bsradm, bsrcon, bsrmeta, bsrmon, bsrsetup, bsrsupport, bsrwatch)이 위치합니다.
/usr/lib/bsr/
스크립트 파일(bsr service, notify)의 경로입니다.
/etc/bsr.d/
구성파일의 경로 입니다.
/var/log/bsr/
bsr 로그의 경로 입니다.
/lib/modules/{kernel-version}-default/updates/
bsr.ko 모듈 파일의 경로 입니다.
모듈 적재
bsr 커널 모듈을 적재합니다.
Info |
---|
# modprobe bsr # lsmod |grep bsr bsr 52113408 0 libcrc32c 16384 4 nf_conntrack,nf_nat,bsr,xfs |
Note |
---|
SUSE 에서는 supported 플래그가 없는 모듈 로드를 제한하고 있기 때문에 기본적으로 bsr 모듈 로드에 실패합니다. # modprobe bsr modprobe: ERROR: module 'bsr' is unsupported unsupported 모듈 로드를 허용하기 위해서 modprobe 수행 시 --allow-unsupported 옵션을 사용합니다. # modprobe bsr --allow-unsupported |
Info |
---|
[root@bsr-01 bsr]# modinfo bsr [root@bsr-01 x86_64]# bsradm -V |
삭제
다음은 bsr을 삭제하는 명령 예 입니다.
Info |
---|
rpm -e kmod-bsr rpm -e bsr-utils-A3 |
Note |
---|
시큐어부트와 관련하여 커널 모듈 적재에 실패할 경우 Kernel Module Packages Manual을 참고하여 시큐어부트 코드서명 과정을 단계 별로 진행해 보세요. |
서비스 구성
시스템이 시작될 때 항상 bsr을 자동으로 기동 시키려면 bsr 서비스를 활성화 하고 svc-auto-up 옵션을 구성해야 합니다. svc-auto-up 의 기본값은 yes 입니다.
Info |
---|
systemctl enable bsr systemctl start bsr |
Code Block |
---|
resource r0 {
...
on hostname {
options {
svc-auto-up yes;
}
}
...
} |
삭제
삭제는 다음의 과정을 거칩니다.
리소스 중지
서비스 중지
커널 모듈 삭제
유틸리티 삭제
Info |
---|
bsradm down all systemctl stop bsr rpm -e bsr-kmp-default rpm -e bsr-utils |
업데이트
업데이트는 이미 설치된 버전을 삭제하고 새 버전으로 재 설치하는 작업입니다.
먼저 제품을 삭제한 후 다음의 업데이트 과정을 차례로 수행합니다.
유틸리티 업데이트
Info |
---|
# rpm -ivh bsr-utils-1.6.5.1_sles12-sp4_20230621151754.rpm |
커널 모듈 업데이트
Info |
---|
# rpm -ivh bsr-kmp-default-1.6.5.1_sles12-sp4_4.12.14-94.41_20230621151754.rpm |
시큐어 부트
이 단계는 시큐어부트가 구성되어 있을 경우에만 해당합니다.
기존의 bsr 모듈 공개키가 이미 등록된 상태이면 관련 업데이트는 필요하지 않습니다.
만약 시큐어 부트를 위한 개인키-공개키가 갱신되었다면 시큐어 부트 설정 과정을 다시 수행해야 합니다.