rabbitmq에서 사용자를 추가하고 vhost 추가하는 예제이다. 



$ ./rabbitmqctl add_user rabbitmq password


$ ./rabbitmqctl add_vhost /vhost


$ ./rabbitmqctl  set_permissions -p /vhost guest ".*" ".*" ".*"




주의할 점은 vhost 생성시 /도 포함시켜야 말 지를 잘 결정해야 한다. 

Posted by '김용환'
,




http://flux.org.uk/projects/rackmonkey/





Posted by '김용환'
,

mysql 완전 삭제

DB 2017. 9. 27. 15:29



mysql 서버를 설치하고 삭제후 재설치할 때,

기존 정보가 섞여서 지저분할 때가 있다. 꼭 다음 스크립트를 돌리는 게.. 정신적으로 편하다.




출처 : stackoverflow(기억이 안남..)


sudo -i

service mysql stop

killall -KILL mysql mysqld_safe mysqld

apt-get --yes purge mysql-server mysql-client

apt-get --yes autoremove --purge

apt-get autoclean

deluser --remove-home mysql

delgroup mysql

rm -rf /etc/apparmor.d/abstractions/mysql /etc/apparmor.d/cache/usr.sbin.mysqld /etc/mysql /var/lib/mysql /var/log/mysql* /var/log/upstart/mysql.log* /var/run/mysqld

updatedb



Posted by '김용환'
,





2017년 초부터 yahoo의 kafka monitor가 0.10.0.*을 지원한다..

(다행히)



https://github.com/yahoo/kafka-manager/pull/282


https://github.com/yahoo/kafka-manager/commit/dd80fd88a45d0c91e7b9e0cda732ae46e5a5c122



