클라우드에서 앱 성능 최적화
99%의 경우, "수동"이라는 단어는 무기력함과 예측 불가능성을 모두 뜻하는 단어일 수 있습니다. 속도와 안정성을 추구할 때 자동화가 좋은 시작점이라는 데 대부분은 동의할 것입니다. 앱을 확장하기 위해 추가 클라우드 리소스를 스핀업하든, 필수 앱 서비스를 배포하고 구성하든, 그 모든 작업은 API 호출을 실행하거나 콘솔에서 한두 번 클릭하는 것만큼 간단해야 합니다. 성공의 열쇠는 인프라를 코드로 구현하는 것(IaC)을 활용하는 것입니다. 인프라/넷옵스/보안운영 담당자와 협력하여 배포 내용과 방법을 자세히 설명하는 검증된 정의 파일을 작성하면 빠르고 반복 가능하며 안정적인 방식으로 인프라와 서비스를 프로비저닝할 수 있습니다.
셀프 서비스 배포에 이러한 템플릿 방식을 활용하면 궁극적으로 다른 팀에 대한 의존도를 낮추고 수동 인프라 프로비저닝을 위한 티켓 기반 요청으로 인해 발생하는 배포 병목 현상을 방지할 수 있습니다.
인프라스트럭처를 코드로 구현하면 배포 속도를 높이는 데 도움이 되지만, 완전한 CI/CD 파이프라인의 가치를 활용하면 훨씬 더 많은 이점을 얻을 수 있습니다. 더 빈번하게 새로운 애플리케이션 코드를 통합하고 해당 업데이트를 자동으로 프로덕션에 적용하는 기능 외에도 파이프라인에 앱 서비스를 삽입하는 기능도 통합할 수 있다는 사실을 알고 계셨나요? 이러한 서비스를 코드(IaC)로 정의하고 정기적으로 모니터링, 업데이트, 검증할 수 있는 소스 제어 도구에 저장하면 CI/CD 도구(Ansible 및 GitLab 등)가 API 호출을 통해 이러한 서비스를 자동으로 배포에 가져올 수 있습니다. 이렇게 하면 배포를 지연시키지 않고도 모든 앱에 적절한 보안 및 규정 준수 제어 기능을 적용 할 수 있습니다.
필요한 코드, 라이브러리, 바이너리를 여러 플랫폼에 빠르고 일관되게 배포할 수 있는 가벼운 패키지로 묶는 기능은 최근 컨테이너 도입이 급증하는 기반이 되었습니다. 이러한 특성은 클라우드에서 속도를 최적화할 때 좋은 징조입니다. 앱을 즉석에서 시작하고 확장하고, CI/CD 프로세스를 가속화하고, 매우 동적이고 관리하기 쉬운 마이크로서비스 아키텍처를 구축할 수 있는 기능을 제공합니다.
과장된 광고는 제쳐두고, 속도에만 치중해 애플리케이션 포트폴리오의 나머지 부분과 동일하거나 그 이상의 수준의 보안 및 애플리케이션 성능 최적화가 필요한 애플리케이션이 여전히 있다는 사실을 잊기 쉽습니다. 그리고 안타깝게도 컨테이너의 고유한 요구 사항을 충족하기 위해 기존 앱 서비스를 개조하려고 해도 성공할 가능성은 제한적입니다. 대신 컨테이너 오케스트레이션 시스템과 통합되어 컨테이너를 실제로 지원 하고, 원치 않는 중단 및 보안/규정 준수 문제를 방지하는 데 도움이 되는 보다 동적인 서비스 세트를 식별해야 합니다.
4. 지식 가시성은 힘입니다
앱을 빠르게 구동하는 것이 한 가지 방법입니다. 이를 항상 그곳에 두고 사용자가 이용할 수 있게 하는 것은 전혀 다른 과제입니다. 프로덕션에 들어가면 애플리케이션의 상태를 위협할 수 있는 가능성이 무수히 많습니다. 네트워크 중단, 플랫폼 문제, 사이버 공격, 코드 버그 등을 예로 들 수 있습니다. 이로 인해 단일 애플리케이션 중단 문제를 해결하는 작업은 마치 건초더미 속의 바늘을 찾는 것처럼 느껴지지만 다양한 클라우드 환경에서 동시에 발생하는 여러 애플리케이션 장애의 규모를 생각해 보십시오. 어디서부터 시작해야 할까요?
이 시나리오에서 가시성은 지식 의 선행 조건이므로 앱 문제를 해결할 때 매우 중요합니다. 애플리케이션 스택의 각 계층에 대한 가시성이 높을수록 운영상의 이상 현상과 근본 원인을 식별하는 능력이 커집니다. 이를 위해서는 여러 클라우드 아키텍처에서 앱 문제를 보다 빠르게 해결하기 위해 클라우드와 앱에 독립적인 중앙 집중식 가시성 솔루션을 구현하는 것이 중요합니다.
마지막으로, 클라우드 민첩성은 단순히 적절한 도구와 기술을 갖추는 것만이 아닙니다(네, 그것은 분명히 도움이 됩니다). 이는 사람과 프로세스에 대한 것입니다. " 네트워크의 속도는 가장 느린 전선의 속도에 따라 결정된다"는 말에는 어느 정도 진실이 있습니다. 이 인용문은 클라우드에서 앱을 빌드, 배포, 관리하는 팀에도 적용됩니다. 일반적으로 DevOps, SecOps, NetOps 및 최소한 아키텍트를 포함하는 팀 노력이기 때문에 개인이나 협업의 비효율성이 팀 전체에 영향을 미칠 가능성이 높습니다.
2020년 애플리케이션 서비스 현황을 알아보세요: DevOps 에디션
사일로를 허물고 팀 간에 정기적이고 강력한 참여 모델을 시행하면 계획, 문제 해결, 정보 공유를 가속화하는 데 도움이 되는 좋은 기반을 제공하여 모든 사람이 동일한 리듬에 맞춰 나아갈 수 있습니다. 여러분은 삶을 더 편리하게 만들기 위해 교차 기능적 전문성을 더 잘 활용할 수 있을 뿐만 아니라, 자동화 및 프로세스 최적화와 같은 것을 다른 직업에서 옹호함으로써 보답할 수 있으며, 모든 사람이 더 빨리 움직일 수 있도록 도울 수 있습니다.