올챙이시절 기록소

Maxgauge for Oracle 설치 1편 Linux Target DB <-> Windows (Repo - PG) 본문

2015/10월

Maxgauge for Oracle 설치 1편 Linux Target DB <-> Windows (Repo - PG)

allroundplayer 2017. 10. 17. 17:57

 본글은 Maxgauge for Oracle 소개편에 이어서 설치에 대해 다룬다


먼저, 준비물이 필요하다


1번 환경 :  CentOS 6.7 & Oracle Linux 11g R2


2번 환경 : Windows 환경  (Win7 또는 Win10) + Java 1.8 + Chrome


* Oracle 설치는 꽤나 어렵다 시간이 걸리더라도 잘 숙지하자

* 2번 환경에 Java 1.8 버전 이상과 Chrome이 설치되어야 한다  


RTS, DG, REPO, PJS 


총 네 가지를 설치하여야 한다


DBA(DataBase Administrator)들은 자신이 관리하고 있는 DB(1번 환경)에 부하가 많이 가해지는 것을 원치 않는다


1번 환경(CentOS & Oracle)에는 RTS(Real Time Server Process)를


2번 환경(Windows7)에 3가지(DG & Repo & PJS)를 설치하기로 협의되었다고 가정한다


* 또한 고객사의 예산으로 인하여 Repo는 PostgreSQL을 선택하였다 가정한다



쉬운 것 부터 하는게 나을 것 같아 2번 환경 먼저 설치를 한다




2번 환경


DG & Repo & PJS 설치


인스톨러를 수행하면 3가지 모두 설치되기에 편리하다



"[MFO5.3.3]_[Full_Setup]" 파일을 더블클릭하면




인스톨러 대화창이 팝업된다




라이선스 동의해주고




설치경로를 확인한 다음




시작메뉴폴더에 바로가기를 만들기 위해 이름을 지어준다




바탕화면에도 만들지 선택하고




Data Gather 에서 가용할 Memory 자원의 Limit을 설정하는 옵션이다


* Java Heap memory 설정이다

* Gather는 Master와 Slave 두 가지 종류로 나뉜다

옵저버에서는 설정값의 1.5배로 Memory Limit 값이 세팅되며 초과시 Process kill 한다




최종확인 View


[설치(I)] 버튼을 누르게 되면




설치가 진행된다




종료버튼을 누르게되면


0


이렇게 크롬창에 Configuration 진입을 위한 로그인창이 뜬다

( ID : admin / PW : manager )



2번환경에서 방화벽을 열어주어야한다


RTS -> DG(slave) 7001번 포트

User -> PJS 8080번 포트


그래서 7001과 8080포트가 열려 있어야한다



방화벽을열고



새 규칙 클릭



포트 선택




특정 로컬 포트를 선택후


7001, 8080 입력



연결 허용



디폴트값으로 선택



이름은 Maxgauge 입력


윈도우환경 설치가 완료되었다



1번 환경


RTS 설치


OS와 DB에 맞는 파일을 찾는다


필자의 경우 1번 환경 DB는 11.2.0.4 버전이다


"rts_MXG533_linux_64_ora_11204_ ~ blah blah"


* 11.2.0.1 버전으로 하는 경우는 "rts_MXG533_linux_64_ora_112_~ blah blah" 이 파일로 하면 된다

( 찾는 버전이 없는 경우는 위와 같이 포괄하는 버전을 설치한다 )


보충설명



1 : 컴포넌트 식별자

2 : MXG(MAXGAUGE) + BASELINE 533

3 : OS

4 : OS Bit

5 : DB 

6 : DB Version

7 : NUMA

8 : Build Date


* numa에 대해서는 자료를 구하기가 힘드니 잘 메모해두길 바란다


* NUMA(Non uniform memory architecture) system 이란...

하드웨어적으로 시스템 보드가 여러장이 들어가는데 (NUMA 가 아닌것도 이런 구성은 많음)

각 시스템 보드별로 거의 독립적으로 처리를 하게 된다.

오라클에서도 이를 효율적으로 사용하기 위하여 세션이 각각 보드에 나누어져서 올라간다.

그래서 세션이 한군데에 몰려있지 않고 여러군데 나뉘어서 들어가 있게 된다.


select * from sys.xm$ksuse

의 결과에서 addr이 일정 간격으로 연속적이지 않고 동떨어진 부분이 나타나면 numa system 으로 본다.


"NUMA system" 은 정확한 용어가 아니며, Numa architecture 라는게 더 정확한 표현이다

Numa architecture를 사용한 시스템은 뭐라고 부르는지를 잘 모름.


5.3.1 부터였다고 하는데

160808 대화 중 발췌



root 계정에서 시작한다



DB를 가끔 깜박하고 켜놓지 않는 사람들이 있어 확인차


ORACLE의 프로세스중 하나인 pmon이 켜져있는지 체크



이렇게 보여지면 DB가 켜져있다는 것이고


없으면 oracle 계정으로 접속하여 DB를 켜놓고 진행한다



maxgauge 유저를 만들것이다


DB 관리자 계정의 group과 동일하게 만들어야 하므로


소유주인 oracle의 계정에서 확인한다


$ id



똑같이 계정을 만들자


