{"id":29893616,"url":"https://github.com/dongkoony/elice_devops_engineer_mini_project","last_synced_at":"2026-02-07T22:03:40.208Z","repository":{"id":304087615,"uuid":"1017714742","full_name":"dongkoony/Elice_DevOps_Engineer_Mini_Project","owner":"dongkoony","description":"DevOps 환경 구축 프로젝트 - Infrastructure as Code, 환경별 배포 자동화, 마이크로서비스 아키텍처","archived":false,"fork":false,"pushed_at":"2025-08-18T08:44:02.000Z","size":273,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-18T09:29:16.011Z","etag":null,"topics":["aws","cicd","devops","docker","fastapi","helm","kubernetes","microservices","portfolio","python","terraform"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dongkoony.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-11T01:46:44.000Z","updated_at":"2025-08-08T13:31:41.000Z","dependencies_parsed_at":"2025-07-11T07:13:45.152Z","dependency_job_id":"1e7347b1-bd23-461d-99bf-86e99efb7dd2","html_url":"https://github.com/dongkoony/Elice_DevOps_Engineer_Mini_Project","commit_stats":null,"previous_names":["dongkoony/elice_devops_engineer_mini_project"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dongkoony/Elice_DevOps_Engineer_Mini_Project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dongkoony%2FElice_DevOps_Engineer_Mini_Project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dongkoony%2FElice_DevOps_Engineer_Mini_Project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dongkoony%2FElice_DevOps_Engineer_Mini_Project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dongkoony%2FElice_DevOps_Engineer_Mini_Project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dongkoony","download_url":"https://codeload.github.com/dongkoony/Elice_DevOps_Engineer_Mini_Project/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dongkoony%2FElice_DevOps_Engineer_Mini_Project/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29209857,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-07T21:35:21.898Z","status":"ssl_error","status_checked_at":"2026-02-07T21:35:20.106Z","response_time":63,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","cicd","devops","docker","fastapi","helm","kubernetes","microservices","portfolio","python","terraform"],"created_at":"2025-08-01T03:46:59.500Z","updated_at":"2026-02-07T22:03:40.191Z","avatar_url":"https://github.com/dongkoony.png","language":"Shell","readme":"# 클라우드 DevOps 엔지니어 미니 프로젝트\n\n## 프로젝트 개요\n(주)엘리스 클라우드 DevOps 엔지니어 채용을 위한 미니 프로젝트로, **퍼블릭 클라우드(AWS)** 와 **프라이빗 클라우드(OpenStack)** 환경에서 마이크로서비스 운영을 위한 **Kubernetes 기반 DevOps 환경** 을 구축 및 비교 분석을 목표로 합니다.\n\n## 프로젝트 일정\n- **시작**: 2025년 7월 11일\n- **마감**: 2025년 7월 13일 PM 11:59\n- **소요 기간**: 3일\n\n## 프로젝트 목표\n\n### 1. 환경 구축\n- **퍼블릭 클라우드**: AWS 기반 Kubernetes DevOps 환경\n- **프라이빗 클라우드**: OpenStack 기반 Kubernetes DevOps 환경\n\n### 2. 비교 분석\n두 환경을 다음 4가지 측면에서 비교\n- **관리 편의성** (Management Convenience)\n- **민첩성** (Agility) \n- **비용 효율성** (Cost Efficiency)\n- **보안** (Security)\n\n## 기술적 요구사항\n\n### 필수 조건\n- ✅ **최소 10개 이상** 마이크로서비스 구성\n- ✅ **모든 서비스 컨테이너화** 및 HTTP 요청 처리\n- ✅ **PostgreSQL DBMS** (서비스별 분리된 데이터베이스)\n- ✅ **S3 호환 Object Storage** (MinIO, Ceph Object Gateway 등)\n- ✅ **High Availability (HA)** 모든 구성 요소에 적용\n- ✅ **오토스케일링** 서비스 부하 기반 자동 확장\n- ✅ **환경 일관성** Dev/Staging/Prod 환경 구축 가능\n- ✅ **오픈소스 기반 CI/CD** 파이프라인\n- ✅ **IaC (Infrastructure as Code)** 활용\n\n## 기술 스택\n\n### 퍼블릭 클라우드 (AWS)\n| 구분 | 기술/서비스 |\n|------|------------|\n| **컨테이너 오케스트레이션** | Amazon EKS |\n| **컴퓨팅** | EC2 |\n| **데이터베이스** | RDS (PostgreSQL) |\n| **스토리지** | S3 |\n| **네트워킹** | VPC, ALB |\n| **보안/권한** | IAM |\n| **IaC** | Terraform |\n\n### 프라이빗 클라우드 (OpenStack)\n| 구분 | 기술/서비스 |\n|------|------------|\n| **클라우드 플랫폼** | OpenStack |\n| **컨테이너 오케스트레이션** | Kubernetes (Magnum) |\n| **컴퓨팅** | Nova |\n| **데이터베이스** | PostgreSQL (Trove) |\n| **스토리지** | Swift (S3 호환) |\n| **네트워킹** | Neutron |\n| **보안/권한** | Keystone |\n| **IaC** | Heat, Terraform |\n\n### 공통 도구\n| 구분 | 기술/도구 |\n|------|----------|\n| **컨테이너** | Docker |\n| **패키징** | Helm Charts |\n| **CI/CD** | Jenkins, ArgoCD |\n| **모니터링** | Prometheus, Grafana |\n| **로깅** | ELK Stack |\n| **백업** | Velero |\n\n## 프로젝트 구조 (예상)\n\n```\n├── aws/                        # AWS 퍼블릭 클라우드 구성\n│   ├── terraform/              # AWS 인프라 IaC\n│   ├── kubernetes/             # K8s 매니페스트\n│   ├── microservices/          # 마이크로서비스 소스코드\n│   └── ci-cd/                  # Jenkins, ArgoCD 설정\n├── openstack/                  # OpenStack 프라이빗 클라우드 구성\n│   ├── openstack-setup/        # OpenStack 설치 스크립트\n│   ├── kubernetes/             # K8s 매니페스트\n│   ├── microservices/          # 마이크로서비스 소스코드\n│   └── ci-cd/                  # CI/CD 파이프라인\n├── docs/                       # 문서화\n│   ├── architecture.md         # 아키텍처 설계\n│   ├── comparison.md           # 환경 비교 분석\n│   └── deployment-guide.md     # 배포 가이드\n└── README.md                   # 프로젝트 개요\n```\n\n## 마이크로서비스 목록 (10개+)\n\n1. **API Gateway** - 요청 라우팅 및 인증\n2. **User Service** - 사용자 관리\n3. **Auth Service** - 인증/인가\n4. **Product Service** - 상품 관리\n5. **Inventory Service** - 재고 관리\n6. **Order Service** - 주문 처리\n7. **Payment Service** - 결제 처리\n8. **Notification Service** - 알림 발송\n9. **Review Service** - 리뷰 관리\n10. **Analytics Service** - 데이터 분석\n11. **Log Aggregation Service** - 로그 수집\n12. **Health Check Service** - 상태 체크\n\n## 아키텍처 다이어그램\n\n### 1. AWS 퍼블릭 클라우드\n```mermaid\nflowchart TD\n    USER[사용자] --\u003e ALB[Application Load Balancer]\n    DEV[개발자] --\u003e JENKINS[Jenkins CI/CD]\n    \n    ALB --\u003e EKS[EKS Cluster]\n    EKS --\u003e RDS[RDS PostgreSQL\u003cbr/\u003eMulti-AZ]\n    EKS --\u003e S3[S3 Object Storage]\n    \n    JENKINS --\u003e ECR[ECR Registry]\n    JENKINS --\u003e ARGOCD[ArgoCD]\n    ARGOCD --\u003e EKS\n    \n    EKS --\u003e MONITORING[Prometheus/Grafana]\n    EKS --\u003e BACKUP[Velero Backup]\n```\n\n### 2. AWS - 마이크로서비스 상세 구조\n```mermaid\nflowchart TD\n    ALB[Load Balancer] --\u003e INGRESS[Ingress Controller]\n    \n    INGRESS --\u003e API[API Gateway]\n    API --\u003e USER[User Service]\n    API --\u003e AUTH[Auth Service] \n    API --\u003e PRODUCT[Product Service]\n    API --\u003e INVENTORY[Inventory Service]\n    API --\u003e ORDER[Order Service]\n    API --\u003e PAYMENT[Payment Service]\n    API --\u003e NOTIFICATION[Notification Service]\n    API --\u003e REVIEW[Review Service]\n    API --\u003e ANALYTICS[Analytics Service]\n    API --\u003e LOG[Log Service]\n    API --\u003e HEALTH[Health Service]\n    \n    USER --\u003e DB1[\"User DB\u003cbr/\u003e(PostgreSQL)\"]\n    PRODUCT --\u003e DB2[\"Product DB\u003cbr/\u003e(PostgreSQL)\"]\n    ORDER --\u003e DB3[\"Order DB\u003cbr/\u003e(PostgreSQL)\"]\n    PAYMENT --\u003e DB4[\"Payment DB\u003cbr/\u003e(PostgreSQL)\"]\n    REVIEW --\u003e DB5[\"Review DB\u003cbr/\u003e(PostgreSQL)\"]\n    \n    ORDER --\u003e S3[S3 Storage]\n    ANALYTICS --\u003e S3\n    LOG --\u003e S3\n```\n\n### 3. OpenStack 프라이빗 클라우드\n```mermaid\nflowchart TD\n    USER[사용자] --\u003e LB[Load Balancer]\n    DEV[개발자] --\u003e JENKINS[Jenkins CI/CD]\n    \n    LB --\u003e K8S[Kubernetes Cluster\u003cbr/\u003eMagnum]\n    K8S --\u003e TROVE[Trove PostgreSQL\u003cbr/\u003eHA]\n    K8S --\u003e SWIFT[Swift Object Storage]\n    \n    JENKINS --\u003e GLANCE[Glance Images]\n    JENKINS --\u003e ARGOCD[ArgoCD]\n    ARGOCD --\u003e K8S\n    \n    K8S --\u003e MONITORING[Prometheus/Grafana]\n    K8S --\u003e BACKUP[Velero Backup]\n    \n    KEYSTONE[Keystone Identity] --\u003e K8S\n```\n\n### 4. OpenStack - 마이크로서비스 상세 구조  \n```mermaid\nflowchart TD\n    LB[Load Balancer] --\u003e INGRESS[Ingress Controller]\n    \n    INGRESS --\u003e API[API Gateway]\n    API --\u003e USER[User Service]\n    API --\u003e AUTH[Auth Service]\n    API --\u003e PRODUCT[Product Service]\n    API --\u003e INVENTORY[Inventory Service]\n    API --\u003e ORDER[Order Service]\n    API --\u003e PAYMENT[Payment Service]\n    API --\u003e NOTIFICATION[Notification Service]\n    API --\u003e REVIEW[Review Service]\n    API --\u003e ANALYTICS[Analytics Service]\n    API --\u003e LOG[Log Service]\n    API --\u003e HEALTH[Health Service]\n    \n    USER --\u003e DB1[\"User DB\u003cbr/\u003e(Trove PostgreSQL)\"]\n    PRODUCT --\u003e DB2[\"Product DB\u003cbr/\u003e(Trove PostgreSQL)\"]\n    ORDER --\u003e DB3[\"Order DB\u003cbr/\u003e(Trove PostgreSQL)\"]\n    PAYMENT --\u003e DB4[\"Payment DB\u003cbr/\u003e(Trove PostgreSQL)\"]\n    REVIEW --\u003e DB5[\"Review DB\u003cbr/\u003e(Trove PostgreSQL)\"]\n    \n    ORDER --\u003e SWIFT[Swift Storage]\n    ANALYTICS --\u003e SWIFT\n    LOG --\u003e SWIFT\n```\n\n## 실행 계획\n\n### Day 1: AWS 환경 구축\n- [ ] AWS 계정 설정 및 IAM 구성\n- [ ] Terraform으로 VPC, EKS 클러스터 구축\n- [ ] RDS PostgreSQL 인스턴스 생성\n- [ ] 마이크로서비스 배포 (10개+)\n\n### Day 2: OpenStack 환경 구축\n- [ ] OpenStack 환경 설치 (DevStack/MicroStack)\n- [ ] Kubernetes 클러스터 구성\n- [ ] PostgreSQL, Swift 스토리지 설정\n- [ ] 마이크로서비스 구성 및 배포 (10개+)\n\n### Day 3: 통합 및 문서화\n- [ ] CI/CD 파이프라인 구성\n- [ ] 모니터링 시스템 구축\n- [ ] 4가지 측면 비교 분석 문서 작성\n- [ ] 최종 결과물 정리\n\n## 제출물\n- **소스코드**: 전체 IaC 및 애플리케이션 코드\n- **문서**: 구축 가이드, 아키텍처 설명, 비교 분석\n- **PDF 보고서**: 프로젝트 결과 및 분석 내용\n\n---","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdongkoony%2Felice_devops_engineer_mini_project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdongkoony%2Felice_devops_engineer_mini_project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdongkoony%2Felice_devops_engineer_mini_project/lists"}