분류 전체보기
-
패스트캠퍼스 AWS 기반 아키텍쳐 설계와 DevOps카테고리 없음 2024. 4. 9. 07:42
클라우드 컴퓨팅의 유형 퍼블릭 클라우드 사용자는 컴퓨팅 리소스를 소유하지 않음 인터넷을 통해 제공 가상화 기술로 만든 서비스를 그대로 사용 프라이빗 클라우드 특정 조직내에서 컴퓨팅 리소스를 소유 사설 네트워크를 통해 제공 가상 컴퓨팅 기술을 직접 구축 하이브리드 클라우드 퍼블릭 클라우드와 프라이빗 클라우드 또는 데이터센터 간 네트워크를 연결 멀티 클라우드 다수의 퍼블릭 클라우드를 사용 (AWS + GCP) 클라우드 서비스의 특징 탄력성/민첩성 확장성 사용한 만큼 지불 내결함성 및 재해복구 고 가용성 (여러 개의 데이터 센터가 고속 네트워크망으로 연결되어 가용성 설계 가능) 유지 관리 간소화 클라우드 서비스 모델 IaaS : 물리적 자원 가상화 (ex. EC2) PaaS : 어플리케이션을 바로 구축할 수 ..
-
CI/CD를 구축하며프로그래밍 지식/Infra 2024. 1. 9. 21:55
다음에 CI/CD를 구축할 때 도움이 되고자 시행 착오를 적는다. 시행 착오 기존 코드가 완전한 코드라고 생각하지 말자. 서버 자체를 백업하고 비교하라 수동 배포가 진행되었던 서버 내 부산물들의 형상 관리가 되지 않았다. 바람직한 SW는 소스 코드 기준으로 빌드/배포 되어야 한다. 하지만 온프레미스 방식의 배포를 하는 경우 기존 서버에 특정 바이너리만 바꿔 끼우는 형식으로 작업이 진행되기에 바이너리를 제외한 다른 구성요소들은 형상 관리가 되지 않았다.(예를 들면 tomcat 등) 업데이트가 자주 되지 않는 스크립트의 경우 GIt으로 부터 복사되지 않고 사용되었다. 심지어는 Git에 형상이 존재하는 스크립트도 서버의 내용과 달랐다. 수동 배포에 쓰였던 빌드/배포용 서버에 서버 종속적인 내용이 존재했다. C..
-
CI/CD 구축 프로젝트프로그래밍 지식/Infra 2023. 12. 14. 01:12
형상 관리를 위한 팀이 별도 존재했지만, 우리 팀을 위한 CI/CD를 별도 구축했다. CI/CD 적용 배경 수동 빌드/배포로 인한 반복적인 수작업 및 Human Error 가능성 존재 빌드 산출물 및 릴리즈 버전 파악의 어려움 정적 검증이 타 팀을 통해 이뤄짐으로써 느린 반영, 검증 대기 문제 CI/CD 목표 빌드에서 배포까지의 과정 자동화 -> Human Error 최소화, 빠른 피드백 루프 Bamboo에서 빌드 history 파악 및 Release 관리, 복구 기능 -> 소프트웨어 품질 확보 CI/CD 파이프라인 내 자체 정적검증(SonarQube), 동적검증(UnitTest) Quality Gate 적용 -> 소프트웨어 품질 확보 CI/CD Tool CI/CD Tool : Bamboo Version..
-
‘객체지향의 사실과 오해‘를 읽고카테고리 없음 2023. 11. 30. 23:57
책을 읽게된 이유 '객체 지향'에 대한 갈증에서 해당 책을 읽게 되었다. 객체 지향 언어인 C++로 개발을 하고 있지만 스스로에게 객체 지향을 잘 사용하고 있는가? 라고 묻는다면 쉽게 '그렇다'라고 답할 수 없었다. 상속이나 추상화 등의 객체지향 성격의 코드는 작성하고 있지만 재사용성까지 고려한다면 어떤 구조로 코드를 작성하는 것이 최선의 선택인지 답을 내리기 어려웠다. 그러한 갈증에서 이 책을 읽게 되었다. 서평 책은 매우 친절하다. 이 책은 저자가 말하고 싶어 하는 바를 친절한 예시를 통해, 여러 번 반복 한다. 그런 점 때문에 저자가 전하고자 하는 메시지가 더 뇌리에 남는다. 스스로가 객체 지향을 잘 사용하고 있는지에 대해 의심이 가는 사람이거나 혹은 객체 지향에 대한 경험이 없는 사람도 이 책을 ..
-
tableplus 를 이용하여 rds 데이터베이스를 로컬로 이관하자 (import, export)카테고리 없음 2023. 8. 9. 21:15
RDS의 데이터를 로컬로 이관해야할 일이 생겼다. (생각보다 RDS 비용 부담이 크고, 아직 개발 단계이기 때문에 도커를 사용하여 로컬에서 개발하고자 하고자 한다.) - tableplus 사용하여 데이터 이관하기 1. 이관할 테이블들을 스크롤 한 후, File - Export 버튼 클릭 2. SQL 선택 (다른 확장자도 가능할 것 같지만, 나는 SQL로 했다.) 3. 설정한 위치에 저장 완료! 이제 목적지에 해당하는 로컬 Connection을 만든다! 4. TablePlus 첫 화면에서 오른쪽 마우스 클릭 후 - New - Connection 5. 새로운 로컬 커넥션 생성 (필자는 MySQL로 했다.) 본인 컴퓨터에 있는 MySQL ID, PASSWORD가 필요하다! 5-1. 나 처럼 맨날 MySQL r..
-
Docker를 쓰자프로그래밍 지식/Infra 2023. 7. 16. 21:35
들어가며 Mac에서의 Docker 설치 방법 및 리액트/스프링부트 빌드 결과물을 띄울 수 있는 간단한 스크립트를 만들어보았다. Docker 설치 Mac Docker 설치 https://kanoos-stu.tistory.com/22 [Docker] Docker Desktop 설치 및 사용법 (for mac) Docker Desktop 설치 먼저 도커 데스크탑버전 설치를 위해 도커 공식사이트에 접속해서 상당 Product -> Docker Destop 을 클릭하고 자신의 os 버전에 맞게 선택해 설치를 한다. 설치가 완료되면 mac 의경우 kanoos-stu.tistory.com brew 보다 공식 사이트에서 .dmg 다운 받는게 좋음 brew일 시 추가 설치 필요 Docker로 Spring boot 이미지..