Nginx 는 전세계적으로 인기있는 웹 서버 입니다. 기존 웹 서버들과 달리 고속이며 대량의 접속을 적은 자원으로 처리해줍니다. 또, Nginx 는 Reverse Proxy 기능도 아주 훌륭하게 수행하며 이에 더해서 로드밸런싱 기능도 제공하는듯 다양한 기능을 다른 웹서버들보다 훌륭하게 수행합니다. 아키텍쳐(Architecture) 먼저 다음과 같은 아키텍쳐를 생각해 봅시다. AWS 에 흔히 볼수 있는 기본적인 아키텍쳐입니다. 외부 접속은 External ELB가 담당하고 이것을 뒤에 Nginx 서버가 ELB의 접속을 받아서 Nginx 뒤에 있는 Jboss EAP 서버에 분배 접속을 하도록 하는 것입니다. Nginx 로드 밸런싱(Load Balancing) Nginx 는 […]
Ubuntu 16.04 KVM 게스트에 콘솔 접속하기
KVM 가상화를 사용하고 있고 게스트로 Ubuntu16.04 를 사용하고 있다면 콘솔 접속을 위해서는 Grub2 설정을 다음과 같이 해주면 된다.
|
1 2 3 4 |
GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0" GRUB_TERMINAL=serial GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200 --stop=1" |
위와같이 해주고 다음과 같이 grub 을 갱신해준다.
|
1 |
update-grub |
[AWS] Private Subnet 으로 서비스 구성하기.
AWS 는 전 세계적으로 가장 인기있는 Cloud Platform 이다. Web Console을 이용해서 원하는 자원을 구성하고 컴퓨터, 네트워크, 저장소등을 실시간으로 생성할 수 있으며 네트워킹 구성도 실시간으로 구성이 가능하다. 그래서 많은 IT 업체들이 AWS 클라우드를 사용하고 있다. 특히나 전 세계를 대상으로 인터넷 서비스를 하려는 업체들은 AWS 를 통해서 막대한 IT 인프라 구축비용 절감하고 있다. 오늘은 AWS 클라우드를 이용해서 가장 많은 구성이며 기본적인 구성인 Web Service 를 Private Subnet 을 이용해 구성해보도록 하겠다. 이 포스트는 AWS 클라우드에 대해서 어느정도 기초지식을 갖추고 있다고 가정하고 […]
가상 Guest 이미지 마운팅
가상 Guest OS의 이미지를 마운트하는 법을 설명합니다. 이미지 마운트에는 두가지 방법이 있습니다. 첫번째방법 1.Guest OS 이미지에 파티션으로부터 디바이스 맵(Device Map)을 생성합니다.
|
1 2 3 |
]# kpartx -av /mnt/xen/images/test01_centos5_4_x64.img add map loop0p1 : 0 208782 linear /dev/loop0 63 add map loop0p2 : 0 10265535 linear /dev/loop0 208845 |
2.볼륨(Volume) 그룹을 스캔합니다.
|
1 2 3 |
]# vgscan Reading all physical volumes. This may take a while... Found volume group "VolGroup00" using metadata type lvm2 |
이렇게 볼륨이 잡히면 이 방법은 유효합니다. 그렇지 않으면 두번째 방법을 사용해야 합니다. 3.볼륨(volume) 그룹의 속성을 바꿉니다.
|
1 2 |
]# vgchange -ay VolGroup00 2 logical volume(s) in volume group "VolGroup00" now active |
볼륨의 상태를 확인합니다.
|
1 2 3 4 |
]# lvs LV VG Attr LSize Origin Snap% Move Log Copy% Convert LogVol00 VolGroup00 -wi-a- 3.84G LogVol01 VolGroup00 -wi-a- 1.03G |
4.이제 볼륨을 마운팅하면 됩니다.
|
1 |
]# mount /dev/VolGroup00/LogVol00 /opt/ |
이렇게 마운트가 되면 마운트 포인터(Mount Point)를 통해서 접근할 수 있습니다. 언마운트(Umount)는 다음과 같이 합니다. 5.언마운트(Unmount) 합니다.
|
1 |
]# umount /opt |
6.볼륨속성을 바꿉니다.
|
1 2 |
]# vgchange -an VolGroup00 0 logical volume(s) in volume group "VolGroup00" now active |
7.디바이스 맵을 지웁니다.
|
1 2 |
]# kpartx -d /mnt/xen/images/test01_centos5_4_x64.img loop deleted : /dev/loop0 |
두번째 방법 두번째 방법은 위의 […]
CentOS 7 Systemd 이해하기
CentOS 7로 배포판 버전이 바뀌면서 가장 크게 바뀐것이 Systemd 입니다. 기존의 볼수 없었던 서비스 하나일뿐이라고 생각할 수 있지만 Systemd 는 단지 서비스 하나의 문제가 아닙니다. Linux 의 기본 뼈대 프로세스 Linux는 운영체제 입니다. 전원을 넣고 부팅이 되는 과정에서 시스템을 초기화하고 기타 서비스들을 위한 환경을 조성하고 그들을 시작시켜주는 일을 하는 초기화 프로세스가 필요합니다. CentOS 6 까지는 Sys V 라고해서 init 프로세스가 이것을 담당했습니다. 커널이 메모리에 로딩되면 가장 먼저 실행되는 프로세스로 init 프로세스를 실행시킵니다. 이 프로세스는 init 스크립트, init 설정등을 기반으로 RunLevel […]
KVM Ubuntu 가상머신에 콘솔 접속하기
Ubuntu 를 KVM 가상머신으로 설치를 했다면 콘솔 접속을 해보면 안됩니다. 지난번에 CentOS6/7 배포판에서의 가상머신 콘솔접속에 대해서 다루어 었는데, Ubuntu 는 이들과 조금 다르기에 포스팅 해봅니다. 이 글은 ubuntu 14.04 를 대상으로 합니다. 처음 Ubuntu 를 KVM 가상머신으로 설치를 했다면 SSH 나 Virt-manager 나 vnc 를 이용해서 접속을 해야만 합니다. 그래야 콘솔접속을 위한 설정을 해볼 수 있습니다. GRUB 설정 공통 Grub 설정은 /etc/default/grub 에 있습니다. 다음과 같이 설정을 해줍니다.
|
1 |
GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0,38400n8 console=tty0" |
그리고 다음과 같이 업데이트를 해줍니다.
|
1 2 3 |
]# ## 둘중 하나만 해주면 됩니다. ]# update-grub ]# grub-mkconfig -o /boot/grub/grub.cfg |
Serial 콘솔 만들기 다음과 같이 […]
Apache Tomcat 연동하기 – mod_jk
Tomcat 을 단독으로 운영하지는 않는다. 여러 서버에서 설치한 후에 이것을 부하분산하는 방법으로 운영하는데, 자주 쓰이는 방법이 Tomcat 앞단에 Apache 웹 서버를 두고 이 둘을 연결해주는 방법으로 사용을 한다. 이때 연결방법이 여러가지가 있는데, Tomcat 과 Apache 를 위한 전용의 모듈이 있는데 그것이 바로 mod_jk 이다. mod_jk 는 AJP 프로토콜을 사용해서 이 둘을 연결해주는데, 다른 연결들보다 성능이 우수하다. 환경 이번 테스트한 환경은 다음과 같다. OS: CentOS7 x86_64 Java Version: jdk-1.8.0_u65 WAS: Tomcat 8.0.30 그리고 서버는 한대이고 Tomcat 을 여러개 설치했다. 이때에 하나의 […]
가상 머신에 콘솔 접속하기
CentOS 6/7 혹은 RHEL 6/7 은 KVM 가상화를 지원 합니다. 가상화를 위한 네트워크를 설정하고 가상화 패키지를 설치하면 이제 가상 머신, 게스트 OS 를 설치할 수 있게 됩니다. 그런데, 맨 처음에 게스트 OS 를 설치하고 나면 더구나 DHCP 로 IP를 할당 받는다면 설치가 끝나고 나서 할당된 IP를 모르기 때문에 바로 접속을 할 수가 없습니다. 그래서 virt-manager 를 이용해서 게시트OS 화면에 접속하고 로그인을 하고 IP를 확인한 후에 SSH를 이용해서 외부에서 접속이 가능해 집니다. 하지만 이것말고 호스트 OS 터미널에서 게스트 OS로 virsh 명령어를 […]
CentOS에서 SNMP 설치 및 설정하기
SNMP(Simple Network Management Protocol) 은 원래 네트워크 장비를 관리하기 위한 통신 규약입니다. 그런데, 이제는 네트워크 장비뿐만아니라 컴퓨터, 전자장비까지 확장해서 사용하고 있습니다. 리눅스 시스템에서도 SNMP를 사용할 수 있습니다. 이를 이용하면 SNMP 를 이용해서 중앙집중식으로 각각의 장비들의 자원, 자원사용량등을 장비에 거의 모든 것을 알 수 있고 가지고 올 수 있습니다. 저의 경우에는 Cacti 라는 시스템 자원 모니터링 시스템에서 원격 시스템의 자원 사용량을 가지고 오기 위해서 각 서버마다 SNMP를 사용합니다. 준비 이 문서는 다음과 같은 환경에서 작성되었습니다. CentOS 7 X86_64 SNMP는 서버/클라언트 구조를 가지고 […]