* 복제 : 클라이언트가 어느 노드에 접근하더라도 동일한 데이터를 읽을 수 있도록 데이터를 각 노드에 복제하여 저장하는 것을 말한다.

* 샤딩 : 데이터를 특정 조건에 따라 나누어 저장하는 것을 말한다.

  예를 들어 1부터 10까지 10개의 데이터를 두 대의 노드를 사용하여 샤딩을 수행한다고 가정하자.

  이때 첫 번째 노드에 1부터 5까지의 데이터를 저장하고 두 번째 노드에 6부터 10까지의 데이터를 저장하여 데이터를 분할 저장하는 방법을 샤딩이라 말한다.

* 샤드(Shard) : 두 개의 노드를 사용하여 데이터를 분할 저장하였을 때 각 노드를 샤드라고 부른다.

   만약 각 샤드가 복제를 사용하여 여러 개의 노드로 구성될 때에도 하나의 샤드로 취급한다.


http://develop.sunshiny.co.kr/1001

'공부하는 Study ' 카테고리의 다른 글

Foundry  (0) 2015.09.09
[chef] chef-client -z (chef-zero)  (0) 2015.09.04
[chef] knife node, knife client 제거  (0) 2015.09.04
[chef] Berkshelf  (0) 2015.09.04
[chef] cookbook 업로드시 dependencies 정의(metadata.rb)  (0) 2015.09.04
Posted by 뭉탁거림
,

Foundry

공부하는 Study 2015. 9. 9. 15:21

Foundry : 주문생산공장

다른 업체가 설계한 반도체를, 주문에 의해 반도체 칩을 생산해서 공급해 주는 사업/제조업체

1) 주문 생산 공장 중에는 여유 있는 제조 능력을 활용하여 다른 업체의 주문을 받아 반도체 제품을 제조하는 대규모 제조업체

'공부하는 Study ' 카테고리의 다른 글

Replication / Sharding  (1) 2016.06.09
[chef] chef-client -z (chef-zero)  (0) 2015.09.04
[chef] knife node, knife client 제거  (0) 2015.09.04
[chef] Berkshelf  (0) 2015.09.04
[chef] cookbook 업로드시 dependencies 정의(metadata.rb)  (0) 2015.09.04
Posted by 뭉탁거림
,

chef-zero—a simple, in-memory version of the Chef serverprovided by Chef DK—when converging the local workstation.


chef-client -z -o cookbook

chef-client -z -o chef-zero

옵션 설명 : -z(chef-zero) -o (recipe override)

chef workstation에서 chef-server 없이 local 모드로 cookbook를 적용할 수 있는 옵션이다

chef 서버 없이 간단히 적용할 수 있는 장점이 있음


chef-zero는 chef-client 구동 이후에 json 파일형식으로 node 디렉토리에 node에 대한 attributes 파일을 생성한다(참고)

'공부하는 Study ' 카테고리의 다른 글

Replication / Sharding  (1) 2016.06.09
Foundry  (0) 2015.09.09
[chef] knife node, knife client 제거  (0) 2015.09.04
[chef] Berkshelf  (0) 2015.09.04
[chef] cookbook 업로드시 dependencies 정의(metadata.rb)  (0) 2015.09.04
Posted by 뭉탁거림
,

knife를 이용해 node 및 client 삭제 시 ... 2번 지워야 되는 불편함 있음

knife node delete chef-client02

knife client delete chef-client02


chef-dk에서 제공하는 gem 을 통해 knife-pg 플로그인을 받아 

# chef gem install knife-playground

# knife pg clientnode delete chef-client02

한번에 삭제 가능!!!

'공부하는 Study ' 카테고리의 다른 글

Foundry  (0) 2015.09.09
[chef] chef-client -z (chef-zero)  (0) 2015.09.04
[chef] Berkshelf  (0) 2015.09.04
[chef] cookbook 업로드시 dependencies 정의(metadata.rb)  (0) 2015.09.04
chef-DK  (0) 2015.09.04
Posted by 뭉탁거림
,

Berkshelf : 요약하자면 managing cookbook dependencies 

