컴퓨터사이언스 49

쿠버네티스(K8S)를 쉽게 파악해보자

https://www.youtube.com/@ByteByteGo/community ByteByteGoCovering topics and trends in large-scale system design, from the authors of the best-selling System Design Interview book series. This channel is managed by Alex Xu and Sahn Lam. To master system design, get our 158-page System Design PDF for free by subswww.youtube.com 내가 가장 좋아하는 IT 관련 유튜브 채널.우연히 머신러닝 모델링 책을 읽던 중 레퍼런스를 살펴보다가 우연히 알게 되었다.본 ..

데브옵스는 왜 필요한 것인가.

https://youtu.be/onOy7WiguMI?list=LL 위 영상 보며 가볍게 끄적여보는 영상   데브옵스를 통한 지속적인 서비스 혁신 사용자에게 안정성과 신속성을 제공하려면 개발 테스트 배포 운영의 업무 사이클을  자동화된 하나의 프로세스로 통합할 필요성이 있다. 데브옵스의 필수 요소 CAMS( 문화, 자동화, 측정, 공유 ) 1. 문화(CULTURE)팀의 경계를 완화하고 협업 수준을 높여 품질 및 효율성 향상 조직의 사일로화 경계해야 하는데, 조직 내 다양한 부서들이 서로 담을 쌓은 것처럼 서로 각자의 조직의 이익만을 추구하는 것을 의미한다. 조직이 사일로화 되면 협업도 문제이지만부서별 데이터가 통합되지 않아서 회사 전체 데이터를 통합해 인사이트를 얻기 힘들어진다 우선 회사 비즈니스 목표에 ..

그래서 MSA가 무엇인가요? (특징과 장단점 모두 명확히 알고 써라)

https://youtu.be/wVpOboIlZ5I?list=LL 어김없이 삼성SDS의 MSA 시리즈를 보면서 공부하고 정리해보는 포스팅  마이크로서비스란.애플리케이션을 느슨하게 결합된 서비스의 모임으로 구조화하는 소프트웨어 아키텍처 스타일 (위키백과) 여기서 느슨한 결합이란,각 서비스들이 독립적으로 실행되고 서로 통신을 하지만,문제가 생겼을 때 서로 크게 영향을 받지 않는 유연한 서비스 구조.  시스템 아키텍처 = 소프트웨어 설계 구조 (주로 모놀리식 / MSA 대비된다)  모놀리식 아키텍처구조가 간단하고 비교적 빠른 설계가 가능하다는 장점이 있지만,클라우드의 빠른 확장성과 유연한 인프라 환경구조에는 부적합. 모놀리식 장점:개발이 상대적으로 간단한 편.흐름 단계별로 설계가 되어서 데이터 정합성을 맞추기..

도커 컨테이너와 쿠버네티스의 역할

https://youtu.be/8ypDYpKKLxY?list=LL 이번에도 SDS 클라우드 시리즈 컨텐츠를 보면서 끄적여보는 포스팅 컨테이너 등장 배경개발 관점:Q: IT에 대한 걱정 없이 빠른 애플리케이션 개발 환경Q: 새 애플리케이션이 내 PC에서는 잘 동작이 되지만, 다른 PC에서는 동작이 안됨Q: 인프라 자원을 빠르게 공급 받지 못해서 개발이 늦어지는 경험 A: 한 번 작성하면 어디서나 실행 가능한 앱 인프라 환경 제공A: 빠른 앱 서비스 및 개발 테스트 환경.A: 마이크로서비스 아키텍처 지원  운영 관점:Q:  중단 없이 새 애플리케이션을 업데이트 할 순 없을까Q:  최신 애플리케이션에 대한 지식이 부족해서 개발자 도움 없이 통합하기가 어려움Q:  서버 보안과 컴플라이언스 규정을 일관성 있게 적..

클라우드 네이티브 정의와 4가지 핵심 요소

https://youtu.be/OvE1V2Cu8ds 삼성SDS에서 제공하는 클라우드 네이티브에 관한 영상을 보고 끄적 개념적으로 정말 명료하게 잘 정리가 되어있다. (이제 구현하는 일만...)  Q. 클라우드를 처음 도입할 때 궁금한점- 인프라를 자동으로 배포한다면 이건 어느 부서에서 전담하나요?- 기존 온프레미스 환경과 클라우드를 어떻게 연결하나요?- 기존 코드를 그대로 활용 가능한지? 새로운 툴을 배우는데 어려움은 없는지?- 내부 인력은 준비되어 있는지? 없다면 어떻게 인력 충원하고 역량을 확보할지?- 클라우드를 사용하려면 새로운 언어와 툴을 배워야 하는지? 1. 장애 상황에서도 지속적인 서비스를 제공할 수 있어야한다.- '여러 지역' 서비스의 분산을 통해 안전하게 운영- 멀티클라우드, 한 클라우드 ..

