NIC Bonding mode에 대한 정리

주로 1번(Active-stanby) 또는 스위치 LACP를 구성해서 4번(Active-Active)을 사용하죠..?

참고자료...

mode명칭설명
0balance-rr・ load balancing (round-robin)
・모든 슬레이브 장치(NIC)를 차례(라운드로빈)로 사용 패킷을 보냅니다.
・ 전송만 부하분산 (로드밸런싱) 
・ 디폴트값입니다.
1active-backup・ fault-tolerance (active-backup)
・ 하나의 NIC만  활성화 인터페이스로 보냅니다.
・ 송수신 둘다 부하 분산이 없습니다.
・ 평상시에는 하나의 NIC으로만 통신하여 통신장애가 발생하면 전환모드입니다.
2balance-xor・ load balancing (xor)
・ 송신원/대상의 MAC어드레스를 바탕으로 전송 슬레이브 디바이스를 결정해 패킷을 보냅니다.
・ 송신패킷만 부하분산(로드밸런싱)
3broadcast・ fault-tolerance (broadcast)
・ 모든 슬레이브에 동일한 패킷을 보냅니다.
・ 일반 용도로는 사용하지 않음.
4802.3ad・ IEEE 802.3ad Dynamic link aggregation
・ IEEE 802.3ad(LACP)을 기준한 링크 어그리게이션(Link aggregation:여러개의 물리적인 회선을 가상적으로 묶어 마치 하나의 회선인것처럼 처리하는 기술로 예를 들어 1Gbps회선 5개를 가상으로 묶어 5Gbps의 가상 통신대역을 사용할수 있습니다.)
・ 연결하는 스위치가 IEEE 802.3ad에 대응할 필요가 있습니다.
5balance-tlb・ transmit load balancing
・ 각 슬레이브의 부하에 따라 전송 슬레이브를 분산합니다. 수신은 현재 슬레이브에 의해 행해집니다.
・ 송신패킷만 부하분산(로드밸런싱)
6balance-alb・ adaptive load balancing
・ balance-tlb의 기능뿐만 아니라 송수신도 부하분산 (로드밸런싱)


Posted by 뭉탁거림
,

fdisk -l 통해 리눅스에 달려있는 볼륨 정보를 볼때마다 dm-x 라는 볼륨에대해 궁금한 점이 있었습니다.

multipath나 LVM으로 구성할 경우 dm-x 장치가 생성되는 것 같은데....

이것의 실체는 .......... dm-x device에 xvda,xvdb 등 실제로 맵핑된다는 사실!

  

dmsetup 명령으로 /sys/block/dm-x/ 아래의 맵핑되어 있는 device 장치 정보를 확인 할 수 있다.