Berkshelf는 의존성 있는 cookbook들은 모두 다운로드?(실제로 실제 쿡북의 로컬 저장 위치는 /root/.berkshelf/cookbooks)하고 chef-server에 cookbook upload 시 유용하다

Berksfile이라는 dependencies 파일에 의해 의존성 check를 함

metadata.rb에 dependencies cookbook을 기재하고...recipe file에 include_recipe 하면

berks install 시 의존성 cookbook 을 설치


[root@chef-mjs study]# berks install

Resolving cookbook dependencies...

Fetching 'study' from source at .

Fetching cookbook index from https://supermarket.chef.io...

Installing chef-client (4.3.1)

Installing chef_handler (1.2.0)

Installing cron (1.6.1)

Installing logrotate (1.9.2)

Installing ntp (1.8.6)

Using study (0.1.0) from source at .

Installing windows (1.38.1)


cookbook 의존성 관련 Berksfile.lock 파일 만들어짐

[root@chef-mjs study]# cat Berksfile.lock 

DEPENDENCIES

  study

    path: .

    metadata: true


GRAPH

  chef-client (4.3.1)

    cron (>= 1.2.0)

    logrotate (>= 1.2.0)

    windows (~> 1.37)

  chef_handler (1.2.0)

  cron (1.6.1)

  logrotate (1.9.2)

  ntp (1.8.6)

  study (0.1.0)

    chef-client (>= 0.0.0)

    ntp (>= 0.0.0)

  windows (1.38.1)

    chef_handler (>= 0.0.0)


berks upload 시 의존성 cookbook upload

[root@chef-mjs study]# berks upload --no-ssl-verify

Uploaded chef-client (4.3.1) to: 'https://chef-mjs:443/'

Uploaded chef_handler (1.2.0) to: 'https://chef-mjs:443/'

Uploaded cron (1.6.1) to: 'https://chef-mjs:443/'

Uploaded logrotate (1.9.2) to: 'https://chef-mjs:443/'

Uploaded ntp (1.8.6) to: 'https://chef-mjs:443/'

Uploaded study (0.1.0) to: 'https://chef-mjs:443/'

Uploaded windows (1.38.1) to: 'https://chef-mjs:443/'

Posted by 뭉탁거림
,

[root@chef-mjs study]# cat metadata.rb 

name 'study'

maintainer 'The Authors'

maintainer_email 'you@example.com'

license 'all_rights'

description 'Installs/Configures study'

long_description 'Installs/Configures study'

version '0.1.0'


depends 'apache2', '>= 1.0.4'


[root@chef-mjs study]# knife cookbook upload study 

Uploading study          [0.1.0]

ERROR: Cookbook study depends on cookbooks which are not currently

ERROR: being uploaded and cannot be found on the server.

ERROR: The missing cookbook(s) are: 'apache2' version '>= 1.0.4'


-> dependecy error 발생


- syntax

< (less than)

<= (less than or equal to)

= (equal to)

>= (greater than or equal to)

~> (approximately greater than)

> (greater than)




'공부하는 Study ' 카테고리의 다른 글

[chef] knife node, knife client 제거  (0) 2015.09.04
[chef] Berkshelf  (0) 2015.09.04
chef-DK  (0) 2015.09.04
SublimeText3 package control 관련  (0) 2015.06.10
RHCSA 준비 #2  (0) 2014.05.21
Posted by 뭉탁거림
,

chef-DK

공부하는 Study 2015. 9. 4. 13:39

The Chef Development Kit contains everything you need to start using Chef, along with the tools essential to managing the code that runs your business.


- Chef 개발에 있어 필요한 도구들의 집합

- chef workstation에서 패키지 설치 하나로 손 쉽게 개발에 필요한 utils 혹은 managing 도구들이모여있는 development kit


- command-line tool "chef" 추가

- cookbook 의존성 관리 프로그램 Berkshelf

- ChefSpec, Foodcritic, chef zero, 등등 유용한 util 포함 등등



# chef generate cookbook chef-repo/cookbooks/test

chef-dk에서 제공하는 chef 라는 명령어를 통해 cookbook 생성 가능

물론 knife cookbook create test 같은 개념이다.



'공부하는 Study ' 카테고리의 다른 글

