'OSS(Open Source Software)'에 해당되는 글 33건

  1. 2017.08.24 :: git에서 tag 추가하기
  2. 2017.08.22 :: CentOS7 에 zabbix 3.2 설치하기
  3. 2014.07.10 :: bare 저장소 복제
  4. 2014.06.19 :: chef client 변경 내역 갱신하기
  5. 2014.06.18 :: 원격 저장소 생성
  6. 2014.06.18 :: 커밋 보기
  7. 2014.06.18 :: 저장소 만들기
  8. 2014.06.18 :: git 명령행
  9. 2014.06.18 :: 설치하기
  10. 2014.06.17 :: chef 설치 시 postgresql createdb 실패
OSS(Open Source Software)/git 2017. 8. 24. 14:00

사용법

git tag [태그명]


예시1) 현재 소스 커밋에 v1.0.0 tag를 추가

# git tag v1.0.0


'OSS(Open Source Software) > git' 카테고리의 다른 글

bare 저장소 복제  (0) 2014.07.10
원격 저장소 생성  (0) 2014.06.18
커밋 보기  (0) 2014.06.18
저장소 만들기  (0) 2014.06.18
git 명령행  (0) 2014.06.18
posted by 구닥다리 엔지니어
:

설치 환경

  • OS : CentOS7

  • Zabbix Version : 3.2

  • WAS Server : Nginx 1.12.1 + PHP-FPM 5.4.16


1. zabbix server 설치

1-1. 필수 패키지 설치 - DBMS

# yum install mariadb mariadb-server

1-2. zabbix 3.2 Repository 패키지 설치

# rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

1-3. zabbix 설치

# yum install zabbix-server-mysql zabbix-web-mysql

### agent 설치

# yum install zabbix-agent

1-4. 서비스 활성화 및 시작

# systemctl start mariadb

# systemctl enable mariadb

# systemctl enable zabbix-server

1-5. 데이터베이스 초기화

# mysql -uroot -p<password>

mysql> create database zabbix character set utf8 collate utf8_bin;

mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '<password>';

mysql> flush privileges;

mysql> quit;

1-6. zabbix 초기 데이터 복구 - 패키지 설치인 경우만

# cd /usr/share/doc/zabbix-server-mysql-3.2.x

# zcat create.sql.gz | mysql -uroot zabbix

1-7. zabbix server 설정에 DB 접속 정보 수정 - /etc/zabbix/zabbix_server.conf

DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=password

1-8. zabbix server 시작

# systemctl start zabbix-server


2. nginx 설치

2-1. nginx repo 추가

/etc/yum.repos.d/nginx.repo

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

2-2. 설치

# yum install nginx

2-3. 설정

vhost 설정을 적절하게 수정해 준다. 

ex) /etc/nginx/conf.d/vhost.conf

server {

    listen                  80;

    server_name        example.com;


    charset               utf-8;

    access_log          /var/log/nginx/zabbix-access.log  main;


    location / {

        root   /usr/share/zabbix;

        index  index.html index.htm index.php;

    }


    error_page  404              /404.html;


    error_page   500 502 503 504  /50x.html;

    location = /50x.html {

        root   /usr/share/nginx/html;

    }


    location ~ \.php$ {

        root           /usr/share/zabbix;

        fastcgi_pass unix:/tmp/php5-fpm.sock;

        fastcgi_index index.php;

        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

        include fastcgi_params;

     }

}


3. php-fpm 설치

3-1. php-fpm 설치

# yum install php-fpm

3-2. php-fpm 설정

/etc/php-fpm.d/www.conf 

listen = /tmp/php5-fpm.sock

user = nginx

group = nginx

3-3. 서비스 시작

# systemctl start nginx

# systemctl start php-fpm

4. frontend 설치

4-1. http://server_ip/zabbix 이동

php의 기본 설정을 사용했기 때문에, 위와 같이 권장 옵션 값으로 변경하라는 메시지가 나온다.

4-2. 권장 옵션값에 맞게 php 설정을 수정

/etc/php.ini

post_max_size = 16M

max_execution_time = 300

max_input_time = 300

date.timezone = Asia/Seoul

4-3. DB 연결 설정

