일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- MQM #웹서버
- memory #리눅스 #자원관리
- MQ#MOM#메시지지향미들웨어#Kafka#ActiveMQ#rabbitMQ
- 모니터링 #k8s #prometheus #metricbeat #elasticsearch #logstash
- 오라클#튜닝
- 이펙티스자바
- abstract
- MySQL 5.7 #MySQL 8.0 #차이점 #업그레이드
- ssh #pem
- docker #k8s #배포하기
- X.25
- SSH #공개키인증
- React #생명주기
- Vuejs#JavaScript#프레임워크#개요#개념
- k8s
- ssl #개인키 #공개키
- non-locking
- JPA #생명주기
- React#기초#JS#JavaScrip#개념
- EKS란
- Mysql #RDBMS #설치 #기동 #설정
- Oracle #ANSI #SQL #JOIN
- React
- interface
- 클라우드#클라우드서비스#클라우드개념#IaaS#Paas#Saas
- WEB #HTTP #HTTPS #SSL #통신개념
- java
- cors #Authorization
- REST#SOAP#API
- JDK1.8
- Today
- Total
개발노트
Ubuntu OS에 HAproxy 설치 및 기초 설정 가이드 본문
[Ubuntu OS 일때]
apt-get 패키지 업데이트
우분투에서는 패키지 설치를 위해서 보편적으로 apt(Advance Packging Tools) 명령어를 사용합니다. apt는 기존의 apt-get, apt-cache 등의 통합으로 나온 패키지 매니징 툴입니다. 그런데 패키지 업데이트를 위한 update 와 upgrade의 차이점이 존재합니다. 한국 사람이 이해하기에는 비슷한 명령어 이기 때문에 처음 Ubuntu를 사용하게 되면 잘못 사용하는 경우가 발생합니다. 우선 간단히 다음과 같은 차이가 있습니다.
- update - 설치 가능한 패키지 리스트를 최신화
- upgrade - 실제 업데이트
다음 구문은 시스템을 업데이트 하는 것이 아니라 실제 설치 가능한 패키지 리스트를 최신화 하는 것 입니다. 실제로 프로그램이 최신 버전으로 설치되거나 바뀌지는 않습니다. 말그대로 리스트만 최신화 합니다.
$ sudo apt update
또한 현재 리스트를 불러오는 명령어는 다음과 같습니다.
$ sudo apt list
만약 현재 설치된 리스트 중에서 업그레이드가 필요한 목록을 알아오려면 다음 명령어로 알 수 있습니다.
$ sudo apt list --upgradable
이제 설치가 필요한 리스트를 확인했다면 upgrade 명령어를 통해 실제 업데이트를 할 수 있습니다.
$ sudo apt upgrade
다음 순서대로 시스템의 최신화 및 업데이트를 진행합니다.
- update 명령을 통해 패키치 최신화
- 현재 업그레이드가 필요한 리스트 출력
- upgrade 명령으로 최신 버전으로 업그레이드
[Cent OS 일때]
yum 패키지 업데이트
CentOS 버전 및 Kernel 버전 확인
만약 root 계정이 아닌 상태 (명령 프롬프트가 $ 로 표시되면 root가 아님)라면 아래와 같이 sudo yum update 명령을 실행합니다. 만약 root 상태라면 yum update 만 실행.
명령어 : sudo yum update
[공통]
1. haproxy 설치
$ yum install -y haproxy
$ haproxy -v
HA-Proxy version 1.5.18 2016/05/10
Copyright 2000-2016 Willy Tarreau <willy@haproxy.org>
2. haproxy 설정
A) haproxy.cfg 편집(default)
-위치 : /etc/haproxy/haproxy.cfg
#---------------------------------------------------------------------
# 1. frontend(IN), backend(OUT)의 셋팅으로 in,out 정의방법.
#---------------------------------------------------------------------
....
//frontend는 input port
frontend fe-4000
mode tcp
bind *:4000
default_backend fe //해당 backend의 server정보로 보냄
frontend ws-4001
mode tcp
bind *:4001
default_backend websocket
#---------------------------------------------------------------------
# round robin balancing between the various backends
#---------------------------------------------------------------------
// 보낼 IP 등록
backend fe
mode tcp
balance roundrobin
server fe1 127.0.0.1:1337 check
server fe2 127.0.0.2:1337 check
backend websocket
mode tcp
balance roundrobin
server websocket1 127.0.0.3:1335 check
server websocket2 127.0.0.4:1335 check
#---------------------------------------------------------------------
# 2. 하나의 셋팅으로 in,out 정의방법.
#---------------------------------------------------------------------
// 보낼 IP 정보를 bind에 정의하고 라우팅할 곳의 정보를 serve에 정의
listen mariadb
mode tcp
option tcplog
bind *:3306
server symphony-mariadb 192.168.0.13:13306 check
B) 로그설정
-로그는 Haproxy 자체가 로그파일을 생성하지 않고 Syslog 쪽으로 로그를 전송합니다.
vi /etc/haproxy/haproxy.cfg
-다음과 같이 Config 파일 설정
global
log /dev/log local0 info //log level 설정
log /dev/log local0 notice
maxconn 4096 # 최대 커넥트
user haproxy
user haproxy
daemon
-rsyslog를 사용하겠다는 것을 ON 해주어야 합니다. (Enabled = 1 로 설정 되어있어야 합니다.)
vi /etc/default/haporxy
ENABLED=1
-rsyslog에서 어떤 정보를 어느 파일에 저장할지를 설정 해주어야 합니다.
vi /etc/rsyslog.conf
local0.* /var/log/haproxy_0.log
local1.* /var/log/haproxy_1.log
-rsyslog 및 HAProxy 를 재시작.
service rsyslog restart
service haproxy restart
'인프라' 카테고리의 다른 글
NAT란? (0) | 2022.08.12 |
---|---|
리눅스 top 명령어 시 free, swap 메모리의 이해 (0) | 2022.08.03 |
[인프라] SSL, CRS 인증 관련 정리(대칭키, 공개키, 개인키) (0) | 2021.12.22 |
PemKey를 이용한 SSH 접속 (0) | 2021.12.22 |
SSH 공개키 인증 과정 (0) | 2021.12.22 |