Category Archives: Infra

Ubuntu 사용자 추가삭제

 

가끔 생각이 안날때가 있어서

 

[Mac] Mac 패키지 관리 툴 – Homebrew + Cask

Homebrew

[공식 사이트](https://brew.sh/index_ko.html)

예전에는 Mac에서 패키지관리를 할 때 MacPort를 많이 썼는데
요새는 Homebrew진영에 주도권을 넘겨준 모양새다.

Port는 소스코드를 받아서 컴파일 후 설치를 하는데 Brew는 미리 컴파일된 파일을 다운받아 바로 설치를 하니 속도가 빠르고 오류가 적다.

설치 방법

스크립트

사용법

Homebrew Cask

[공식 사이트](https://caskroom.github.io)

기존의 Homebrew가 라이브러리, 데몬 설치에 사용됐다면
Cask는 유틸리티 설치에도 사용된다

사용법

검색은 공식사이트에서 해도 된다

https://caskroom.github.io/search

사용후기

cask 설치 실패가 나는 경우도 종종 있다.

환경때문에 그런 것 같지는 않고 자주 안 쓰는 패키지는 관리가 안되는 경우가 종종 있는 것 같다.

공식앱스토어가 아닌 이런곳에서 패키지를 설치하는게 보안상 안좋을 수도 있을 것 같다. 리포지터리나 dns가 해킹당하는 경우 아니면 패키지에 바이러스를 심어서 배포하는 경우에는 위험할 수도 있다.

괜찮겠지?

Vagrant berkshelf 동작이 안되는 경우

vagrant도 ruby  기반이라서 내장 ruby gem을 가지고 있다

내장 ruby gem과 rbenv/rvm/그냥설치… 된 다양한 루비환경이 분리되어있기 때문에 생기는 문제

 

운이 좋으면 두개를 겹쳐서 설치해도 되는 경우도 있다.

명령어가 있는 gem은 설치시 path를 셋팅한다.

운이 좋으면 높은 우선순위를 잡아서 실행이 될수도 있다.

 

 

 

해결하려면 다른환경에 설치된 gem을 지우고 vagrant 내장 gem을 따로 설치 해 주면 된다.

gem uninstall chef chef-zero berkshelf knife-solo

맞나? 이거 대충써놨다가 수정하려니까 기억이 안난다.

딱봐도 아닌데… 이걸 지우는게 해결책일리가 없다.

 

vagrant 내장 gem을 설치해야할 것 같은데

다음에 생각나면 다시 해봐야겠다.

 

 

Vagrant에서 .bashrc source가 먹히지 않는 문제

오류상황

vagrant shell에서 rbenv가 안먹힌다.

vagrant ssh 접속해서 보니 설치가 잘 돼 있고 path도 잡혀있는데

vagrant 설치시에 command not found가 발생

source가 안먹히는건가? 라고 생각

 

검색해보니

키워드 :

  • vagrant
  • command not found
  • source
  • not working

맘에드는 대답이 안나왔는데… 찾다보니 이런게 보인다.

https://stackoverflow.com/questions/29628635/why-is-source-home-vagrant-bashrc-not-working-in-a-vagrant-shell-provisionin

.bashrc에 인터렉티브 쉘이 아닌경우 리턴을 시키는문구가 있다고?

 

ubuntu .bashrc를 확인

.bashrc의 맨 앞에 이런게 있다.

If not running interactively, don’t do anything.
인터렉티브 쉘이 아닌경우, 아무것도 하지마.

rbenv공식 메뉴얼에는 .bashrc에 패스를 잡으라고 돼 있었는데..(메뉴얼이 바뀐건가? bash_profile에 하라고 돼있네)
어쨌든 이전 메뉴얼대로 하면 안돌아간다.

위의 검색결과에 나오는 스택오버플로우에는
.bashrc에서 return명령을 없애라고 하는데… 필요해서 해놨겠지.. 이 방법은 안쓰겠다.
대신에 .bash_profile/.profile에서 패스를 잡고 source .profile을 하면 된다.
아니면 .custom_profile을 만들어서 임포트해도 되고 .profile.d/를 써도될듯

Ruby Version 관리 툴 – rvm.io rbenv

개요

rvm보다 가볍고 시스템에 영향을 주지 않는다(삭제하기쉽다)는 이유로 rbenv으로 루비 버전관리 툴의 대세가 넘어간 것 같다.

rvm

http://rvm.io 접속해서 스크립트로 설치

rbenv

설치는 좀 더 성가시다.
공식 주소 :
https://github.com/rbenv/rbenv
install명령을 쓰려면 이것도 깔아줘야한다 :
https://github.com/rbenv/ruby-build

ubuntu 17.04 desk

Load Balancing

개요

부하분산 방법

MSA
하드웨어방식 vs 소프트웨어 방식
예전에는 L4하드웨어방식만 썼는데 클라우드. 그리고 글로벌화되면서 상황이 좀 바뀌었다.

DNS

L$

L4
좋기야 하지.. 그런데 비싸다.
예전에는 많이 썼는데 요즘은??
클라우드에서도 L4를 지원해주긴하는데
속에서 몰래 소프트웨어방식으로 처리하는거 아닐까

Iptables

안해봤는데 될것같아

HaProxy

많이쓰는방법

ApacheHttpd – Proxy

Nginx – Proxy

Windows PowerShell, 윈도우 10을 쓰다보니…

윈도우10 쓰다가 우연히 발견했는데 …
쓰다보니 맘에들어 작업표시줄에 커맨드라인 대신 걸어놓고 쓴다.

CommandPrompt는 Dos의 콘솔창같은 느낌이라면 PowerShell은 LinuxTerminal의 좋은점을 좀 가져온 느낌이다. 색깔 때문인지 입력하는 느낌도 묘하게 다른게 많이 생소하다.
Gnu처럼 명령어도 좀 복잡한게 CommandPrompt보다 다양한 명령이 가능할 것 같다

실행은 두 가지 모드가 있던데 명령어 보이는 복잡한 창이랑.. 심플한 창이랑
뭐라고 명령어 입력하면 명령어 안내창이 나오기도 하던데…
일부러 공부할 생각은 없고.. 노가다성 작업이 필요할 때 마다 찾아보면서 하는게 좋지 않을까?

원래 윈도우 서버에서 쓰였던 것 같은데… 이제 이걸로 통합하려고 하는건가?

 

윈도우10 밑에 검색에 PowerShell 치면 나온다

 

 

윈도우에 도커 설치

도커 공식사이트 http://Docker.io

 

도커 공식홈페이지에서 지원하는 버전이 2가지가 있다.

DockerToolbox  // Docker for Windows
두 버전의 차이는 가상화 솔루션을 뭘 사용하냐의 차이다.
VirtualBox // Hyber-v

 

도커를 실행시키면 가상화솔루션에 리눅스os를 한개 띄워놓고 그걸 이용해서 서비스들을 실행시키는것으로 보인다.

윈도우에서 내장된 HyperV 서비스를 실행시키면 VT-d를 점유 해 버려서 VirtualBox에서는 64Bit OS를 사용할 수 없게 되기 때문에 …

두 가지를 동시에 쓸 수는 없고 한가지를 선택해서 사용해야한다.

 

성능상으로는 Docker for Windows가 더 뛰어나다는 말이 있다.
(http://bryan7.tistory.com/774)
그런데 Docker for Windows는 윈도우 10 Pro 빌드넘버 10586 이상에서만 사용 가능하니까 그 하위버전이라면 윈도우를 다시 설치해야한다.

윈도우 7,8 사용자는 Docker-Toolbox를 설치하면 될 것 같다.

그리고 버추어박스를 계속 사용해야한다면 DockerToolbox를 설치하자.

성능차이가 좀 있다고 하지만 어차피 테스트용인데 좀 느려봐짜 먼상관

 

Docker for Windows를 설치하는 경우

  1. Docker for Windows는 도커 공식사이트 메인에 있다. 그냥 설치하면 설치 완료 후에 hyper-v도 알아서 켜준다.

2. Kitematic  다운로드 설치

Docker Toolbox를 설치하는 경우

  1. 다음을 따라해서 윈도우hyperV가 켜져있을 수도 있으니 먼저 끄고 설치하도록!

 

2. 도커 툴박스를 다운받아서 설치하라!
https://www.docker.com/products/docker-toolbox
현재는 다음 항목이 설치된다.

 

 

 

도커 kine기초 사용은 튜토리얼이 필요없을 정도로 간단하다.
나는 이렇게 설치하긴 했는데 제대로 한건지는 모르겠다 아직 도커초보라서…

Windows7,8,10 – VirtualBox 64bit OS가 잡히지 않는경우

먼저 하드웨어 가상화 설정
CMOS에 보면 VT-D  또는 Virtualization 어쩌고 하는 항목이 있는데 True, Enable, OK 등등 설정해주면 된다. 최근 5년안에 나온 cpu나 메인보드에는 다 지원하는 것 같은데 없을수도 있다.

위 설정을 해놓으면 버추어박스에서 64비트 OS가 표시되는데… 이걸 다 해도 64비트가 잡히지 않는 경우가 있다.

이것은 윈도우에서 Hyper-V라는 버추어박스나 VMWARE와 같은류의 가상화 서비스인데 이게 먼저 실행되서 메인보드의 VT-D의 파이프?라인???을 선점해서 그렇다.  이것만 꺼주면 VirtualBox가 제대로 동작한다.

 

제어판(control??) – 프로그램 추가/제거(???) – Windows 기능 켜기/끄기(features?)
에 들어가서 Hyper-V항목을 전체 다 끄고 재부팅하면 VirtualBox에 64비트가 표시된다.

 

요즘은 Docker가 윈도우의 Vt-D를 사용해서 … 이것저것 쓰려면 Hyper-V를 쓰는게 낫지 않을까 하는 생각도 든다.