본문 바로가기
기초 튼튼탄탄탄/서버, OS(리눅스)

인프라업무 Remind

by 잇서니 2019. 10. 27.
반응형

PXE

  • http
    • os 설치이미지
    • kickstart 파일

 

  • tftp
    • os 커널이미지 (vmlinuz, initrd.img)
    • syslinux 부트로더

 

  • dhcp
    • ip 할당, subnet-mask
    • 부트로더 파일

 

디스크 구성

  • RAID (Redundant Array of Independent Disks)
    • RAID 0 (stripping)
    • RAID 1 (mirroring)
    • RAID 10 (stripping -> mirroring)
    • RAID 5 (parity)

0123

  • 파티션
    • /boot, swap, /
    • fdisk

 

  • 포맷
    • mkfs <ext4 / ext3 ..> <파티션된 디스크>

 

  • 마운트
    • mount <장치> <마운트디렉>

 

Local Repository

  • yum
    • 패키지 의존성을 관리해주는 툴

 

  • repodata
    • 패키지들의 metadata
    • 해당 패키지의 의존성 패키지 정보가 있음

 

  • repo 파일
    • repo id
    • baseurl

 

  • http
    • repo 노드와 통신하기 위함
    • /var/www/html/

 

  • create repo
    • repository에 repodata를 생성함

 

포탈 이중화

  • WEB
    • L4스위치로 WEB 로드밸런싱
    • WAS 로드밸런싱, WAS active standby 설정
      • workers.properties

 

  • WAS
    • mod_jk 모듈을 사용해서 로드밸런싱 됨
      • 모듈은 WAS에 위치
      • 설정은 WEB에서 
        • Active, Standby로 설정
        • WEB과 연동시, ajp 프로토콜 사용 (8009 포트)

 

  • DB
    • steel-eye 솔루션을 통해 이중화
      • master slave 구조
      • master DB에 공유스토리지가 마운트됨
    • mysql connector를 WAS 설정에 적용하여 WAS-DB 연동

 

https

https://blog.ayukawa.kr/archives/732

 

도메인 적용

 

 

LVM (Logical Volume Manager)

파일시스템이 블록장치에 직접 접근해서 읽기/쓰기를 하지 않고, LVM이 만든 가상의 블록 장치에 읽기/쓰기를 한다.

  • pv, vg, lv
  • pvcreate
  • vgcreate
  • lvcreate

 

포탈 클러스터링 PCS

  • 패키지
    • pcs : 클러스터 설정을 간편하게 하기 위한 툴
    • corosync : 노드 간 hearbeat가 오고 가도록 (5404 / 5405)
    • pacemaker : 클러스터 리소스 관리
    • cman : 클러스터 매니저

 

  • setup
    • 인증 (hacluster계정, os계정인증 절차를 따름)
    • 생성 (멀티캐스트 통신이 안돼서 유니캐스트로 설정)

 

  • resource
    • wildfly
    • LVM
    • FS

 

  • constraint
    • was가 was01 서버(active)에 위치하도록
    • 3개 리소스가 같은 노드에 위치하도록 (WAS 구동되는 active 서버가 공유스토리지를 사용해야 하기 때문)
    • LVM 리소스 실행 후, FS 리소스가 실행되도록 (LVM이 활성화 되어야, 마운트가 가능하기 때문)
    • 리소스가 다른 노드로 바로 이동하는 걸 방지

 

VIP, Haproxy

  • PCS

    • vip
    • haproxy 이중화
    • vip, haproxy 같이 놀도록 조건 설정

 

  • haproxy 설정

    • listen
    • balance (roundrobin, ..)
    • bind (ip, port)
    • server

 

  • 프록시 타는 애들 vip 설정

    • hive
    • oozie
    • db.properties

 

R Local repository

  • what?
    • source file이나 바이너리 파일로 구성됨
    • PACKAGES 라는 파일이 패키지들 인덱스 역할을 함
    • write.package를 하면 패키지 파일이 프로세싱되고 PACKAGE 파일이 생성됨
    • 패키지를 설치하면(install.package) 라이브러리 경로에 패키지가 설치됨

 

  • RStudio 계정은 OS 계정
    • 유저 홈디렉토리에 추가 패키지 업로드하면 로컬레포로 연결되도록 심볼릭링크 검

 

  • CRAN 저장소
    • 외부망에서 download (wget -r ftp://)
    • 내부서버에 업로드

 

  • R에서 repo 옵션 설정
    • repo 이름
    • repo url
    • contrib dir
      • write.package 시에 이 경로가 필요함

 

RHive

  • jdbc 연동하는 방법
    • hadoop, hive classpath 설정
    • hive jdbc driver 등록
    • dbConnect
    • dbGetquery

 

  • 사내 개발된 rhive 라이브러리 사용하는 방법
    • hive 라이브러리 배포
    • Rprofile.site에 JAVA_HOME, HADOOP_HOME, HIVE_HOME, HADOOP_CONF 설정
    • RJava, RServe, RHive 라이브러리 사용

 

mariaDB sync 복구

  • replication 과정

    • Master가 binlog를 쓰고, Slave가 relay log를 쓰면서 replication함
    • binlog : commit 이후 트랜잭션 정보를 기록

  • replication manager

    • master-slave failover
    • web ui 제공

 

  • master 정보 갱신

    • show master status
      • position
      • bin log file
    • stop slave
    • change master to master log_file='' log_pos=''
    • start slave

 

  • mysqldump

    • mysqldump
    • mysql -p
    • stop slave
    • change master to master log_fle='' log_pos=''
    • start slave

 

  • my.cnf.d

    • slave-skil-errors=all
      • 사소한 오류로 슬레이브 디비가 복제를 중단하는 걸 막을 수 있음
      • 에러가 발생하면 에러를 건너뛰고 master의 log position부터 강제적으로 복제 수행
      • 스킵할 에러코드를 적어주면 됨
  •  
  •  
    • sql_slave_skip_counter = 1
      • sql 에러 1개 스킵하겠다.
      • 도로공사에서 sql 에러로 인해 slave에서 복제가 안 됐음 (replication sync 깨짐)
      • stop slave -> set global sql_slave_skip_counter=1 -> start slave 하면 에러 스킵됨.
      • 그래도 또 오류나서 걍 dump 떠서 복구했음
    • max connection

 

반응형

댓글