학습 주제
운영 환경 구성
Amazon Web Service
서버 배포 실습
새롭게 배운 내용
2022.09.30 - [Back-End/Cloud] - Cloud Computing, AWS
2022.10.03 - [Back-End/Cloud] - AWS 서버 배포
- 리눅스 루트 폴더에서는 폴더나 파일을 생성, 변경 또는 삭제할 수 없다.
보강할 내용
2022.06.30 - [Etc/Computer Science] - Linux - CLI 기본 명령어
🤔 SSH을 아직 잘 모르겠다.
회고
클라우드 컴퓨팅에 대해 배우고 개발한 서비스를 다른 사용자가 이용할 수 있도록 배포하는 방법에 대해 학습했다. 아주 예전에는 티켓팅을 할 때 '서버가 터졌다'라는 말을 하면서 정작 서버가 터졌다는 게 뭔지 궁금했었다. 개발 공부를 하며 자연스럽게 알게 되었지만, 서버를 배포하는 행위는 공부하면서도 항상 궁금했던 주제였기에 더욱 재미있게 학습할 수 있었다.
해커가 등장하는 영화나 SF 영화를 보면 서버실을 종종 볼 수 있었다. 기존에는 개발한 서비스를 제공하려면 서버실에 컴퓨터를 배치해야 했기에 유지보수가 힘들었다. 이제는 데이터 센터 건물을 세우고 유휴 자원을 대여하는 일부 기업들의 서비스를 이용해서 쉽고 빠르게 서버를 배포할 수 있다!
AWS와 EC2, RDS 이들은 들어는 봤지만 생소한 개념이었는데 오늘 학습하면서 확실히 정리했다. 간단하게 설명하자면 AWS는 아마존 웹 서비스를 말하며 EC2는 AWS에서 제공하는 클라우드 컴퓨팅 서비스이다. 가상의 컴퓨터 한 대를 빌리는 것과 같다. RDS는 AWS에서 제공하는 관계형 데이터베이스 서비스이다. EC2 인스턴스에 데이터베이스를 설치하면 되지 않나? 생각할 수도 있지만 이 경우에는 유지보수가 어렵고 확장이 어렵다는 단점이 존재한다. 외에도 AWS에는 여러 서비스를 제공해 줘서 아주 편리하다.
페어와 함께 서버를 배포하는 실습을 했다. EC2 인스턴스 연결을 Session Manager로 하고 bash 쉘에서 개발 환경을 구축한다. java 라이브러리 설치를 확인한 후에 git을 통해 서버 코드를 클론 받은 후 웹 페이지가 잘 실행되는지 확인하는 실습이었다. git clone을 받으려면 EC2 인스턴스의 SSH 등록이 필요했는데, 여기서 나는 클론이 잘 진행되었지만, 페어 분은 'You've successfully authenticated, but GitHub does not provide shell access.'이런 메시지가 뜨면서 진행되지 않아서 문제를 해결하기 위해 오래 구글링 시간을 가졌다. 다른 동기분에게 경로 확인을 해 보라는 힌트를 얻어서 생각해 보니 리눅스를 학습할 때 루트 폴더에서는 폴더나 파일을 생성, 변경 또는 삭제할 수 없다고 공부한 게 떠올랐다. 알고 보니 페어 분이 cd ~ 명령어로 사용자 홈 디렉터리로 이동하는 것을 생략하셨는데 그걸 알아채지 못했다. 오늘 실습으로 리눅스 학습의 중요성을 깨달았고, 페어와 함께하면서 서로 발견하지 못한 실수를 알려 주고 고민해 가며 공부했기에 굉장히 뿌듯했다! 🚶♀️🌙
★★★★★
'Etc > BootCamp : TIL' 카테고리의 다른 글
[Day 105] Cloud : 배포 컨테이너 (0) | 2022.10.05 |
---|---|
[Day 104] Cloud : 운영 환경 구성 Ⅱ (0) | 2022.10.04 |
[Day 99] OAuth2 인증 Ⅱ (0) | 2022.09.29 |
[Day 98] OAuth2 인증 (0) | 2022.09.28 |
[Day 97] Spring Security에서의 JWT(JSON Web Token) 인증 (0) | 2022.09.27 |
댓글