Skill Up/우아한테크캠프 Pro 4기

[우아한테크캠프 Pro 4기] 4주차 미션(2) - AWS 서버 설정하기 & 배포 스크립트 작성하기

2022. 7. 17. 13:51

1. AWS 서버 설정하기

linux hostname 설정

  • sudo hostnamectl set-hostname [name]

shell prompt 설정

sudo vi ~/.bashrc

USERNAME=BASTION
PS1='[\\e[1;31m$USERNAME\\e[0m][\\e[1;32m\\t\\e[0m][\\e[1;33m\\u\\e[0m@\\e[1;36m\\h\\e[0m \\w] \\n\\$ \\[\\033[00m\\]'

## [\\e[1;31m$USERNAME\\e[0m] - USERNAME 영역
## [\\e[1;32m\\t\\e[0m] - 시간대
## [\\e[1;33m\\u\\e[0m@\\e[1;36m\\h\\e[0m \\w] \\n\\$ \\[\\033[00m\\] - 아마도 그 외
## USERNAME 영역 제외한 쉘 추가 결과
[14:26:13][ubuntu@bastion ~]
$

logger 를 사용하여 감사로그 남기기

  • /var/log/messages 의 경우 파일이 없다. 우분투 10버전부터는 생성하지 않는 것이 기본 옵션!
    • 참고 : 우분투 /var/log/messages 로그파일이 없을때?
  • web 서버 -> bastion 서버로 감사 로그 남기기
    1. manage 보안 그룹 인바운드 규칙 > UDP 514 포트 public 보안 그룹으로 추가
    2. bastion 서버 > /etc/rsyslog.conf 포트 주석 해제
    3. web 서버 > /etc/rsyslog.d/50-default.conf > local0.* @[bastion private IP] 추가
    • 참고 : [CentOS 8] 시스템 로그
      rsyslog를 이용한 syslog 포워딩
      리눅스 rsyslog 개념 및 사용법

ssh 접속 오류

  • 특정 장소에서 접속 허용 IP 추가했는데 안됨 알고보니 SK브로드밴드에서 22를 비롯 다양한 port를 막아둬서..?!
  • 참고 : [AWS] EC2, ssh online - timeout, port 22 problem

포트포워딩

  • 8080 포트로 실행중인 서버에 대해 80 포트로 포트포워딩
  • Ubuntu 20.04 Firewall 설정
  • 참고 : AWS- ec2 포트 포워딩(port forwarding)
  • 포트포워딩 오류가 났는데 해답은 서버 reboot!
sudo reboot
sudo iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -i eth0 -p tcp --dport 8080 -j ACCEPT
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
sudo iptables -L -n -t nat

도커 mysql 설치

  • 권한문제 → docker 계정에 유저를 추가 → 도커 권한문제 해결하기
  • 한글 인코딩 문제 → Mac M1 docker mysql 설치 및 실행
  • Docker를 사용하여 MySQL 설치하고 접속하기

2. 배포 스크립트

서비스 배포하기

  • bash shell 비교 연산자 - Bash Shell - 문자열 비교 연산자
  • shell progress bar - [Bash Shell Script] 쉘 스크립트 로딩 바 구현
  • crontab - [Linux] crontab 설정 및 로그 확인
    • /etc/rsyslog.d/50-default.conf 에서 cron 관련 주석 해제하기
  • crontab 로그에서 MTA 관련 로그 → mail 설치 → 환경 선택은 local로
  • /etc/crontab과 crontab의 차이

Spring 설정 관련

  • ActiveProfiles - 로컬 실행, test 실행, 서버 배포시의 서버 정보를 다르게 하기 위한 어노테이션
    • 참고 : [Spring] @Profile, @ActiveProfiles 에 대해

서버 시간 재설정하기

  • 최초 AWS 구축시 UTC 적용으로 한국 시간과 8시간 차이가 나서 맞춰줌
  • 참고 : [AWS EC2] 서버 시간 동기화 및 타임존 설정
  • 시간 동기화 타임존 설정은 패스하고 실제 표준시간대 심볼릭 설정만 해줘도 시간이 변경됨
    • rm /etc/localtime
    • ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime
반응형
'Skill Up/우아한테크캠프 Pro 4기' 카테고리의 다른 글
  • [우아한테크캠프 Pro 4기] 6주차 미션(1) - 웹 성능 테스트
  • [우아한테크캠프 Pro 4기] 5주차 미션 - ATDD & TDD
  • [우아한테크캠프 Pro 4기] 4주차 미션(1) - AWS 서비스 구성하기
  • [우아한테크캠프 Pro 4기] 3주차 미션 - ATDD
프리미99
프리미99
train hard, big dream
프리미99
Rabbit in the Moon
프리미99
  • 분류 전체보기 (52)
    • Skills (20)
      • Java & Spring (7)
      • Framework (0)
      • Network (0)
      • Database (5)
      • Algorithm (7)
    • Skill Up (29)
      • dlwlrGOGO (7)
      • 우아한유스방 3기 (7)
      • 우아한테크캠프 Pro 4기 (15)
    • Tools (1)
      • Git (0)
      • IDE (1)
    • Project (0)
      • Spring 게시판 프로젝트 (0)
    • Review (2)
      • Seminar (2)
      • BOOK (0)

공지사항

최근 글

최근 댓글

전체
오늘
어제

블로그 메뉴

  • github
  • 글쓰기
  • 관리자
hELLO · Designed By 정상우.
프리미99
[우아한테크캠프 Pro 4기] 4주차 미션(2) - AWS 서버 설정하기 & 배포 스크립트 작성하기
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.