4-4.  zabbix server 설정

4-5. 요약

4-6. 완료

초기 암호 : Admin / zabbix



posted by 구닥다리 엔지니어
:
OSS(Open Source Software)/git 2014. 7. 10. 13:50

.git으로 된 파일이 bare 저장소 이다. 

git clone을 실행해서 저장소를 복제하게 되는데, 복제하는 방법은 두가지가 있다.


저장소 복제

$ git clone my_host:/project


bare 저장소 복제

$ git clone --bare my_host:/project


'OSS(Open Source Software) > git' 카테고리의 다른 글

git에서 tag 추가하기  (0) 2017.08.24
원격 저장소 생성  (0) 2014.06.18
커밋 보기  (0) 2014.06.18
저장소 만들기  (0) 2014.06.18
git 명령행  (0) 2014.06.18
posted by 구닥다리 엔지니어
:
OSS(Open Source Software)/chef 2014. 6. 19. 15:01

도메인이 변경 되면서 chef-client 의 정보가 변경되었다.

하지만 자동으로 반영이 되지 않았으며, 이를 반영하기 위해 다음과 같이 진행했다.


$ knife client edit chef-client


도메인 변경이었기 때문에, edit를 이용해 수정만 하면 될 줄 알았지만, 해당 client나 node의 name만 변경이 가능했다. 즉, 내가 바꾸고 싶었던 fqdn은 변경이 되지 않았다.


어떻게 해야 할까..?


먼저 edit를 이용해 name을 변경할 경우, 새로운 node or client가 생성되는데, 나는 기존 도메인으로 되어 있던 client와 node를 삭제 했다.


그리고, 클라이언트에서 chef-client를 실행했는데 에러가 발생했다.. 아무래도 키가 다시 생성된 것 같다. 


클라이언트 등록을 다시 해야겠다.


우선 클라이언트에서 /etc/chef 디렉토리에 있는 파일을 전부 삭제 했다.

그리고, 다음 명령어를 이용해서 validation.pem 파일과 client.rb 파일을 생성했다.

$ knife configure client /etc/chef

client.rb 파일에 서버 url이 localhost로 들어가 있었는데, 이를 chef-server 도메인으로 변경해 주었다.


다음으로 서버와 통신할 수 있는 키를 생성해 주어야 하는데, 이는 서버쪽(chef-repo/.chef)에서 생성해야 한다. 생성하는 방법은 다음과 같다.

$ knife client reregister chef-server.example.com -f client.pem

생성 된 client.pem 파일을 chef-client에 복사하고 chef-client 명령을 실행하면 완료 된다.


새로운 키로 연결 된 후에는 나중에 변경된 fqdn으로 잘 등록이 되었다.

'OSS(Open Source Software) > chef' 카테고리의 다른 글

chef 설치 시 postgresql createdb 실패  (0) 2014.06.17
리눅스 파일 퍼미션 변경 recipe  (0) 2014.05.20
chef 구성  (0) 2014.04.15
Resource란?  (0) 2014.04.14
멱등성이란?  (0) 2014.04.14
posted by 구닥다리 엔지니어
:
OSS(Open Source Software)/git 2014. 6. 18. 18:33

svn을 사용하다가 git을 사용하려하니 개념이 잘 안잡히는 부분이 있었다.


이를 잘 설명한 링크이다.

http://www.slideshare.net/einsub/svn-git-17386752


git의 경우 중앙저장소를 이용하는 방식이 아니라 분산된 로컬 저장소를 이용하는 방식이다. git의 장점 중 하나이며, 이때문에 약간 혼란스러웠다.


원격저장소는 분산되어 있는 각 로컬저장소에서 최종적으로 소스를 올릴 수 있는 저장소이다. svn 사용자가 알고 있는 svn 서버의 저장소가 이 부분이다.


로컬저장소와 원격저장소간에 동기화 하는 방법은 push/pull 을 이용한다.

push는 로컬저장소의 파일을 원격저장소에 올리는 방법이고, pull은 원격저장소의 파일을 로컬저장소에 받는것을 의미한다.

즉, svn 에서의 commit / update 개념과 같다.


원격저장소를 등록하는 방법은 remote 명령을 이용하거나 clone하는 방법이 있다.