[[root@chefclient02 /sys/block/dm-0]$dmsetup info


Name:              VolGroup-lv_root

State:             ACTIVE

Read Ahead:        256

Tables present:    LIVE

Open count:        1

Event number:      0

Major, minor:      253, 0

Number of targets: 1

UUID: LVM-a8xHxzmvHshO0vh2Uozuk8ePQVZP5NpmFe9wj4KoHvIS4Lqd7ESljSAmpIBE8OWe


[root@chefclient02 /sys/block/dm-0/slaves]$ll

total 0

lrwxrwxrwx 1 root root 0 Feb 28 08:42 xvda2 -> ../../../../vbd-51712/block/xvda/xvda2

'리눅스-Linux' 카테고리의 다른 글

[리눅스] mknod를 이용한 장치 파일생성  (0) 2014.03.11
[Linux] 리눅스 bonding mode  (0) 2014.03.06
[Linux] dumpe2fs, tune2fs, fsck  (0) 2014.02.27
[Linux] yum repository 구성하기  (0) 2014.02.07
SSH 활용 sshpass  (0) 2014.02.06
Posted by 뭉탁거림
,

리눅스 파일시스템 check 및 수정/복구 관련 명령어


1. dumpe2fs : 파일시스템의 슈퍼블럭과 블럭그룹정보를 출력 

2. tune2fs : 파일시스템의 정보 확인 및 tunning

3. fsck : 파일 시스템 점검 및 복구

Maximum mount count / Check interval 항목이 유용하게 쓰임

tune2fs -c -1 /dev/xvdb1 : Maximum mount count 수를 -1 수정하여 자동으로 filesystem check가 되지 않도록 수정

tune2fs -i 0 /dev/xvdb1 : Check interval 기간을 0 으로 설정하여 마찬가지로 자동으로 filesystem check가 되지 않도록 수정

[root@localhost]$dumpe2fs /dev/xvdb1

dumpe2fs 1.41.12 (17-May-2010)

Filesystem volume name:   <none>

Last mounted on:          <not available>

Filesystem UUID:          09519598-5f70-4f75-9a1a-606ac27a9406

Filesystem magic number:  0xEF53

Filesystem revision #:    1 (dynamic)

Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super large_file

Filesystem flags:         signed_directory_hash 

Default mount options:    (none)

Filesystem state:         clean

Errors behavior:          Continue

Filesystem OS type:       Linux

Inode count:              66384

Block count:              265064

Reserved block count:     13253

Free blocks:              252360

Free inodes:              66372

First block:              0

Block size:               4096

Fragment size:            4096

Reserved GDT blocks:      64

Blocks per group:         32768

Fragments per group:      32768

Inodes per group:         7376

Inode blocks per group:   461

Filesystem created:       Thu Feb 27 09:36:48 2014

Last mount time:          Thu Feb 27 09:38:59 2014

Last write time:          Thu Feb 27 09:38:59 2014

Mount count:              3

Maximum mount count:      26

Last checked:             Thu Feb 27 09:36:48 2014

Check interval:           15552000 (6 months)

Next check after:         Tue Aug 26 09:36:48 2014

Reserved blocks uid:      0 (user root)

Reserved blocks gid:      0 (group root)

First inode:              11

Inode size:          256

Required extra isize:     28

Desired extra isize:      28

Journal inode:            12

Default directory hash:   half_md4

Directory Hash Seed:      78b5adbc-9064-4627-ab0e-366cca41ad87

Journal features:         (none)

Journal size:             32M

Journal length:           8192

Journal sequence:         0x00000001

Journal start:            0




'리눅스-Linux' 카테고리의 다른 글

[Linux] 리눅스 bonding mode  (0) 2014.03.06
[Linux] dmsetup 와 dm-x 장치  (0) 2014.02.27
[Linux] yum repository 구성하기  (0) 2014.02.07
SSH 활용 sshpass  (0) 2014.02.06
[Linux] 파일입출력 정리 3 sed, awk  (0) 2014.01.24
Posted by 뭉탁거림
,

Yum repository 서버를 구성하는 방법

 

1. 구성방법

1) yum server에 계정을 생성 후 Home Directory에 필요한 rpm File을 복사

2) yum server는 Local로 Yum Repository를 구성

3) yum repository의 Client는 Server에 Anonymous FTP를 통해 해당 RPM 파일을 가져오는 구조


2. 작업 절차


(1) group, user 생성

groupadd -g 501 yumFile

useradd -g 501 -u 501 -d /home/yumFile yumFile

chwon root:root /home/yumFile

chmod 755 /home/yumFile

user의 Home Directory의 소유자와 그룹을 변경

(user의 Default 소유자와 그룹으로 두면 아래와 같은 오류가 뜨므로 root/root로 변경합니다.

500 OOPS: vsftpd: refusing to run with writable anonymous root)


(2) rpm File Copy

cd /mnt/Package

cp -r * /home/yumFile

cp -r repodata/ /home/yumfile/

 

필요한 rpm 파일을 yumfile User의 Home Directory로 복사

 

(3) 로컬 Yum Repository 구성

[root@localhost ~]# cd /etc/yum.repos.d/


yum.repos.d 디렉토리에 local.repo 추가

 

local.repo 내용

[local]

name=local

baseurl=file:///home/yumfile

enabled=1

gpgcheck=0

 

/home/yumfile 폴더를 기본 폴더로 설정하며 사용할 수 있도록 설정해 줍니다.

 

yum 초기화

[root@localhost yum.repos.d]# yum clean all

Loaded plugins: rhnplugin, security

Cleaning up Everything

[root@localhost yum.repos.d]# yum list

[root@localhost yum.repos.d]# yum repolist


yum.repos.d 디렉토리에 추가한 repository 목록 나옴



(4) FTP 설정

1) vsftp 설치

yum -y install vsftpd

 

2) chkconfig 수정

vsftpd 데몬 활성화를 위한 chkconfig를 수정

[root@localhost yum.repos.d]# chkconfig vsftpd on

 

3) vsftp configuration 수정

anonymous Ftp가 가능하도록 홈디렉토리를 수정

 

anonymous_enable=YES

ftp_username=yumfile

anonymous_enable : anonymous FTP가 가능 유무 설정

ftp_username : ftp가 사용할 default user를 설정합니다.

                      (Anonymous 붙을때 Default 사양하는 유저를 의미합니다.)

 

vsftpd 서비스를 기동합니다.

[root@localhost yum.repos.d]# service vsftpd start

vsftpd에 대한 vsftpd을 시작 중:                            [  OK  ]

 