[chef] Berkshelf  (0) 2015.09.04
[chef] cookbook 업로드시 dependencies 정의(metadata.rb)  (0) 2015.09.04
SublimeText3 package control 관련  (0) 2015.06.10
RHCSA 준비 #2  (0) 2014.05.21
[리눅스] RHCSA 정리 EX200  (0) 2014.05.20
Posted by 뭉탁거림
,
  1. 서브라임 텍스트3 package control 설치
  • View -> console

 

import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())

 

  1. 플러그인 설치

package control설치 후 preference > package control 선택 → install package 선택→ 플러그인 검색 후 설치


   3. sftp 설치 후 사용 ~

'공부하는 Study ' 카테고리의 다른 글

[chef] cookbook 업로드시 dependencies 정의(metadata.rb)  (0) 2015.09.04
chef-DK  (0) 2015.09.04
RHCSA 준비 #2  (0) 2014.05.21
[리눅스] RHCSA 정리 EX200  (0) 2014.05.20
RHCSA 준비  (0) 2013.10.21
Posted by 뭉탁거림
,

1. 기본 YUM 저장소 지점을 구성

# vi /etc/yum.repos.d/yum.repo

[base]

name=redhat

baseurl=http://localhost/pu/rhel6/server

enabled=1

gpgcheck=0

# yum clean all

# yum makecache


2. iso mount

# mkdir -p /media/cdrom

# mount -t iso9660 -r -o loop rhel6.3-2014.x86.dvd1.iso /media/cdrom

# vi /etc/fstab

./rhel6.3-2014.x86.dvd1.iso    /media/cdrom    iso9660    default, loop 0 0   






'공부하는 Study ' 카테고리의 다른 글

chef-DK  (0) 2015.09.04
SublimeText3 package control 관련  (0) 2015.06.10
[리눅스] RHCSA 정리 EX200  (0) 2014.05.20
RHCSA 준비  (0) 2013.10.21
mod_python  (0) 2013.10.14
Posted by 뭉탁거림
,

1. 계정/그룹/소유권 관련

# useradd -G admin harry : admin 그룹에 harry 계정 추가하기

# useradd -s /sbin/nologin harry : tom 계정 login shell inactive 하기

# useradd -u 1234 alex : user id 1234 alex 계정생성


chown 소유자.그룹 : 소유자, 소유그룹 동시에 변경

chgrp 파일 그룹 : 그룹변경


crontab -e

23 14 * * * /bin/echo hello


2. 검색

# find / -user harry -exec cp -rfp {} /opt/dir/ \;



3. LVM 생성/변경

# fdisk /dev/sdb 

# fdisk /dev/sdc

# pvcreate /dev/sdb1 /dev/sdc1


# vgcreate vg_name /dev/sdb1 /dev/sdc1

# vgcreate -s 8M : PE Size 지정


# lvcreate -l 100 -n lv_name vg_name

# mkdir /mnt/lvm

# mkfs.ext4 /dev/vg_name/lv_name

# mount 


확장

# vgextend vg_name /dev/xvdd1

# lvextend -L 1024M /dev/vg_name/lv_name

# resize2fs /dev/vg_name/lv_name

# lvdisplay


case I :- Current size of /home < 300MB


        # lvextend -L 300M /dev/mygrp/myvol


        # resize2fs /dev/mygrp/myvol


        # lvdisplay


        # df -h


case II :- Current size of /home > 300MB


       # umount /home


        # e2fsck -f /dev/mygrp/myvol


        # resize2fs /dev/mygrp/myvol 300M


        # lvreduce -L 300M /dev/mygrp/myvol


        # mount -a


4. 접근제어

# setfacl -m <rule> <file> : acl 기능을 추가 및 수정

# setfacl -x <rule> <file> : acl 기능 삭제


# setfacl -m u:natasha:rw /var/tmp/fstab    

# setfacl -m u:harry:--- /var/tmp/fstab         






'공부하는 Study ' 카테고리의 다른 글

SublimeText3 package control 관련  (0) 2015.06.10
RHCSA 준비 #2  (0) 2014.05.21
RHCSA 준비  (0) 2013.10.21
mod_python  (0) 2013.10.14
[python] 파이썬 Start  (0) 2013.10.12
Posted by 뭉탁거림
,