클라우드 동향과 서비스 모델에 대하여

https://youtu.be/Xz0q3n_K2ms?list=LL 위 영상을 보며 정리해보는 게시글 2022년 영상이지만 그럼에도 시리즈 별로 정리가 너무 깔끔하게 되어 있어서 유익해보였다.  클라우드 컴퓨팅이란? (= 클라우드)인터넷을 통해 컴퓨팅 서비스를 제공하는 것여기서 말하는 서비스란 서버, 스토리지,네트워크, 데이터 분석, IoT, 블록체인, 인공지능 등다시 말하면 인터넷을 통해 IT리소스와 애플리케이션을 원할 때, 언제든지, 사용한 만큼만 요금 내는 구독 서비스 클라우드의 아주 간략한 역사:2006년 AWS에서 처음 시작추수감사절에 대규모 서버 증설 + 운영-> 세일 시즌 끝나고 서버 사용량 줄어들면서 유지보수 비용 발생 (이를 해결하고자 방안 모색)시즌이 끝난 뒤 필요한 이용자에게 빌려주면서..

Postgresql / PostGIS 도커 컨테이너에 shp 파일 Import하는 방법 | (국토교통부 센서스 행정동경계 데이터)

https://www.data.go.kr/data/15125055/fileData.do# 국토교통부_(센서스경계)행정동경계_20230813센서스 통계에 따라 경계를 구분하여 나타낸 센서스경계이며, 모든 센서스의 행정동 경계에 대한 공간정보 및 속성정보 (행정동)www.data.go.kr 행정동 경계 데이터(센서스경계)는 shp, shx, dbf, prj 네 가지 파일로 이뤄져있다.  일반적으로 shp 파일을 불러오지만, 같은 경로에 다 있어야 사용 가능한 구조인 것 같다.(담고 있는 데이터가 각각 다 다른데 뭔지는 금방 까먹음) 행정동 경계를 geopandas로 불러와서 시각화하는 건 수월했는데, 데이터베이스 컨테이너에 바로 넣으려니 시행착오가 많았다 QGIS 같은 통상적으로 shp 파일 처리할 때 쓰이..

Azure 웹앱 배포 안되는 이유를 모를 때, 로그를 보자.

Azure 웹앱에 스프링 부트 띄우는데 하루 종일 애를 좀 먹었다 로컬에선 잘 되던 게 Azure에선 안되면 참으로 대략 난감. 무료 요금제 쓰는 탓인지 로그도 느리게 출력 되어서 제법 답답했지만 결국 해냈다. 프로젝트 하다보니 하루만에 에러를 잡은 것도 꽤 선방했구나를 깨닫게 되고. 1. 배포 센터 > 로그 무한 새로고침 2. 로그 스트림 보기 3. Azure 터미널에 다음 명령어az webapp log tail --name --resource-group   1번에선 8080 에러라고만 보여줘서 못 찾았던 원인을  3번 방식에선 보였기에 잡을 수 있었다.  .env 파일 빼고 환경변수 일일이 잡아줬는데, 환경변수 잡아주던 메인함수 쪽 dotenv 코드가 .env 없으면 일단 오류를 뱉고 보길래 ign..

어느 에이블러의 지혜 (AI 실험 설계 시 도커 이미지 활용 경험)

도커 관련하여 수업 듣고 있던 와중 존경하는 어느 에이블러님께서 값진 경험을 공유해주셨다. 언젠가 나도 이런 인사이트를 받아먹는 걸 넘어서, 경험에서 비롯한 깨달음을 다른 사람들에게 전할 수 있는 사람이 될 수 있기를. 그리고 다음과 같은 말씀도 해주셨다. "NAS에 연결된 서버에서 인공지능 모델 학습을 위해 NAS 내의 데이터를 불러와 학습하면  병목현상이 심해 데이터를 서버의 로컬 저장소로 복사해서 사용했는데,  SAN으로 구성하면 병목현상이 적을 것 같네요."

아주 기본적인 파이썬 모듈화 구조에 대한 소개

위 이미지는 본인이  LSTM 기반 적정 재고 관리 FastAPI 서버 개발시 구성해본 파일 구조이다. 프로젝트를 만들 때 파일을 잘 쪼개서 관리하는 것은 유지보수와 확장성에 매우 중요하다. 프로젝트의 규모나 목적에 따라 구조는 다를 수 있지만, 일반적으로 권장되는 디렉토리 구조에 대하여 정리해보았다. (가볍게 보면 좋다.)1. 기본적인 프로젝트 구조my_project/ ├── data/                        # 데이터 파일 (raw, processed 데이터) │   ├── raw/                    # 원본 데이터 │   └── processed/         # 전처리된 데이터 ├── notebooks/              # Jupyter 노트북 (데이터 ..