4) 방화벽 open

/etc/sysconfig/iptables에 20번과 21번의 tcp port를 열어줍니다.

(아래 내용 추가)

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

 

방화벽 내용 저장

[root@Linux2 yum.repos.d]# service iptables save

방화벽 규칙을 /etc/sysconfig/iptables에 저장 중:           [  OK  ]

 

방화벽 서비스를 재기동 합니다.

service iptables restart

 

5) Anonymous FTP 연결 테스트

[root@Linux2 var]# ftp 192.168.2.130

Connected to 192.168.2.130.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as an authentication type

Name (192.168.2.130:root): anonymous

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

5) Client의 Yum Repository 구성

[ftp]

name=ftp

baseurl=ftp://192.168.2.130

enabled=1

gpgcheck=0

 

c참고 <http://rockball.tistory.com/156>

 

'리눅스-Linux' 카테고리의 다른 글

[Linux] dmsetup 와 dm-x 장치  (0) 2014.02.27
[Linux] dumpe2fs, tune2fs, fsck  (0) 2014.02.27
SSH 활용 sshpass  (0) 2014.02.06
[Linux] 파일입출력 정리 3 sed, awk  (0) 2014.01.24
[Linux] 파일입출력 정리 2 (sort)  (0) 2014.01.24
Posted by 뭉탁거림
,


sshpass -p password ssh -T -oStrictHostKeyChecking=no user@somehost 

sshpass -f pass.txt ssh user@somehost


#!/bin/bash

PUBKEY=`cat ~/.ssh/id_dsa.pub`

for m in `cat hosts.txt`
do

[[ ${m:0:1} == "#" ]] && continue # skip if comment

echo $m =============================

sshpass -f pass.txt ssh -T -oStrictHostKeyChecking=no user@$m <<EOF1
if [ ! -e ".ssh" ]
then
    mkdir .ssh
    chmod 700 ~/.ssh
fi

umask 022
echo $PUBKEY >> .ssh/authorized_keys
EOF1

done


출처 : http://aero.sarang.net/blog/2009/01/ssh-1.html 

Posted by 뭉탁거림
,

제가 가장 자주 이용하는 sed 명령어...

sed > cut > awk > 기타  순이라고 할까요...

매번 머리로만 기억하다가... 날잡고 정리 들어갑니다.


1. sed 


'리눅스-Linux' 카테고리의 다른 글

[Linux] yum repository 구성하기  (0) 2014.02.07
SSH 활용 sshpass  (0) 2014.02.06
[Linux] 파일입출력 정리 2 (sort)  (0) 2014.01.24
[리눅스] 파일입출력 정리1 (cut,paste)  (0) 2014.01.24
[리눅스] ulimit 설정  (0) 2014.01.20
Posted by 뭉탁거림
,

파일 입출력 1에 이어서..........

유용하게 써먹을 수 있는 sort !


1) sort [옵션] "filename"

ex) sort -k2 -r data.txt

옵션        -f : 대소문자를 구분하지 않음

        -r : 내림차순 정렬

  -k 필드 번호 나타냄

  -t : 필드 구분자 지정

  -n : 숫자 순서로 정렬


[root@chefclient02 ~]$cat exam1

red 28 010-8811-2655 seoul

blue 34 010-1232-1232 jechin

kaite 30 010-3434-2342 incheon

jain 22 010-3422-2312 busan

white 25 011-234-6666 daegu


sort를 옵션없이 사용할 경우 첫 번째 필드를 기준으로 오름차순 정렬

[root@chefclient02 ~]$sort exam1

blue 34 010-1232-1232 jechin

jain 22 010-3422-2312 busan

kaite 30 010-3434-2342 incheon

red 28 010-8811-2655 seoul

white 25 011-234-6666 daegu


-r 옵션을 통해 내림차순 정렬

[root@chefclient02 ~]$sort -r exam1

white 25 011-234-6666 daegu

red 28 010-8811-2655 seoul

kaite 30 010-3434-2342 incheon

jain 22 010-3422-2312 busan

blue 34 010-1232-1232 jechin


-k 옵션을 통해 기준이 되는 필드 지정

[root@chefclient02 ~]$sort -k2 exam1

jain 22 010-3422-2312 busan

white 25 011-234-6666 daegu

red 28 010-8811-2655 seoul

kaite 30 010-3434-2342 incheon

blue 34 010-1232-1232 jechin


-t 옵션을 통해 필드 구분자 지정 (위와 결과는 같다)

[root@chefclient02 ~]$sort -t ' ' -k2 exam1

jain 22 010-3422-2312 busan

white 25 011-234-6666 daegu

