Skip to content

Commit

Permalink
Update docs
Browse files Browse the repository at this point in the history
  • Loading branch information
n-y-kim committed Mar 15, 2024
1 parent 0e8bf71 commit 9e2e9fb
Show file tree
Hide file tree
Showing 11 changed files with 131 additions and 29 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

### 아키텍처

![Architecture](docs/images/archi-without-pe.png)
![Architecture](docs/images/archi-real.png)

### 시나리오

Expand Down
39 changes: 39 additions & 0 deletions docs/00-get-ready.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# 환경 세팅하기

## VScode에서 devcontainer 열기

fork한 레포를 VScode에서 열면 오른쪽 하단에 devcontainer로 폴더를 열건지 알림창이 뜨는 분들은 `Reopen in Container` 를 해주세요.
![alt text](images/image.png)

만약 해당 창이 뜨지 않으면 devcontianer extension이 없는거라서, 설치 해준 다음 커맨드 팔레트에서 명령어를 찾아서 동일하게 Container를 실행합니다.
![devcontainer-open](images/Screenshot%202024-03-15%20at%209.43.27 PM.png)

## az login 하기

```bash
az login
```

## `.env` 파일 다운받기

클클 슬랙을 통해 공유되는 구글 드라이브 파일을 다운 받아서 `app` 폴더에 넣습니다.

## 로컬에서 앱 실행하기

```bash
cd app
source start-dev.sh
```

`http://localhost:50505` 로 접속

## Terraform 으로 인프라 배포하기

시간이 없으니 배포부터 하고 설명 들읍시다...

```bash
cd infra
terraform init
terraform plan
terraform apply
```
26 changes: 0 additions & 26 deletions docs/01-intro.md

This file was deleted.

15 changes: 15 additions & 0 deletions docs/01-scenario-intro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# 시나리오 소개

## 오늘 우리가 할 것

![real-archi](images/archi-real.png)

- 클라우드 클럽 GPT를 운영하기 위한 아키텍처를 설계했따!
- 제일 간단하게 할 수 있는 건 PaaS 앱서비스를 이용해서 바로 앱을 배포하는 거지만, 우리는 쿠버네티스를 좋아하는 사람들이 많으니까 쿠버로 한다!

## 미리 만들어 둔 리소스들

- AOAI
- Storage Account & Blob storage
- AI Search
- Document Intelligence
51 changes: 51 additions & 0 deletions docs/02-azure-explain.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Azure 소개

## Application Gateway

- L7 Load balancer
- SSL 오프로딩, cookie-based 세션 affinity, URL 기반 라우팅...
- AWS Elastic LB
- Web Application Firewall 기능
- Application Gateway Ingress Controller?

## Azure Kubernetes Service(AKS)

- Azure의 Managed Kubernetes Cluster
- EKS
- 네트워크 플러그인 옵션(kubenet, Azure CNI, Azure CNI Overlay..)에 따라 달라지는 pod ip 할당
- Entra(AzureAD)와 연동되는 RBAC 관리 및 접근 제어

- Azure OpenAI 를 호출하는 앱을 AKS에 띄운다.

## Virtual Machine Scale Set

- AWS autoscaling group

## Azure OpenAI

- 다양한 모델 배포 가능
- Chat
- gpt3, gpt3.5, gpt3.5-turbo, gpt4, gpt4-turbo, gpt4v
- Text completion
- text-davinci-002, text-curie-002
- Embedding
- EDA
- Image
- DALLE
- 단순히 API 엔드포인트만 제공하는 것이 아니라 RAG, 튜닝, 플러그인, 프롬프트 플로우 기능 제공. Private하게 구성할 수 있게 엔드포인트 설정 가능

## Azure AI Search

- RAG를 위해 데이터 인덱싱 및 vector 값 저장

## Storage Account & Blob storage

- DynamoDB
- export한 클클 노션 / 홈페이지 정보를 저장

## 인프라 구성은 Infra as Code(IaC)로

## Azure의 인프라 배포는 어떻게 작동할까?

- ARM Template 기반
![alt text](images/arm.png)
9 changes: 7 additions & 2 deletions docs/gh-action-setting.md → docs/03-gh-action-setting.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,11 @@ ouput 값으로 이런 값들이 나옵니다.
}
```

## 3. Service Principal 에게 필요한 권한 주기

- ACR Push
- AKS RBAC cluster admin

## 3. Secret 값 지정하기

포크를 떠서 가져간 레포에서 `Settings > Security > Secrets and Variables > Actions` 에 들어가 output으로 나온 값들과 AKS/ACR 정보를 차례로 입력합니다.
Expand All @@ -53,7 +58,7 @@ ouput 값으로 이런 값들이 나옵니다.

## Action 테스트하기

- TBD
- AKS에 앱을 배포해봅시다
- build 성공~

## [Todo] Github Action 에러 보면서 원인 찾기

18 changes: 18 additions & 0 deletions docs/04-aks-final.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# 결과물

## AKS service & ingress 배포하기

```bash
az aks get-credentials --resource-group <resourceGroup> --name <AKSName>
kubelogin convert-kubeconfig -l azurecli

cd manifest
kubectl apply -f ingress.yaml
kubectl apply -f internal-lb.yaml
```

- `kubelogin` 쓰는 이유

## App Gateway public ip로 앱 확인하기

짜잔.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/archi-real.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/arm.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/image.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 9e2e9fb

Please sign in to comment.