프로그래밍/AWS
[NodeJS] 80 포트를 사용하고 싶을때
2017.02.0980포트를 사용하고 싶은데 자꾸 에러날때는 서버에서 이렇게 해주면 된다. 낮은 포트번호는 이미 OS단에서 예약이 되어있기 때문에 80포트를 노드에게 허락해주지 않는다는데... 이를 우회하는 명령어이다. sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000 출처:Best practices when running Node.js with port 80 (Ubuntu / Linode)
[AWS] Cloud Watch Perl script 적용
2015.07.29아마존에서 인스턴스를 사용할 경우 Cloud Watch의 기능 중에 커스텀 메트릭을 볼 수 있는 기능이 있다.해당 기능은 특정 인스턴스 버전에서 사용할 수 있으며, 다른 인스턴스들의 경우 펄스크립트를 설치해야만 사용할 수 있다. sudo yum install perl-DateTimesudo yum install perl-DateTime perl-Sys-Syslog perl-LWP-Protocol-https 아마존 리눅스의 경우 위 두가지의 명령어를 입력한후에 기다리면 커스텀 메트릭을 사용할수있다. 참고:http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/mon-scripts-perl.html
[AWS] Git hook을 이용한 서버 디플로이
2014.11.12평소에는 AWS Elastic Beanstalk를 이용하는 편인데, 가끔 EC2 인스턴스를 만들어 사용하게 되는 때가 있다.EB에서는 aws.push라는 편리한 기능을 제공하기 때문에 별로 신경 쓸일이 없었는데, EC2에서는 디플로이가 참 불편하다고 생각되었다. 그래서 찾은 방법이 git을 이용하여 디플로이하는 방법이다.이것은 Setup git deploy for aws ec2 ubuntu instance위 링크를 (필요한 부분만)번역한것이므로 헷갈리시는 분은 링크를 참고 바란다. AWS 우분투 인스턴스에 GIT을 이용한 디플로이 설정하기 GIT 디플로이 세팅 1. 퍼블릭 키를 ec2 인스턴스로 복사cat ~/.ssh/id_rsa.pub | ssh -i ~/.ssh/your_pemfile.pem ubun..
[AWS] AMI에서 Redis를 서비스로 실행.
2014.04.28이 글을 일부 복사한 것입니다. AWS에 redis를 설치하여 실행을 시켰는데, AMI에서는 내가 실행한 redis가 보이지 않았다.당연했다. 내가 이미지를 생성하기전에 아무리 레디스를 실행시켰다고 한들, 그 이미지를 이용한 리눅스 부팅시에는 내가 실행해준데로 redis가 동작할리 없었기 때문이다. 그래서 여전히 redis 에러가 발생했다. 이를 해결하기위해 리눅스를 실행할때 redis를 실행하는 방법 등을 계속 알아보던 차에, redis를 service로 실행해 놓으면AMI에서 인식한다는 것을 알게 되었다. 엄청난 삽질의 끝이 보이기 시작한 것이었다. 그래서 윗 글을 찾게 되었고, 이 방법대로 하니 되더라:) 구글의 위대함이란! 나도 언젠가 나 스스로 알아내서 남에게 공유하는 날이오기를 고대하고 또 고..
[AWS] ulimit, file descriptor 설정
2014.04.17리눅스에서는 소켓파일이 열리는 개수를 제한해 놓는다.즉 동시에 접속할 수 있는 사용자의 수를 제한해 놓는 것이다. 이를 해결하는 것은 ulimit설정을 바꾸는 것이다. 자신의 ulimit확인은 ulimit -aulimit -Hnulimit -Sn 등등이 있다. 이를 쉘상에서 수정하는 방법은 1. 명령어를 통한 일시적인 수정ulimit -n 20000이런 식의 명령어를 쓰면된다. 2. 파일을 고치는 영구적인 수정 /etc/security/limits.conf 위의 파일에 # * soft nofile 20000 * hard nofile 20000적정한 자리에 위와 같이 추가하면 된다. aws 인스턴스의 경우 바꾼후 reboot해주면 적용된다. 출처:http://stackoverflow.com/question..
[AWS]No space left on the disk
2014.04.17AWS를 이용해 인스턴스를 실행시키다 보면, 디스크가 꽉차는 경우가 생긴다.나같은 경우는 인스턴스를 빈스토크(Elastic Beanstalk)을 이용해 돌리고 있는데, 디플로이 할때나 내가 설치한 다른 모듈들에서 로그가 생기는지 디스크가 꽉차는 경우가 발생했다. IOError: [Errno 28] No space left on device . 내가 받은 에러는 이런 에러였다. 음하하하하하하하하하하하하하하.... 이것때문에... 휴.늘어난 사용자 때문에 로그가 계속 쌓이다가 죽은듯 했다. 무튼 저것을 방지하려면, 루트 계정의 디스크 사용 공간을 늘려줘야한다. 아래의 글은 스택오버플로의 글을 복사해 놓은 것이다.Thanks to Riaz Rizvihttp://stackoverflow.com/questions..
[AWS]리눅스 redis 설치
2014.04.17다음과 같이 하면 된다. wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable make gcc가 깔려 있지 않다면, sudo yum -y install gcc-c++ 이라고 치면 된다. (-y는 yes 옵션) zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory 이러한 에러가 나면 make distclean 을 실행 후에 다시 make 한다. 출처:http://redis.io/topics/quickstarthttp://blog.naver.com/PostView.nhn?blogId=kimtaiyong&logNo=1500..
[Server] AWS Elastic Beanstalk SSL 설치
2014.01.27안녕하세요. 계속 블로그를 못했는데요... 파워블로거의 꿈은 접고.. 요즘 서버 개발에 한창입니다. 아직 초짜라 하나하나 배우고있는데요. 이건 꼭 남겨놔야겠다 싶은게 있으면 종종 들려서 글을 쓰려고합니다. AWS::Install CertSSL Configuration for AWS Elastic Beanstalk 이 글은 위의 글을 참고한 것입니다. STEP1 :OpenSSL 설치 및 환경변수 설정STEP2: Private Key 생성STEP3: CSR 생성 (Certificate Signing Request)STEP4: SSL Cert를 CA에 요청하여 받기STEP5: AWS IAM Command Tool 설치 (Identity And Management)STEP6: SSL Cert를 IAM에 업로드S..