red 28 010-8811-2655 seoul

kaite 30 010-3434-2342 incheon

blue 34 010-1232-1232 jechin

'리눅스-Linux' 카테고리의 다른 글

SSH 활용 sshpass  (0) 2014.02.06
[Linux] 파일입출력 정리 3 sed, awk  (0) 2014.01.24
[리눅스] 파일입출력 정리1 (cut,paste)  (0) 2014.01.24
[리눅스] ulimit 설정  (0) 2014.01.20
[Linux] lsattr / chattr 명령어  (0) 2014.01.19
Posted by 뭉탁거림
,

리눅스 시스템을 구축하거나 운영할 시 파일 입출력이 상당히 도움이 될때가 있네요...

인자를 받아서 처리하거나 대량의 노가다 작업을 간단한 스크립트를 통해 처리도 가능하구요


자주쓰는 Linux 파일입출력 명령어와 옵션에 대해서 정리

1. cut [옵션] "filename" : 문자열 규칙에 맞추어 잘라서 출력

ex) cut -d ':' data.txt

옵션    :    -c 문자수로 열 계산하여 출력

   -d 파일 내의 필드 구분자 사용

   -f filed

[root@chefclient02 ~]$cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin


[root@chefclient02 ~]$cat /etc/passwd | cut -d : -f 1,7

root:/bin/bash

bin:/sbin/nologin

daemon:/sbin/nologin


2. paste [옵션] "filename" "filename2 : 다른 파일의 내용을 덧붙임

옵션     :    -s 다른 파일의 내용을 한 줄로 덧붙여 출력

    -d 출력되는 내용의 구분자 지정


ex) exam1, exam2 2개의 파일이 있을 경우

[root@chefclient02 ~]$cat exam1

red

blue

white

[root@chefclient02 ~]$cat exam2

yellow

green

gray

black


[root@chefclient02 ~]$paste exam1 exam2

red yellow

blue green

white gray

black


[root@chefclient02 ~]$paste -d : exam1 exam2

red:yellow

blue:green

white:gray

:black


[root@chefclient02 ~]$paste -s exam1 exam2

red blue white

yellow green gray black


[root@chefclient02 ~]$paste -s -d '|' exam1 exam2

red|blue|white

yellow|green|gray|black




Posted by 뭉탁거림
,

ulimit shell 또는 프로세스에 대해서 할당할 자원의 한계(limit)를 정하는 것으로 정의하면됩니다.


즉 리눅스 시스템에서 과부하를 막아주는 설정이라고 생각하시면 됩니다.



기본적으로 hard 설정과 soft 설정이 있으며 각 설정을 보려면 아래의 명령어로 확인 !

 $ ulimit -Ha : 하드 설정 전체 보기

 $ ulimit -Sa : 소프트 설정 전체 보기



하드는 해당쉘의 최대값을 뜻한다 하면 되고,  소프트는 현재 설정을 말한다 생각하면 된다.

hard 설정의 경우는 root권한으로만 변경 가능


$ ulimit -Sa

core file size          (blocks, -c) 0

data seg size           (kbytes, -d) unlimited

file size               (blocks, -f) unlimited

max locked memory       (kbytes, -l) unlimited

max memory size         (kbytes, -m) unlimited

open files                      (-n) 256

pipe size            (512 bytes, -p) 1

stack size              (kbytes, -s) 8192

cpu time               (seconds, -t) unlimited

max user processes              (-u) 266

virtual memory          (kbytes, -v) unlimited

 

/etc/security/limits.conf 에 설정 파일이 있으며 파일을 변경하거나 

ulimit -Sn 10240  <- 이런 식으로 각 설정별 옵션을 사용해서 변경 가능하면 된다.

수정한 내용의 적용은 해당 유저가 새로운 접속을 시도하면 적용된다.


Posted by 뭉탁거림
,

지난 작업과정에서 궁금했던 명령어 중 lsattr / chattr 명령어에 대해 정리합니다..

chmod 를 통해 일반적으로 파일의 소유권을 변경해서.. 파일을 보호하고 권한관리를 유지 하고 있지만

위 명령어를 사용하면

파일의 소유자라도 파일을 지울수도 수정할수도 없는 "읽기전용" 파일로 만들수가 있네요..

lsattr / chattr

전자는 attribute를 ls 해주고 후자는 눈치가 있다면 attribute를 chage 한다는 의미겠죠..?

옵션 :: i(읽기전용모드, 링크불가능, root권한만이 제거가능) / a(해당파일을 추가만할수 있음)

ex) # lsattr filename

# chattr +i filename

# chattr -a filename

Posted by 뭉탁거림
,