Notice
Recent Posts
Recent Comments
Link
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

척척 학사

[KT에이블스쿨] '클라우드 서비스' 1일차 정리 & 리뷰 본문

[5기] KT에이블스쿨/[5기] 수업 리뷰

[KT에이블스쿨] '클라우드 서비스' 1일차 정리 & 리뷰

나는야맹구 2024. 5. 16. 09:59

안녕하세요~ "나는야맹구"입니다. 이번주는 클라우드 서비스에 대해 리뷰해 보도록 하겠습니다.

 

 


  • DX를 위한 필수요건
    • 기술만 잘 안다고해서 DX가 되는 게 아님
    • 조직, 프로세스 및 기술에 대한 새로운 접근 방식을 통해 더 나은 비즈니스 결과 실현
  • 전통적인 IT환경은 인프라를 구성하는데도 오래 걸림
  • DX는 민첩하게 변화를 제공해야 함, 따라서 전통적인 IT환경에서 DX를 추진하는 거에는 한계가 존재
  •  
  • 클라우드 컴퓨팅 이점
    • 코로나19 백신개발, 모더나
      • 모더나의 경우, 클라우드 인프라를 활용하여 mRNA 연구개발 플랫폼과 방대한 임상 데이터 수집 및 분석 체계를 신속하게 구축했다고 하네요 (싱기방기)
  • DX를 추구하는 수많은 기업들은 기존 IT환경을 클라우드 환경으로 전환하는 추세
  • 클라우드 배포 모델(용어 알아야 한다고 강조하심)
    • 퍼블릭 클라우드
      • 대중적으로 사용(누구나 사용 가능)
      • 클라우드 공급자 인프라 및 제공 서비스 활용
      • 아마존 웹서비스(AWS), 마이크로소프트 애저(Azure), 구글 클라우드 플랫폼(GCP)
      • KT클라우드, 네이버 클라우드
      • 단점
        • 내 데이터가 외부에 존재하는 보안 측면의 리스크 존재
    • 프라이빗 클라우드
      • 특정 조직에서 자신의 데이터 센터에 직접 클라우드 환경을 구축하여 활용하는 형태
      • 조직 내부에서 사용 가능(KT에서 만든 클라우드는 삼성에서 접근 못함), 보안, 규
      • 엄격한 규제와 통제 적용이 필요한 경우
      • 특정 기업 내부에서 구축, 정부 전용으로 구축한 G-클라우드(공무원들이 사용)
    • 초창기 퍼블릭 클라우드는 대부분 스타트업이나 중소기업이 선호함
    • 글로벌 기업, 대기업들은 프라이빗 클라우드 사용하나 최근에는 퍼블릭도 같이 사용하는 추세
    • 기업들이 요즘은 하이브리드 클라우드 사용(요즘 Trend) 
      • 중요하고 민감한 정보 -> 프라이빗 클라우드
      • 그렇지 않은 서비스 -> 퍼블릿 클라우드
      • 효과
        • 비용 절감
        • 보안성 유지
      • 해마다 하이브리드 클라우드 시장규모 늘어나고 있음
      • 각기 다른 시스템을 관리해야 하는 운영상의 복잡성도 존재 
        • 예를 들어, 각 클라우드마다 관리할 수 있는 인력 필요
    • 멀티 클라우드(요즘 trend)
      • 서로 다른 다수의 퍼블릭 클라우드 결합해서 사용
      • 사용 목적
        • 각 퍼블릭 클라우드 업체의 장점을 적절히 선택
        • 예시) 데이터 분석에는 kt cloud, 인공지능에는 aws ~~ 등등 각 목적에 따라 클라우드 다른 모델 사용
    • 국내 클라우드 업체 동향
      • CSP(Cloud Service Provider)
        • 클라우드 서비스 제공 업체
        • 자체 데이터 센터를 통한 IaaS, PaaS 등의 서비스를 제공
        • 업체
          • KT클라우드, NHN클라우드, 네이버 클라우드, 카카오 엔터프라이즈 등
      • MSP(Managed Service Provider)
        • 클라우드 관리 서비스 제공업체
        • 고객사 시스템을 CSP 클라우드로 이관하기 위한 컨설팅, 전환, 구축 및 운영 관리 수행
        • 업체
          • 삼성 SDS, LG CNS, SK C&C 등
      • KT Cloud
        • 레퍼런스 많더라 -> 의미: 구축사례가 많다는 건 voc의견이 많음, 현장 의견 많이 들어옴
      • 가상화(Virtualization)
        • 물리적 하드웨어를 보다 효율적으로 활용할 수 있도록 해주는 클라우드 핵심 기술
        • 이걸로 뭐 할 수 있는데?
          • 서비스에 필요한 리소스를 가상 환경에서 생성하고 관리할 수 있음
        • 한 개의 물리적 서버 위에 다수의 가상 서버를 생성하여 애플리케이션을 독립적으로 실행
          -> 한 서버 안에서 여러 개의 app을 띄워서 app끼리 서로 간섭 안 받게 
        • 하이퍼바이저(hypervisior)
          • 물리적 머신에서 다수의 운영체제를 동시에 실행하기 위한 논리적 플랫폼
          • 쉽게 말해 가상 머신을 생성하고 구동하는 소프트웨어
          • 가상머신 간에 서로 간섭하는 것 방지
          • 종류 되게 많음
            • 다른 종류끼리는 하이퍼바이저 연결이 안 됨
            • 베어메탈 방식
            • 호스트형 방식
          • 가상머신은 하이퍼바이저에 종속적임
        • 네트워크 가상화
        • 데스크탑 가상화
        • 분산 처리
          • 특정 목적을 위해 한 개의 대용량 서버가 아닌 여러 저용량 서버를 클러스터 형태로 구성하고, 연산을 병렬로 처리하도록 만든 기술
        • 인프라 확장 방식
          • 오토 스케일링
            • 문제
              • 홈쇼핑하는데 구매가 몰렸어 -> 트래픽 늘려야 함 -> cpu 멈춰놓고 늘려야 하는데, 홈쇼핑 생방송에 서버를 현실적으로 멈출 수 없음 
            • 해결 방안
              • 트래픽 변화에 따라 처리하는 리소스를 '자동으로' 확장하기도 하고 축소하기도 하는 오토 스케일링을 사용하면 됨
              • 효과
                • 서비스가 탄력성을 유지할 수 있음
            • 정의
              • 클라우드의 유연성/탄력성을 돋보이게 하는 핵심기술로 CPU, 메모리, 디스크 등의 다양한 성능지표를 모니터링하여 리소스 개수를 자동으로 조절하는 기능
          • 로드 밸런싱(Load Balancing)
            • 동시에 많은 사용자 요청으로 트래픽이 급증했을 때 여러 대의 서버에 트래픽을 적절하게 분산하여 병목 현상을 예방하는 기술
            • 실무에서 오토 스케일능 기능과 함께 활용됨
            • 탄력성을 가진 아키텍처는 '로드 밸런싱'과 '오토 스케일링' 기능을 갖추고 있음
            • 장애가 발생한 서버에 트래픽을 보내면 안 됨 -> 그래서 로드 밸런싱에서는 Health Check(상태확인) 기능이 있음 -> 서버의 상태를 확인하는 기능임, 서버가 장애가 발생했는지 확인하는 기능
          • 서버리스(Serverless)
            • 인프라를 직접 프로비저닝하고 관리할 필요 없이 신속하게 서비스를 구현할 수 있는 클라우드 애플리케이션 개발 모델
            • 클라우드에서 서버의 역할을 하는 가상의 인프라를 배포/관리할 필요가 없다는 말
            • 대기업엣 서버리스 서버 많이 사용한다고 함
            • 코드 작성, 간단한 설정만 하면 클라우드에서 이를 실행하기 위한 인프라 프로비저닝, 유지 관리, 확장 등의 작업을 자동으로 처리
          • 데브옵스(DevOps)
            • 개발과 운영의 합성어로 애플리케이션 개발팀과 운영팀 간의 소통, 협업 및 통합을 강조하는 문화, 업무방식, 개발 환경을 의미
            • 개발팀에서 개발한 시스템을 test진행 후 운영팀이 운영
            • 일부 기능 변경 시 장애 발생을 우려하여 잦은 배포 꺼려하게 되고 장애 발생 시 관계 악화
            • DX는 고객 니즈에 맞는 '빠른' 업데이트를 하는 것이 목적인데 위 같은 업무 방식은 DX를 더 느리게 하게 만듦 
            • 코드 수정하고 배포하는 데까지 많은 시간 소요 
            • 코드가 수정될 때마다 신속하게 해결하고 병합을 통해 신속한 배포가 가능한 환경 구현
            • CI/CD를 통한 워크플로우 통합 및 자동화
              • CI는 다수의 개발자가 작성 혹은 수정한 소스 코드를 지속적으로 통합하고 자동화된 테스트를 진행하여 문제를 신속하게 검출하고 해결하기 위해 구축
              • CD(Continuous Delivery)를 통해 테스트가 완료된 유효 코드를 Repository에 자동으로 업로드, CD(Continuous Deployment)를 통해 자동화된 배포를 진행하여 애플리케이션을 최신화
              • CI
                • BUILD -> TEST -> MERGE 과정을 자동으로 진행
              •  CD
                • 코드가 수정될 때마다 배포가 '자동으로' 이루어지는 거
              • CI/CD 환경 왜 구축?
                • 고객에게 서비스를 빠르게 배포, 업데이트하기 위해서
                • 궁극적으로 DX(빠르고 신속하게) 체계를 가져가기 위해서임
            • 강사님이 말하는 컨설턴트의 역할
              • planning
                • 사업 기획을 한다
                • 왜 이 사업이 필요하는 근거 마련, 고객사, 경영진을 설득하는 과정을 진행함
              • Presales
                • 제안서 작성(수주 따오는 거)
              • PMO
                • 사업, 프로젝트가 성공할 수 있도록 성공을 지원하고 통제하는 업무를 말함
              • 보통 컨설팅하는 업무를 하는 사람은 위 업무를 주로 함
              • 위 과정을 진행하기 위해서는 고객사가 어떤 문제(적용 관점, 프로세스 관점)가 있는지 알아야 적절한 해결책을 제시할 수 있음
              • 컨설팅을 하는 사람은 고객에게 Advice 하는 입장
              • 컨설팅하는 사람에게는 어떤 게 필요하냐
                • Knowledge(지식)
                  • 어떤 지식?
                    • business
                      • 비즈니스와 트렌드를 읽을 줄 알아야 함 즉, 시장을 읽을 줄 알아야 함
                    • trend
                    • process
                      • 비즈니스 처리 과정도 알아야 하고
                    • Techonoloy
                      • it컨설팅하는 사람이 기술을 모르면 대화가 안 됨
                • 컨설턴트는 지식을 깊게는 아니어도 광범위하게 알아야 컨설턴트가 가능하다고 하심
                • 지식을 쌓고 경험을 쌓아가면
                  • 고객사의 문제를 진단하고,
                  • 아키텍처 관점에서 개선 방안을 내놓고,
                  • 사업화를 어떻게 할지 계획도 짤 수 있음
      • IAM 그룹
        • 이 그룹을 활용하면 동일한 업무를 수행하는 다수의 사용자들에 대한 권한을 좀 더 쉽게 관리할 수 있음
        • 조직에서 직원의 업무가 바뀌면, 해당 사용자의 권한을 개별적으로 편집하는 대신 이전 사용자 그룹에서 해당 사용자를 제거한 후 적절한 사용자 그룹에 추가
          • 특정 A직원에게 권한을 부여하는 것이 아니라 '그룹'에 권한을 부여해서, A직원이 타 그룹으로 이동해도 번거롭지 않게 업무 변경이 가능하다는 거구나. 

        • IAM Role(임시자격증명)
          • 사용자에게 있던 기존 권한은 역할을 수임한 기간 동안 회수됨
          • 예시
            • susan이란 얘는 데이터 분석 업무를 해 
            • 근데 얘가 하루동안 테스트 업무를 지원해야 돼. 
            • 근데 기본적인 권한 내 test업무 지원 권한이 없는 상태임
            • 제일 손쉬운 방법은 그냥 데이터분석에 + 테스트 지원 업무 권한 부여하면 되는 것임
            • 그럼 추가적인 권한 내에 업무 수행가능하자나 
            • 근데 문제가 있음 
            • 나중에 test 끝난 다음에 이 권한을 삭제해야 되는데, 삭제 안 하면  susan이란 애는 테스트 권한을 계속 가지고 있는 거임 -> "계정 보안 측면에서 바람직하지 않음"
            • 따라서 IAM Role 방식을 사용해서 susan에게 test지원 권한 role을 assume 하면, susan은 기존에 있던 데이터분석 업무는 없어지고, 새롭게 배정된 테스트 지원 권한만 갖게 됨. 
            • 근데  IAM Role이 만료 기간이 지정되어 있어서 처음에 권한 줄 때 12시간 제한 걸어두면, 12시간 지나면 테스트 지정 권한 없어지고, 데이터 분석 권한을 다시 갖게 됨

 


2일 차 '클라우드'로 다시 돌아오겠습니다.ㅇㅅㅇ!!