먼저 remote 하는 방법은 다음과 같다.

$ git remote user@host:/path/gitfile.git


다음 clone 하는 방법인데, bare 파일을 clone 한다.

$ git clone user@host:/path/gitfile.git


원격 저장소를 수동으로 변경하고 싶거나 확인하려면 다음을 확인한다.

# .git/config 파일에서 다음을 확인


[remote "origin"]

fetch = +refs/heads/*:refs/remotes/origin/*

url = user@host:/path/gitfile.git


'OSS(Open Source Software) > git' 카테고리의 다른 글

git에서 tag 추가하기  (0) 2017.08.24
bare 저장소 복제  (0) 2014.07.10
커밋 보기  (0) 2014.06.18
저장소 만들기  (0) 2014.06.18
git 명령행  (0) 2014.06.18
posted by 구닥다리 엔지니어
:
OSS(Open Source Software)/git 2014. 6. 18. 16:28

저장소에 커밋이 한 개 이상 있으면 다양한 방법으로 커밋을 살펴볼 수 있다.

개별 커밋을 순서대로 보여 주는 명령어도 존재하고, 개별 커밋의 요약 정보를 보여 주는 명령어 그리고 저장소에 있는 커밋의 상세 정보를 보여주는 명령어도 있다.


git log

$ git log

commit 

Author: root 

Date:   Wed Jun 18 16:12:05 2014 +0900


    저장소 생성


최근 항목부터 가장 오래된 항목까지 순서대로 나열된다. 여기서 확인할 수 있는 정보는 커밋 작성자의 이름과 이메일 주소, 커밋 날짜, 변경 사항에 대한 로그 메시지 및 커밋의 내부 ID 번호를 보여준다.


git show

커밋의 상세 정보를 보려면 다음과 같이 커밋 번호와 함께 show 명령을 사용한다.

$ git show cf315b41617d8535a63c96ad55223a1e33569c61

명시적인 커밋 번호 없이 git show를 실행하면 가장 최근 커밋에 대한 상세 정보가 표시된다.


git show-branch

현재 개발 브랜치에 대한 간단한 요약 정보를 한 줄로 보여준다.

$ git show-branch --more=5

--more : 최대로 표시할 버전 지정


커밋 차이점 보기 : git diff

git diff [커밋 ID] [커밋 ID]

리눅스에서 사용하는 diff와 같다.

'OSS(Open Source Software) > git' 카테고리의 다른 글

bare 저장소 복제  (0) 2014.07.10
원격 저장소 생성  (0) 2014.06.18
저장소 만들기  (0) 2014.06.18
git 명령행  (0) 2014.06.18
설치하기  (0) 2014.06.18
posted by 구닥다리 엔지니어
:
OSS(Open Source Software)/git 2014. 6. 18. 16:13

git에서는 저장소로 만드는 방법이 간단하다.


저장소로 사용할 디렉토리로 이동해 다음 명령을 실행 하면 된다.

$ git init


저장소에 파일 추가하기

콘텐츠를 관리하려면 저장소에 명시적으로 저장해야 한다. 이러한 의식적인 절차를 따르는 이유는 중요한 파일과 의미 없는 파일을 구별하기 위함이다.


다음과 같이 파일을 저장소에 추가한다.

$ git add file


add를 수행한 이후에도 파일은 커밋 이전의 중간 단계에 머물러 있다. 안정성을 높이기 위해 add 단계와 commit 단계를 구분해 놓았기 때문이다.


다음과 같이 상태를 확인할 수 있다.

$ git status

# On branch master

#

# Initial commit

#

# Changes to be committed:

#   (use "git rm --cached <file>..." to unstage)

#

#       new file:   chef/a



커밋 시 편집기가 열리도록 구성하려면 다음과 같이 한다.

$ export GIT_EDITOR=vim


커밋을 하려면 다음과 같이 한다.

$ git commit


'OSS(Open Source Software) > git' 카테고리의 다른 글

bare 저장소 복제  (0) 2014.07.10
원격 저장소 생성  (0) 2014.06.18
커밋 보기  (0) 2014.06.18
git 명령행  (0) 2014.06.18
설치하기  (0) 2014.06.18
posted by 구닥다리 엔지니어
:
OSS(Open Source Software)/git 2014. 6. 18. 15:49

git의 전체 하위 명령어 목록을 보려면 다음과 같이 한다.

$ git help --all


하위 명령어에 대한 설명은 다음과 같이 확인할 수 있다.

$ git help [subcommand]

$ git help commit


git 명령어는 "짧은" 옵션과 "긴" 옵션을 모두 이해할 수 있다. 예를 들어, 다음과 같은 두 가지 명령어는 동일한 기능을 수행한다.

$ git commit -m "Fixed a typo."

$ git commit --message="Fixed a typo."


"순수 이중 대시" 규칙을 통해 옵션과 인수 목록을 구분할 수 있다. 다음과 같이 이중 대시를 사용하여 명령행의 제어 부분과 피연산자 목록을 구분할 수 있다.

$ git diff -w master origin -- tools/Makefile


# "main.c"라는 이름의 태그를 체크아웃한다.

$ git checkout main.c


# "main.c"라는 이름의 파일을 체크아웃한다.

$ git checkout -- main.c


'OSS(Open Source Software) > git' 카테고리의 다른 글

bare 저장소 복제  (0) 2014.07.10
원격 저장소 생성  (0) 2014.06.18
커밋 보기  (0) 2014.06.18
저장소 만들기  (0) 2014.06.18
설치하기  (0) 2014.06.18
posted by 구닥다리 엔지니어
:
OSS(Open Source Software)/git 2014. 6. 18. 15:38

git은 패키지로 설치가 가능하다.


git-arch

git-cvs

git-svn

arch, cvs, svn과 git 간에 프로젝트를 옮길 필요가 있는 경우에는 이들 중 필요한 패키지를 설치한다.


yum install git git-svn


'OSS(Open Source Software) > git' 카테고리의 다른 글

bare 저장소 복제  (0) 2014.07.10
원격 저장소 생성  (0) 2014.06.18
커밋 보기  (0) 2014.06.18
저장소 만들기  (0) 2014.06.18
git 명령행  (0) 2014.06.18
posted by 구닥다리 엔지니어
:
OSS(Open Source Software)/chef 2014. 6. 17. 10:28

chef 서버를 설치 하다가 postgresql createdb 하는 부분에서 계속 실패가 발생했다. 문제 확인을 위해 로그를 찾아보던 중 다음과 같은 에러를 확인 할 수 있었다.

/var/log/chef-server/postgresql/current

2014-06-17_01:17:33.19583 FATAL:  could not create shared memory segment: Invalid argument

2014-06-17_01:17:33.19585 DETAIL:  Failed system call was shmget(key=5432001, size=8629649408, 03600).

2014-06-17_01:17:33.19586 HINT:  This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMMAX parameter.  You can either reduce the request size or reconfigure the kernel with larger SHMMAX.  To reduce the request size (currently 8629649408 bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections.

2014-06-17_01:17:33.19588       If the request size is already small, it's possible that it is less than your kernel's SHMMIN parameter, in which case raising the request size or reconfiguring SHMMIN is called for.

2014-06-17_01:17:33.19588       The PostgreSQL documentation contains more information about shared memory configuration.

문제는 커널에서 지정한 kernel.shmmax 값이 2G로 설정되어 있었는데, postgresql 에서 원하는 값은 8G 이상이었다. 

이를 해결하기 위해 요청의 크기를 줄이거나 shmmax 값을 다시 구성하는 방법이 있는데, shmmax 값을 다시 구성하는 방법은 커널 값을 수정 하는것이고, 요청의 크기를 줄이는 방법은 shared_buffers 또는 MAX_CONNECTIONS를 줄여, PostgreSQL의 공유 메모리 사용을 줄일 수 있다.

'OSS(Open Source Software) > chef' 카테고리의 다른 글

chef client 변경 내역 갱신하기  (0) 2014.06.19
리눅스 파일 퍼미션 변경 recipe  (0) 2014.05.20
chef 구성  (0) 2014.04.15
Resource란?  (0) 2014.04.14
멱등성이란?  (0) 2014.04.14
posted by 구닥다리 엔지니어
: