Tech story/Cloud 66

OpenStack 컴퓨팅 서비스 이해하기: 심화편

[kt cloud CloudSW운영팀 김호균 님] OpenStack 컴퓨팅 서비스 이해하기: 심화편지난 포스팅에서는 컴퓨팅 서비스인 Nova의 아키텍처와 기본 동작 과정에 대해서 간단히 살펴보았습니다. 또한 OpenStack 대시보드 서비스인 Horizon을 통해 가상 머신을 직접 생성해 보고, 이 과정에서 OpenStack의 여러 컴포넌트들이 어떻게 서로 상호 작용하는지 알아보았습니다.이번 포스팅에서는 가상화 관점에서 Nova를 좀 더 자세히 살펴보겠습니다.   OpenStack 가상화 방식: KVM과 QEMU Nova에 대해 설명하기 전에, KVM과 QEMU에 대해 먼저 알아보겠습니다.가상화 방식을 활용하면 호스트 시스템과 독립적인 환경에서 각각 다른 운영체제로 가상 머신(VM)을 동작할 수 있습니다..

Tech story/Cloud 2024.11.18

BufferedReader.readLine()와 InterruptedException

[kt cloud 서비스개발팀 이지윤 님] BufferedReader.readLine()와 InterruptedException kt cloud의 DBaaS 상품에는 생성된 VM에 원격으로 접속해서 OS 명령어로 DB의 상태를 체크하는 과정이 주기적으로 실행되고 있습니다. 그리고 OS 명령어의 결과값을 처리할 때에는 표준 출력 스트림과 에러 스트림을 비동기식으로 처리하고 있습니다.이 과정에서 Java의 Process 객체를 사용해서 OS 명령어 처리를 위한 외부 프로세스를 관리하고,BufferedReader를 사용해서 외부 프로세스의 출력/에러 스트림을 처리하고,스트림 처리를 비동기식으로 수행하기 위해 CompletableFuture를 사용하고 있습니다.DBaaS에서 실제로 어떻게 외부 프로세스 사용 및..

Tech story/Cloud 2024.11.13

What is DevOps? - Helm Chart

[kt cloud DevOps팀 이효원 님] What is DevOps? - Helm Chart 1. 배포란 무엇인가?배포는 개발된 애플리케이션이나 서비스가 운영 환경에서 사용자에게 제공될 수 있도록 준비하는 과정입니다.개발 환경에서 정상적으로 동작하던 애플리케이션을 실제 운영 환경에서 사용할 수 있도록 이동하고,이를 유지하며 모니터링하는 과정 전반을 포함합니다.이를 통해 서비스가 적시에 사용 가능하고 예기치 않은 오류 없이 사용자에게 제공되도록 보장하는 것이 목표입니다. 배포는 DevOps의 중요한 단계 중 하나로, 지속적인 통합과 배포(CI/CD) 파이프라인에서 중요한 역할을 합니다.배포 방식은 운영 환경의 안정성과 서비스의 연속성을 유지하기 위해 매우 중요합니다.  2. 주요 배포 방식 소개배포 방..

Tech story/Cloud 2024.11.13

What is DevOps? - Slack으로 협업하기

[kt cloud DevOps팀 이효원 님] What is DevOps? - Slack으로 협업하기 1. DevOps에서 Communication Tools의 필요성DevOps는 개발(Development)과 운영(Operations)을 통합하여 소프트웨어 개발과 배포를 신속하게 진행할 수 있도록 돕는 개발 방법론입니다.이를 위해서는 팀 간 긴밀한 소통과 협업이 중요합니다.DevOps 환경에서는 개발자, 운영 팀, 품질 보증 팀 등 다양한 역할이 참여하기 때문에각기 다른 팀이 목표를 공유하고 실시간으로 정보를 주고 받으며 이슈를 빠르게 해결하기 위해서는 효과적인 커뮤니케이션 도구가 필요합니다.효율적인 이슈 관리: 개발 및 운영 중 발생하는 이슈를 실시간으로 공유하고, 이를 신속히 해결할 수 있습니다.프로..

Tech story/Cloud 2024.11.13

What is DevOps? - CI Automation

[kt cloud DevOps팀 이효원 님] What is DevOps? - CI Automation 1. CI(Continuous Integration) AutomationCI, 즉 지속적 통합(Continuous Integration)은 개발자가 변경한 코드를 자주 통합하고 이를 자동으로 테스트하는 소프트웨어 개발 방법입니다.CI 자동화는 DevOps 환경에서 소프트웨어 품질과 개발 속도를 높이기 위해 필수적인 요소입니다.주로 빌드, 테스트, 코드 품질 검사 등을 자동화하여 코드 통합에 따른 오류를 조기에 발견하고 신속히 대응할 수 있게 합니다.   CI 자동화가 필요한 이유는 다음과 같습니다.코드 충돌 감소: 팀 내 여러 개발자가 동시에 작업하면서 코드 통합 시 충돌이 발생할 수 있습니다. CI 자..

Tech story/Cloud 2024.11.13

What is DevOps? - Github Action

[kt cloud DevOps팀 이효원 님] What is DevOps? - Github Action 1. Github 구성 요소Github은 소스 코드 관리를 넘어, 개발자와 팀이 협업하고 프로젝트를 관리하는 다양한 도구를 제공하는 플랫폼입니다.Github은 크게 Organization, Team, Repository로 구성됩니다. 1-1. OrganizationGithub Organization은 여러 팀과 프로젝트를 효율적으로 관리할 수 있는 Github의 그룹 단위입니다.기업이나 큰 팀의 경우, Organization을 생성해 프로젝트와 리소스를 통합 관리할 수 있습니다.Organization은 다음과 같은 기능을 제공합니다.중앙 관리: 조직 내 모든 사용자와 Repository를 중앙에서 관리할..

Tech story/Cloud 2024.11.11

What is DevOps? - DevOps & CI/CD

[tk cloud DevOps팀 이효원 님] What is DevOps? - DevOps & CI/CD 1. DevOps란DevOps는 Development(개발)와 Operations(운영)의 합성어로,소프트웨어 개발과 IT 운영 팀 간의 협업을 강화하여 지속적인 통합(CI)과 지속적인 배포(CD)를 가능하게 하는 문화 및 철학을 의미합니다.개발 주기 동안 모든 팀이 같은 목표를 추구하고, 장애물 없이 빠르고 안정적인 배포를 위해 긴밀하게 협력하는 것을 목표로 합니다.  기존에는 개발팀과 운영팀이 서로 독립적으로 작업하는 경우가 많았습니다.하지만 DevOps는 이 두 팀이 소통과 협업을 통해 함께 문제를 해결하고,궁극적으로 더 높은 품질의 소프트웨어를 더 빠르고 안정적으로 제공할 수 있도록 합니다.2...

Tech story/Cloud 2024.11.11