본문 바로가기
반응형

컴퓨터공학 기초/인프라15

[nginx] error code 별로 error page 보여주기 에러코드별로 별도의 에러페이지를 보여줘야 할 때가 많다. nginx 를 이용하여 간편하게 처리할 수 있다. http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip.. 2021. 2. 28.
[nginx] worker_processes 란 ? nginx에는 worker_processes 라는 지시어가 있습니다. 이 지시어는 워커 프로세스의 개수를 정의하는데 사용됩니다. worker_processes 1로 정의를 하면 프로세스는 1개만 뜨게 됩니다. 이 옵션을 수정하고 재시작 해보겠습니다. 최적의 값은 사용 가능한 CPU 코어의 수라고 합니다. 현재 제가 실행하고 있는 인스턴스는 2 Core이므로 worker_processes를 2로 설정해보겠습니다. 재시작 후 프로세스 수의 변화를 살펴 보겠습니다. 프로세스가 2개 뜬것을 볼 수 있습니다. 출처 : nginx.org/en/docs/ngx_core_module.html#worker_processes Core functionality Core functionality Example Configur.. 2021. 2. 27.
[nginx] GCP에 nginx 설치하기 근무하는 회사에서 서비스 운영을 맡게되었다. 그로 인해 대충 알고있던 인프라에 대해 공부를 해야겠다고 생각했고 그 시작으로 nginx 설치를 하려고 한다. 1. sudo yum install yum-utils 2. /etc/yum.repos.d/nginx.repo 파일 생성 후 내용 작성 이때 주의해야 할것은 sudo 명령어를 이용하여 열지 않으면 작성이 되지 않는다. [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=tru.. 2021. 2. 26.
[Tomcat] war파일 없이 배포하기 Tomcat에서 war파일 없이 배포하는 방법을 알아보도록 하겠다. symbolic link를 이용하여 배포할 수 있다. Tomcat/webapps 하위에 Symbolic link를 설정해서 따라가게 할 수 있다. tomcat/webapps 경로에 Symbolic link 생성 ln -s 소스경로 ROOT tomcat/bin/start.sh 실행 2021. 1. 2.
[Tomcat] org.apache.catalina.util.LifecycleBase.handleSubClassException Failed to initialize component [Connector[HTTP/1.1-8080] 원인 : 이미 사용중인 포트에 start 를 하려고해서, 아마 서버를 내릴때 제대로 안내려갔다던가 여러가지 이유로 포트를 중복 사용하는 것으로 인식할 것이다. 처리 ps -ef | grep tomcat 결과 나오는 process 번호를 kill 명령어를 사용해서 종료하면 된다. kill -9 ~~ 2021. 1. 1.
[ELK] Unable to connect to Elasticsearch. Error: Request Timeout after 30000ms Kibana를 실행할때 Unable to connect to Elasticsearch. Error: Request Timeout after 30000ms 에러가 나면서 실행이 안되는 경우가 있을 것이다. (In case of using Kibana, there may be an error "Cannot connect to Elasticsearch. Error: Request Timeout after 30000ms" and it may not be executed.) 해결방법 (solution) 설치경로/kibana/config 하위에 kibana.yml 파일의 elasticsearch.requestTimeout 의값을 180000으로 늘려준다. (Under Installation path/kibana/c.. 2020. 11. 8.
[인프라 도전기] ec2 에 배포하기 - 5부(외장톰캣 이용하여 배포하기) gradle 및 소스 설정 변경 war 파일생성 bootwar를 클릭하게 되면 war파일이 생성된다. /opt/톰캣경로/webapps 하위에 해당파일을 옮긴다. tomcat 설정변경 /opt/apache-tomcat-9.0.0.M22/conf/server.xml jar 파일 추가 java 9버전이상부터 아래 jar파일을 추가해야한다. javax.annotation-api-1.3.2.jar javax.xml.soap-api-1.4.0.jar jaxb-api-2.3.1.jar jaxws-api-2.3.1.jar 파일을 /opt/apache-tomcat-9.0.0.M22/lib 경로에 추가 tomcat 실행 cd /opt/apache-tomcat-9.0.0.M22/bin sh startup.sh 2020. 10. 11.
[인프라 도전기] ec2 에 배포하기 - 4부(tomcat9 설치하기) 설치할 폴더로 이동한다. cd /opt tomcat 설치 (설치 명령어) wget http://archive.apache.org/dist/tomcat/tomcat-9/v9.0.0.M22/bin/apache-tomcat-9.0.0.M22.tar.gz permission denied가 뜨면 sudo su 명령어를 실행 후 다시 진행한다. 압축풀기 tar -zxf apache-tomcat-9.0.0.M22.tar.gz firewalld 설치 yum install firewalld systemctl start firewalld systemctl enable firewalld firewall-cmd —permanent —zone=public —add-port=80/tcp firewall-cmd —permanent.. 2020. 9. 27.
[인프라 도전기] ec2 에 배포하기 - 3부(spring boot내장톰캣 이용하기) Spring boot는 내장톰캣을 가지고있다. Spring boot를 이용하여 배포하는 순서는 아래와 같다. 1. git repository를 생성하여 Spring boot로 작성한 소스코드를 업로드한다. 2. ec2에서 해당 repository를 clone한다. 3. clone한 폴더로 이동한다. 4. sudo ./gradlew build 명령어로 build 한다. 5. build를 하면 /build/libs 에 jar파일이 생성됐을것이다. java -jar /build/libs/-.jar (-.jar는 생성된 파일 이름)명령어를 실행하면 spring boot로 작성한 Application이 실행된다. 6. 결과확인 2020. 9. 21.
[인프라 도전기] ec2 에 배포하기 - 2부(java 설치하기) 1. putty를 이용하여 ec2에 접근한다. 2. sudo su 명령어로 root 권한에 접근한다. 3. sudo amazon-linux-extras install java-openjdk11 명령어를 사용하여 java를 설치한다. (본인은 11 version에서 코딩하므로 11로 설치) 4. java —version 명령어 실행 결과가 정상적으로 나온다면 설치가 정상적으로 이루어진것이다. 5. JAVA 위치 확인 which java 2020. 9. 21.
[인프라 도전기] ec2 에 배포하기 - 1부(ec2 생성하기) 회사일을 하다가 인프라를 모르면 제약이 많을것 같다는 느낌을 받았다. 그렇기에 인프라 공부를 틈틈히 해보기로 마음먹었다. 제일 처음으로 Linux에 WAS를 띄워보고자한다. WAS는 여러가지 종류가 있지만 제일만만한 tomcat으로 설치해보도록 한다. tomcat을 설치하기 위해서는 아래 세가지 일을 해야한다. ec2 생성하기 java 설치하기 tomcat 설치하기 1부에서는 ec2 생성을 하도록 하겠다. AWS 홈페이지를 접속하여 EC2 메뉴로 이동한다. EC2 메뉴로 이동하면 아래와같은 화면이 보인다 이 글을 쓰는 날짜 기준으로 오른쪽위에 인스턴스 시작이라는 버튼이 있다. 클릭해준다. 그렇다면 아래와 같은 화면이 나타날것이다. 우리는 WAS + 간단한 애플리케이션을 돌리기 위한 용도이므로 프리티어로 .. 2020. 9. 17.
[AWS] API Gateway 비 프록시 통합모드에서 querystring 받기 오늘은 Amazon API Gateway와 Lambda를 연결해보도록 하겠다. API Gateway 란 ? Amazon API Gateway는 간단하게 설명하자면 규모와 관계 없이 REST 및 WebSocket API를 생성, 게시, 유지, 모니터링 및 보호하기 위한 AWS 서비스입니다. 자세한 설명은 아래사이트에서 확인하실 수 있습니다. https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/welcome.html Amazon API Gateway란 무엇입니까? - Amazon API Gateway Amazon API Gateway란 무엇입니까? Amazon API Gateway는 규모와 관계 없이 REST 및 WebSocket API를 .. 2020. 8. 16.