본문 바로가기

반응형

엔지니어/Linux

(114)
16TB 이상 파일시스템 만들기 16TB 이상 파일시스템 만들기 OS : centos 6.8 64bit 20TB 의 /dev/sdb 를 생성 서버 모델 : HP 180 G6 ( SAS 2T * 12ea ) 기본적으로 16TB 이상의 파일시스템이 ext4 로 생성이 안된다. block size 를 기본 4096 에서 8192 로 만드니 생성되긴 하지만 마운트때 fs type 이 안맞다고 나옴 # parted /dev/sdb (parted) mklabel gpt(parted) mkpartpartition name [primary]?File system type? [ext2]?Start? 0End? 21TB(parted)q # mkfs.ext4 -L /data -i 8192 /dev/sdb1 mkfs.ext4: Size of device /..
keepalive와 timewait의 상관관계 많은 양의 트래픽을 처리하는 대용량의 웹 서버에서 흔히 발생하는 timewait와 keepalive 와의 상관관계에 대해 살펴봅니다. timewait 소켓이 어떤 문제가 있을까요? 과거 서버의 물리 메모리가 작은 시절에는 시스템 리소스를 차지하는 문제가 있었습니다만, 하드웨어적으로 눈부신 발전이 이루어진 오늘날, timewait 소켓 자체는 문제가 될 만큼 시스템 리소스를 차지하지는 않습니다. 하지만 지금은 timewait를 다른 문제로 볼 필요가 있습니다. 결론부터 말씀드리자면 timewait 가 많다는 것은 서비스의 응답 속도가 느려질 수 있다는 것을 의미합니다. TCP 3-way handshake 에 대해서는 잘 알고 계실 겁니다. 그렇다면 맺기 만큼 중요한 연결을 끊을 때 사용하는 4-way ha..
tcp_syncookies는 어떻게 동작하는가? 오늘 다룰 내용은 tcp_syncookies입니다. 조금은 어렵고 복잡한 이야기를 다룰 예정이고요, 아마도 제가 잘못 조사한 내용이 있을 수도 있으니 잘못된 부분이 있으면 댓글로 알려 주시면 좋겠습니다. syn flooding 공격 먼저 syncookies 에 대해 이야기하기 전에 syn flooding 공격에 대해 이야기해보려고 합니다. 아시다시피 TCP는 세션을 맺기 위해 3-Way handshake 방식을 사용합니다. 정상적인 TCP 3-Way handshake서버가 처음 listen() 시스템 콜을 이용해서 소켓을 만들면 커널에서는 SYN Backlog, Listen Backlog라는 두 개의 큐를 만들게 됩니다. 그 후 클라이언트의 커넥션 요청인 SYN 패킷이 들어오면 해당 소켓 정보를 SYN ..
tcp_tw_reuse와 tcp_tw_recycle 시스템 엔지니어에게 가장 골치 아픈 커널 파라미터가 뭐냐고 묻는다면 아마 위 두 값이라고 하시는 분들이 많으실 겁니다. 비슷하게 보이지만 차이점을 알기가 힘든 두 값에 대해 간단한 테스트를 통해 그 의미를 알아보는 시간을 마련해 보았습니다. 준비물 우선 두 대의 서버를 준비합니다. 편의상 client, server라고 지정합니다. 그리고 client에서는 net.ipv4.ip_local_port_range 값을 default 값에서 32768 32768로 고칩니다. server에서는 nginx를 yum으로 기본 설치해서 80만 띄워 놓습니다. tcp_tw_reuse 먼저 tcp_tw_reuse 에 대해 살펴보겠습니다. client에서 server로 curl 명령으로 페이지를 가져오면 방금 사용했던 포트는..
How to make High Available Load Balancer(L4/L7) with haproxy and Pacemaker - 1/4 1. Introduction 서비스의 부하 분산 및 고가용성을 위해 H/W Load Balancer를 필요로 하는 경우가 많지만 도입 비용이 크기때문에 예산상의 어려움도 많다. 반드시 H/W Load Balancer가 필요한 환경이 아니라면 여분의 Server를 활용하여 S/W Load Balancer를 구축할 수 있다. 일반적으로 사용자는 아래와 같은 Infrastructure를 통해 서비스를 받는다. 이때 Active Node에 장애가 발생하더라도 VIP는 Standby Node에서 Failover하므로 서비스는 중단되지 않으며 사용자는 최대 몇초간의 순단 현상만 경험하게 된다. 본 문서에서 다룰 내용은 Active/Standby Node 부분이다. 여기서 사용자의 Requests를 Real Node..
How to make High Available Load Balancer(L4/L7) with haproxy and Pacemaker - 2/4 3. Load Balancer(L4/L7) "haproxy" Build, Install and Configuration Active/Standby Node에 아래와 같은 과정을 통해 haproxy를 설치한다. Download haproxy Lastest version (2013년 2월 현재 1.4.22) http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.22.tar.gz Tarball 전개 (# (shop)은 root previlege를 의미한다.) # tar xvzf ./haproxy-1.4.22.tar.gz Build # make TARGET=linux26 ARCH=x86_64 Install # make install Make Configuration File..
How to make High Available Load Balancer(L4/L7) with haproxy and Pacemaker - 3/4 4. High Availability "Pacemaker" Install & Configuration Active/Standby Node에 아래와 같은 과정을 통해 Pacemaker를 설치한다. Install libraries # yum update # yum install libtool-ltdl.x86_64 openhpi-libs.x86_64 libibverbs.x86_64 librdmacm.x86_64 Download Packages (2013년 2월 기준) http://centos.karan.org/el5/extras/testing/x86_64/RPMS/libesmtp-1.0.4-6.el5.kb.x86_64.rpm http://www.clusterlabs.org/rpm/epel-5/x86_64/cl..
How to make High Available Load Balancer(L4/L7) with haproxy and Pacemaker - 4/4 5. Test to failover resources Test를 위해 migration-threshold = 3으로 설정 Case 1. Active Node 장애 Active Node에서 물리적/논리적 Server/Network 장애가 발생하면 Standby Node에서의 Heartbeat Check가 실패하므로 Resource를 Failover 장애 상황을 가정하여 Active Node의 Heartbeat Daemon을 정지 # /etc/init.d/heartbeat stop Stopping High-Availability services: [ OK ] Resource(VIP, haproxy)가 Standby Node에서 Failover 됨. Active Node가 "OFFLINE" 상태. ======..
Howto install GlusterFS 3.5.1 on CentOS 6.5 Howto install GlusterFS 3.5.1 on CentOS 6.5Posted on July 3, 2014 by Johan Sörell — No Comments ↓This is a guide to install GlusterFS 3.5.1 on CentOSRequirements:CentOS 6.x “I’m doing this on CentOS 6.5”Configured Networkwget installed on the OSResourses:GlusterFS DocumentationLet’s start the installation1. Go to /etc/yum.repolist.d 1cd/etc/yum.repolist.d2. Download the repo 1wget http://downloa..
Iptable QoS(DSCP) If our hardware/software (i.e. IP Phone, gateway) doesn’t set proper DSCP value it can be done using iptables in the nearest linux machine. In scenario there are two hosts:Ping Request is a linux (CentOS 5.3, 2.6.18-128.e15) with iptables v1.3.5Ping Response is Windows 7 with Wireshark on boardIn example, just for simplification, all traffic from Ping Request host is mark with DSCP value 46 (Cri..

반응형