(1) 단일 노드 설치 (Default)
단일 컴퓨터에서 모든 서버 프로세스가 실행되며, 문제가 발생할 경우 중복성 및 안전 장치가 부족,
프로세스와 사용자 및 데이터 요구 사항 처리에 충분한 리소스가 있는지 확인해야 함
(2) 분산 설치
다중 노드 설치, 여러 대의 컴퓨터 필요, 중복성 및 추가 컴퓨팅 성능 제공해 안정성 및 효율성 확장 가능,
자동 리포지토리 장애 조치 기능 사용 가능
(3) HA(고가용성) 설치
주요 서버 구성 요소의 장애를 전체 서버 기능의 손실 없이 하도록 설계된 특수 형태 분산 설치.
분산 배포 과정에서 고가용성 배포 만드는 추가 단계 포함
3개 이상의 노드 추가, 주요 프로세스(리포지토리, 파일 저장소, 파일 서비스)의 여러 인스턴스가 다른 컴퓨터에 포함됨.
다중 파일 저장소 및 자동 리포지토리 장애 조치 기능 사용 가능. 단일 장애 지점 제거하고 감지해 시스템 중단 시간을 최소화 함.
HA 설치 간략한 순서
0. hostname, 방화벽 세팅 확인 필요 ★
1. 초기 노드에 서버 설치
2. TSM의 구성에서 부트스트랩 파일 다운로드해 두 노드 각각으로 이동 (scp 사용)
3. 2개의 노드 모두 초기 노드와 동일한 버전의 server 설치
4. 새 노드와 초기 노드 간의 통신 초기화 ( initialize-tsm 실행 )
5. 초기 노드의 TSM 로그인 > 노드 붙은 것 확인 > 보류 중인 변경 내용 클릭해 변경 내용 적용 및 다시 시작
★ 0. hostname, 방화벽 세팅
- 각 hostname과 ip 맞춰주어야 함
- 호스트 네임 영구 변경(CentOS 7) : sudo hostnamectl set-hostname hostname
- etc/hosts 파일에서 hostname 동일하게 맞춰주어야함 : sudo vi /etc/hosts
( hostname 통일해주지 않았을 때 ERROR : error.serverapi.login_with_credentials_session_errors )
- 방화벽, 포트 오픈
- gateway 포트 (80) : Tableau Server의 HTTP 연결에 사용됨
- gateway(80), tabadmincontroller 포트(8850) 만 외부 트래픽에 액세스할 수 있도록 방화벽을 구성
- 27000-27009 포트 범위를 열어야 노드 간에서 라이선스 정보가 전달 가능
(1) 모든 노드 수행 필요
- 포트 범위 확인 (Default : 8000, 9000)
tsm configuration get -k ports.range.min
tsm configuration get -k ports.range.max
- 높은 보안 영역 (Public인지) 확인
sudo systemctl start firewalld
firewall-cmd --get-default-zone
(2) 초기 노드
- gateway, tabadmincontroller, 노드 간의 라이선스 통신 위한 포트 설정 (80, 8850, 27000-27010)
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=8850/tcp
sudo firewall-cmd --permanent --add-port=27000-27010/tcp
- 다른 노드의 트래픽을 허용하도록 방화벽 구성 (위에서 확인한 min, max)
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP2>/32 port port=8000-9000 protocol=tcp accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP3>/32 port port=8000-9000 protocol=tcp accept'
- 방화벽 재로딩, 설정 내용 확인
sudo firewall-cmd --reload
firewall-cmd --list-all
(3) 추가 노드 2
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP1>/32 port port=80 protocol=tcp accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP1>/32 port port=8000-9000 protocol=tcp accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP3>/32 port port=80 protocol=tcp accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP3>/32 port port=8000-9000 protocol=tcp accept'
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
(4) 추가 노드 3
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP1>/32 port port=80 protocol=tcp accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP1>/32 port port=8000-9000 protocol=tcp accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP2>/32 port port=80 protocol=tcp accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<IP2>/32 port port=8000-9000 protocol=tcp accept'
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
2. TSM의 구성에서 부트스트랩 파일 다운로드해 두 노드 각각으로 이동 (scp 사용)
- 부트스트랩 파일 다운로드 후 각 Linux 서버에 전송
( Window -> Linux )
(1) PowerShell 에서 전송할 파일이 있는 위치 경로로 이동
(2) scp [파일이름] [서버ID]@[서버IP]:[Linux에서 받을 경로]
( EX ) scp bootstrap.json tabadmin@192.168.0.191:/opt/tableau/tableau_server
3. 2개의 노드 모두 초기 노드와 동일한 버전의 server 설치
sudo yum install tableau-server~~~.x86_64.rpm
4. 새 노드와 초기 노드 간의 통신 초기화를 위해 2개 노드 각각 부트스트랩 파일로 initialize-tsm 실행
sudo ./initialize-tsm -b /path/bootstrap.json --accepteula
(+)
- HA 서버 삭제
https://help.tableau.com/current/server-linux/ko-kr/distrib_worker_remove.htm
(1) 보류중인 변경 내용이 있는지 확인
(2) 노드 제거
(3) 보류중인 변경 내용
(4) 변경 내용 적용 및 다시 시작
'Database > Server' 카테고리의 다른 글
[Linux] Crontab 태블로 백업 스케줄 설정 (0) | 2024.03.15 |
---|---|
Tableau SSO 인증(SAML) (0) | 2022.12.05 |
[Tableau] refresh-environment-variables.txt (0) | 2022.09.19 |
[Tableau] Tableau-server-obliterate.txt (1) | 2022.09.19 |
Tableau Server Port (0) | 2022.02.17 |
댓글