$ useradd -g oinstall -G oinstall,dba,oper  maxgauge



패스워드 설정도 하는김에 바로 해준다


$ passwd maxgauge



maxgauge

maxgauge



ORACLE에 접속가능해야 하므로


환경정보 변수값들이 필요하다



oracle 계정의 .bash_profile에 있는 이 값들을


$ cat /home/oracle/.bash_profile 



복사하여



maxgauge의 bash_profile에 


$ vi /home/maxgauge/.bash_profile 



똑같이 넣어준다


* .bash_profile은 로그인 쉘이다, 유저 접속시에 실행한다


이제 파일을 옮기자


0


이렇게 잘 옮겨주는데


root계정으로 옮겼기에



소유주를 maxgauge로 바꿔준다


$ chown -R maxgauge:oinstall /home/maxgauge/



maxgauge 유저로 접속한다


$ su - maxgauge



설치파일을 확인했다




필자는 깔끔한게 좋아 rts 디렉토리를 만들고 진행하겠다




rts 디렉토리에 파일들을 다 옮겨주고




rts 디렉토리로 이동하여 진행




먼저 압축되어 있는 설치파일을 해제한다


$ tar -xvf rts_MXG533_linux_64_ora_*.tar



maxgauge란 디렉토리가 생겼다




라이센스키를 maxgauge/bin 디렉토리에 복사해준다


$ cp license.*.key maxgauge/bin/



폴더네임은 인스턴스명으로 하는 것을 권고하고 있다


maxgauge - > ORCL로 바꾸어주었다




.mxgrc파일은 환경변수를 담는 파일이다



열어서 현재 경로에 대해 입력해준다



현재경로는 pwd ( present working directory )  명령어로 파악할 수 있다



.mxgrc 파일에 대한 환경변수값을 세팅한다


확인은 " env | grep MXG "


각 '.' 에 대한 보충설명

첫 번째 dot(.) : execute

두 번째 dot(.) : present directory

세 번째 dot(.) : hidden file 표식자




install 디렉토리로 이동한다


* alias ins="cd $MXG_HOME/install"



install.sh을 실행한다




소유주는 oracle이니 엔터




앞에서 권고대로 ORACLE_SID로 하였다


ORCL로 그대로 가자




ipc key값 입력 


0이 아닌 걸로 입력하자 '3'


이 부분은 설명할 게 많아 일단 스킵..!




pmon 이름을 확인하고 '1'  




리스너 상태를 확인하기위한 식별자를 넣는 곳이다


:::1521 입력


ORACLE에서 리스너는 유저를 DB로 연결하는 과정에 각종 처리를 담당하며



Default로 1521포트를 사용한다





RTS도 포트를 사용하여 통신을 한다


default는 5080번 포트다 그대로 쓰자




(Slave) Data Gather를 설치한 환경의 IP를 입력한다


이번 설치는 아래 그림과 같고 윈도우 환경에 Data Gather를 설치하니 윈도우 IP를 입력해주면 된다


마찬가지로 Port를 입력해야하는데




Slave Data Gather의 Default포트는 7001이다 그대로 입력하자




오라클의 패스워드는 oracle




maxgauge 유저는 maxgauge




maxgauge 유저의 password는 maxgauge




Tablespace는 USERS를 사용하도록




TEMP 테이블 스페이스는 TEMP로




xm$view를 만들기 => yes




conf 파일 => y




패스워드 파일, 리눅스 이므로 => '2'




run by sys => y




expkg 패키지 조금 설치 => y




env 파일 생성여부 => y




list.conf 생성여부 => y




설치가 끝났다




설정내역은 install.log에서 볼 수 있다


* 확인  cat install.log



rts를 실행해보자


$ rtsctl start




실행되었다고 문구가 화면에 출력되었다


관련 명령어들


$ rtsctl start   
  rtsctl stop
  rtsctl status

방화벽 설정을 하자


PJS -> RTS [ 5080 ] 포트에 접근이 허가되어야 한다


* 화살표는 RTS -> PJS로 그려져있지만 정확히는 PJS가 주기적으로 RTS에게 요청한다



root 계정으로




$ vi /etc/sysconfig/iptables



 한 줄 추가 한다


-A INPUT -m state --state NEW -m tcp -p tcp --dport 5080 -j ACCEPT



방화벽 재시작


$ service iptables restart


RTS 설치는 끝났다





Web에서 RTS를 등록하여 


모니터링해보자 


0


config 화면에서 로그인하자


ID : admin

pw : manager




각종 RTS에 대한 정보를 입력하자


DB IP는 특히 확인하고 잘 적자 ( 실수가 만발하는 곳이다 )



$ ifconfig


0


다시 로그인 ( admin / manager )



이렇게 화면이 잘 보인다면!



1번 통신구간[RTS<-> PJS]이 잘 동작하는 것이다


2번 통신구간[ RTS <-> DG <-> REPO <-> PJS]을 확인하려면


0


RTM > Real-time Diagnostics > 하단 Active Sessions탭


여기 View의 상단은 RTS에서 직접받은 데이터지만 


하단은 Repo에서 Qeury로 가져온 데이터라 간단하게 테스트가 가능하다


이렇게 보여지면 2번 통신구간도 잘 동작하는 것이다



 

Comments