[Kafka 0.8.1.1 or 0.8.2.* or 0.9.0.* or 0.10.0.*](http://kafka.apache.org/downloads.html)



Posted by '김용환'
,





이제는 5.7부터는 secure-auth 옵션을 mysql에 사용할 수 없다.


mysql에서는 4.1이전의 암호화 방법이 있었다. 대부분 이 방식을 많은 mysql 언어별 라이브러리에서 사용하고 있었다. mysql을 사용하는 애플리케이션의 구버전을 migration할 때 이 부분을 주의할 필요가 있다.


mysql 5.7을 설치하고 python 구(old) sqlalchemy에서 mysql에 접근하면 아래와 같은 에러가 발생한다. 


InternalError: (InternalError) (1251, u'Client does not support authentication protocol requested by server; consider upgrading MySQL client') None None




--skip-secure-auth, --secure-auth=0을 사용하면 secure-auth를 0으로 설정하지 못한다는 에러가 발생하고 mysqld이 실행되지 않는다. 


https://dev.mysql.com/doc/refman/5.7/en/mysql-command-options.html#option_mysql_secure-auth


--secure-auth


Do not send passwords to the server in old (pre-4.1) format. This prevents connections except for servers that use the newer password format.


As of MySQL 5.7.5, this option is deprecated and will be removed in a future MySQL release. It is always enabled and attempting to disable it (--skip-secure-auth, --secure-auth=0) produces an error. Before MySQL 5.7.5, this option is enabled by default but can be disabled.







Posted by '김용환'
,
react 공부에 도움되는 싸이트..



velopert 님의 좋은 강의(유투브 짱)




해보기
http://codepen.io






스타터 킷
https://github.com/davezuko/react-redux-starter-kit


리액트 앱 시작 킷

https://github.com/facebookincubator/create-react-app





Posted by '김용환'
,

flask 환경 구성하기

python 2017. 9. 19. 21:55



flask 설정하기 


$ virtualenv flaskapp

Using base prefix '/Users/samuel.kim/.pyenv/versions/3.6.0'

New python executable in /Users/samuel.kim/dev/my/test-flask/flaskapp/bin/python3

Also creating executable in /Users/samuel.kim/dev/my/test-flask/flaskapp/bin/python

Installing setuptools, pip, wheel...done.




활설화하려면 다음 커맨드를 사용한다.


$ . bin/activate

(flaskapp)



이제 flaskapp virtualenv가 추가되었다. 


shell에 변경되어 있다. 

(flaskapp) [~] 

(flaskapp) [~] 



Flask를 설치한다. 


$ pip install Flask




main.py을 다음처럼 수정한다. 


from flask import Flask


app = Flask(__name__)



@app.route('/')

def hello_world():

    return 'Hello World!'



if __name__ == '__main__':

    app.run()




그리고 쉘에서 다음처럼 실행하고 localhost:5000에 접속한다.


$ export FLASK_APP=main.py

$ flask run

 * Serving Flask app "main"

 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

127.0.0.1 - - [19/Sep/2017 20:50:50] "GET / HTTP/1.1" 200 -





Posted by '김용환'
,

tcpCurrEstab

unix and linux 2017. 9. 19. 17:35




장비의 tcp 현재 전체 커넥션 개수를 snmp의 tcpCurrEstab를 통해 쉽게 얻을 수 있다. 


ESTABLISHED와 CLOSE_WAIT TCP 커넥션 개수를 얻는다. 


http://www.oid-info.com/get/1.3.6.1.2.1.6.9


"The number of TCP connections for which the current state is either ESTABLISHED or CLOSE-WAIT." 




Posted by '김용환'
,

pyenv 설치 방법

python 2017. 9. 19. 16:10



pyenv 설치 방법이다. 




$ python --version

Python 2.7.12


$ pyenv install 3.6.0


$ pyenv versions

  system

  2.7.12

* 3.6.0 (set by /Users/samuel.kim/.pyenv/version)






virtualenv를 설치한다.


$ python3 -m pip install virtualenv virtualenvwrapper


$ virtualenv

You must provide a DEST_DIR

Usage: virtualenv [OPTIONS] DEST_DIR



$ pip -V

pip 9.0.1 from /Users/samuel.kim/.pyenv/versions/3.6.0/lib/python3.6/site-packages (python 3.6)

 


$ pip install virtualenv virtualenvwrapper



$ brew install pyenv-virtualenv




~/.bash_profile에 다음을 추가한다. (설정)



export PATH="$HOME/.pyenv/bin:$PATH"

export PYENV_VERSION=3.6.0

eval "$(pyenv init -)"

eval "$(pyenv virtualenv-init -)"




~/.bash_profile을 읽는다. 


$ source ~/.bash_profile



.pyenv 밑에 python이 위치한다면 성공한 것이다.



$ which python

/Users/samuel.kim/.pyenv/shims/python

  

  


이제 정상적으로 동작하는 지 확인한다. pyenv에서 파이썬을 설치하려면 install 커맨드를 실행하며 다음과 같다. 



bash_profile에서 설정된 대로 동작되었다. 


$ python --version

Python 3.6.0(set by PYENV_VERSION environment variable)


$ pyenv install 3.6.1


$ pyenv shell 3.6.1

 

$ pyenv versions

  system

* 3.6.0 

* 3.6.1 (set by PYENV_VERSION environment variable)

  





pyenv의 특정 버전을 삭제하려면 uninstall을 사용하며 다음과 같다.


$ pyenv uninstall 3.6.0

  



pyven 버전 이동은 shell을 사용한다.


$ pyenv shell 2.7.12

$ pyenv version

2.7.12




'python' 카테고리의 다른 글

[python3] 파이썬 값/타입 확인 예제  (0) 2017.09.28
flask 환경 구성하기  (0) 2017.09.19
[python3] sorted 함수 예제  (0) 2017.07.20
[python3] python3에서 자주 실수하는 부분  (0) 2017.07.18
[python3] dict()의 in의 의미  (0) 2017.07.11
Posted by '김용환'
,

2017 한컴 MDS 컨퍼런스에서 카카오 스토리의 DevOps 사례를 발표했다.



Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례) from knight1128




후기 : 스토리에서 개발자로 일하면서 spec 환경을 미리 구축한 멀린에게 깊은 감사를 드리고 싶다. 
멀린이 없었더라면 내가 그렇게 목말라 했던 테스팅 환경 실제 구축 사례를 보지 못했을 것이다.
내가 한 일은 그냥 눈만 찍었을 뿐이고 좋은 사례 공유한 것만 있다. 

CI 환경은 무조건 필수이고 문화/속도에 따라 Devops를 집중시키는 방법도 좋을 것 같다. 


Posted by '김용환'
,