Azure
-
Azure DevOps 구성 - ③Azure 2023. 7. 21. 18:05
들어가기 전에 이전 포스팅을 통해 Github에서 소스코드를 PR 하고 ACR로 도커라이징 해보았다. 이 포스팅에서는 k8s 를 배포하면서 만나게된 이슈와 오류상황을 기록해보려고 한다. k8s 서비스 통신 매커니즘 k8s 서비스 통신 매커니즘을 Azure 클라우드와 함께 설명해보자면, 아래 구성도와 비슷하다. Client 가 로드밸러서(Azure Application Gateway)의 공인 IP로 연결을 한다. 여기서 NodePort Service or LoadBalancer Services and ClusterIP Services 로 타입이 구분된다. NodePort Type type 필드를 NodePort 로 설정하면, 쿠버네티스 컨트롤 플레인은 --service-node-port-range 플래그로..
-
Azure DevOps 구성 - ②Azure 2023. 7. 19. 12:04
들어가기 전에 이번 포스팅에서는 Azure DevOps 구성 중에 만나게 되었던 이슈와 해결해간 프로세스를 예쁘게 정렬한 글이 아닌 시간의 흐름대로 작성하려고 한다. 사용자 위치와 트래픽을 고려한 설계 처음으로 고려했던 포인트가 타겟한 사용자들이 주로 어디에 위치하고 어느정도의 트래픽을 예측하냐이다. 타겟한 사용자를 알아야 해당 Region 에 호스팅 서버를 배치할 것이고 트래픽을 가늠해야지만 호스팅 서버까지 중간다리인 gateway 전략을 효율적으로 할 수 있다. 추가적으로 고려했던 포인트가 있는데 관리 포인트 & 사용자 IP 추적이다. 인프라를 혼자 담당해서 개발하고 운영해야하다보니 대규모의 인프라 구조는 비용을 낭비한다고 판단했고 복잡한 구조로 인해 트러블슈팅만 어려워질 수 있기 때문이다. 사용자 ..
-
Azure DevOps 구성 - ①Azure 2023. 7. 19. 11:28
들어가기 전에 이전 포스팅글에서 목표로하는 구성을 진행하면서 만나게된 문제와 구현방법을 작성하려고 한다. 첫 포스팅에서는 DevOps 가 무엇이고 어떻게 동작하는지 그리고 Azure DevOps 서비스를 알아보겠다. DevOps DevOps는 애플리케이션과 서비스를 빠른 속도로 제공할 수 있도록 조직의 역량을 향상시키는 문화 철학, 방식 및 도구의 조합이다. 기존의 소프트웨어 개발 및 인프라 관리 프로세스를 사용하는 조직보다 제품을 더 빠르게 혁신하고 개선할 수 있다. 이러한 빠른 속도를 통해 조직은 고객을 더 잘 지원하고 시장에서 좀 더 효과적으로 경쟁할 수 있다. DevOps 동작 방식 DevOps 모델에서는 개발팀과 운영팀이 더 이상 `사일로`에 묶여 있지 않다. 때로는 이 두 팀이 단일팀으로 병합..
-
Azure DevOps 와 배포 작업Azure 2023. 3. 29. 18:39
들어가기 전에 GitHub의 원본소스를 Azure Pipelines 로 트리거를 걸어 소스를 가져오고 빌드를 하고 배포를 진행하는데 있어 배포 작업을 수행하기 위해 Azure 공식문서를 기반으로 개념을 익히고 실습해보려고 한다. 배포 작업 개요 Azure Pipelines YAML 파일에 배포 작업을 새로운 step 으로 구성하는 것이 좋다. 배포 작업은 환경을 기반으로 순차적으로 실행되는 단계 모음이다. 배포 작업과 일반 작업은 동일한 단계에 존재할 수 있다. 배포 작업은 다음과 같은 이점을 제공한다. 배포 기록(Deployment history) : 감사를 위해 파이프라인 전체에서 특정 리소스 및 배포 상태에 이르기까지 배포 기록을 가져온다. 배포 전략 적용(Apply deployment strate..
-
VSCode와 GitHubAzure 2023. 3. 28. 19:59
들어가기 전에 Git을 사용할 때 둘 이상의 계정을 번갈아가며 사용하게 되었다. 둘 이상의 계정을 어떻게 관리하고 계정을 돌아다니며 작업하다 만나 오류를 작성 해보려한다. 두 개의 계정 초기 세팅 commit 할 때 사용하는 이메일 주소는 ~/.gitconfig 파일에 전역으로 설정해 놓는 것과 저장소 별 로컬마다 config 설정을 하는 방법이 있다. 또한, SSH Key 를 사용한 저장소 연결도 가능하다. HTTPS 통신보다 SSH or Token 통신을 많은 Tool에서 반영하고 있다. 그래서 SSH Key를 사용해 GitHub를 사용해보려 한다. ❗ 내가 자주 사용하는 SourceTree 도 HTTPS 통신을 지원하지 않는다. 기본적인 git 명령어 사용자 설정방법은 아래와 같다. # 특정 사용자..
-
Azure Kubernetes Service 에 Application Gateway Ingress ControllerAzure 2023. 3. 16. 11:58
들어가기 전에 이전에 Terraform 을 사용해 Azure Kubernetes Service 를 만들어보았다. 여기서는 reverse proxy, configurable traffic routing, and TLS termination 이 포함된 기능을 제공하는 AGIC(Application Gateway Ingress Controller)를 알아보려한다. Kubernetes Ingress resources 는 개별 Kubernetes 서비스에 대한 수신 규칙을 구성하는 데 사용된다. 수신 컨트롤러 및 수신 규칙을 사용하면 단일 IP 주소를 사용하여 Kubernetes 클러스터의 여러 서비스에 트래픽을 라우팅할 수 있다. 이러한 모든 기능이 Azure Application Gateway 에서 제공되고있..
-
Azure Kubernetes Services 와 TerraformAzure 2023. 3. 15. 18:15
들어가기 전에 지금까지 AWS or Azure 플랫폼에서 Terraform 을 구성하고 간단하게 Terraform 의 LifeCycle(init, plan, apply, destroy) 을 경험해보았다. 이제는 서비스에 사용할 리소스를 생성해보면서 설계한 인프라를 구성해보겠다. 아마도 몇 주는 집중해서 구성하게 될 것이다. 정신 바짝 차리고 목표를 완수해보자! 선행 조건 Azure 구독 Terraform 구성 Azure 서비스 주체 SSH key pair Kubernetes 명령줄 도구(kubectl) 이전 Azure 와 Terraform 에서 Azure 구독과 Terraform 구성 및 Azure 서비스 주체를 만들어 놓고 삭제하지 않아서 이미 만들어놓은 서비스 주체를 사용하겠다. 전체 내용을 확인하고..
-
Azure 리소스 관리를 위한 개념Azure 2023. 3. 10. 13:13
들어가기 전에 Azure CLI 를 통해 리소스 관리를 하기 위해서 Azure 구독 개념을 제대로 알아야 흐름을 이해할 수 있다. 이 글은 Azure Acive Directory 관련 내용을 확인해볼것이다. Azure 리소스 관리 체계 Azure 리소스 관리 체계는 [테넌트 > 관리 그룹 > 구독 > 리소스 그룹 > 리소스] 로 나뉘어져 있다. Azure는 Active Directory 를 통해 사용자를 관리하고, 관리 그룹을 통해서 구독을 액세스하고, 정책 및 권한을 효율적으로 관리한다. 예를 들자면, 위 그림처럼 테넌트를 하나의 회사라고 생각하고 이어서 하위 개념을 생각하면 상하 관계의 이해가 쉬워진다. Azure Active Directory 회사나 조직에서 구성원들의 계정 정보(ID, Passwo..