Azure Portal에서 첫 번째 함수 만들기

Azure Functions를 사용하면 먼저 VM(가상 머신)을 만들거나 웹 애플리케이션을 게시하지 않고도 서버리스 환경에서 코드를 실행할 수 있습니다. 이 문서에서는 Azure Functions를 사용하여 Azure Portal에서 "hello world" HTTP 트리거 함수를 만드는 방법을 알아봅니다.

문서 맨 위에 있는 원하는 프로그래밍 언어를 선택합니다.

참고 항목

Azure Portal에서 C# 함수 코드 편집은 현재 C# 스크립트(.csx) 함수에 대해서만 지원됩니다. Azure Portal의 함수 코드 편집 관련 제한 사항에 대해 자세히 알아보려면 Azure Portal의 개발 제한 사항을 참조하세요.

대신 함수를 로컬로 개발하고 Azure의 함수 앱에 게시해야 합니다. 다음 링크 중 하나를 사용하여 선택한 로컬 개발 환경을 시작합니다.

참고 항목

Azure Portal에서 Java 함수 코드 편집은 현재 지원되지 않습니다. 자세한 내용은 Azure Portal의 개발 제한을 참조하세요.

대신 함수를 로컬로 개발하고 Azure의 함수 앱에 게시해야 합니다. 다음 링크 중 하나를 사용하여 선택한 로컬 개발 환경을 시작합니다.

참고 항목

Azure Portal개발 제한 사항으로 인해 함수를 로컬로 개발하고 Azure의 함수 앱에 게시해야 합니다. 다음 링크 중 하나를 사용하여 선택한 로컬 개발 환경을 시작합니다.

참고 항목

Azure Portal에서 TypeScript 함수 코드 편집은 현재 지원되지 않습니다. 자세한 내용은 Azure Portal의 개발 제한을 참조하세요.

대신 함수를 로컬로 개발하고 Azure의 함수 앱에 게시해야 합니다. 다음 링크 중 하나를 사용하여 선택한 로컬 개발 환경을 시작합니다.

참고 항목

Azure Portal개발 제한 사항으로 인해 함수를 로컬로 개발하고 Azure의 함수 앱에 게시해야 합니다. 다음 링크 중 하나를 사용하여 선택한 로컬 개발 환경을 시작합니다.

참고 항목

Azure Portal에서 Python 함수 개발은 현재 소비 계획에서 실행되는 경우에만 지원됩니다. 자세한 내용은 Azure Portal의 개발 제한을 참조하세요.

대신 함수를 로컬로 개발하고 Azure의 함수 앱에 게시해야 합니다. 다음 링크 중 하나를 사용하여 선택한 로컬 개발 환경을 시작합니다.

Azure Portal에서 Python을 사용하여 Azure Functions를 개발하기 위한 알려진 문제를 검토하세요.

필수 조건

Azure를 구독하고 있지 않다면 시작하기 전에 Azure 체험 계정을 만듭니다.

Azure에 로그인

Azure 계정을 사용하여 Azure Portal 에 로그인합니다.

함수 앱 만들기

함수 실행을 호스트하는 함수 앱이 있어야 합니다. 함수 앱을 사용하면 함수를 논리 단위로 그룹화하여 더 쉽게 리소스를 관리, 배포, 크기 조정 및 공유할 수 있습니다.

다음 단계를 사용하여 Azure Portal에서 코드를 편집할 수 있는지 여부에 관계없이 함수 앱 및 관련 Azure 리소스를 만듭니다.

포털에서 편집할 수 있는 C# 스크립트 앱을 만들려면 .NET 버전에 대해 6(LTS)을 선택해야 합니다.

  1. Azure Portal 메뉴 또는 페이지에서 리소스 만들기를 선택합니다.

  2. 새로 만들기 페이지에서 컴퓨팅>함수 앱을 선택합니다.

  3. 기본 사항 페이지에서 함수 앱 설정을 다음 표에서 지정한 대로 사용합니다.

    설정 제안 값 설명
    구독 구독 새 함수 앱을 만드는 데 사용되는 구독입니다.
    리소스 그룹 myResourceGroup 함수 앱을 만들 새 리소스 그룹의 이름입니다. 기존 리소스 그룹에서 새 함수 앱을 만들 때 알려진 제한 사항이 있으므로 새 리소스 그룹을 만들어야 합니다.
    함수 앱 이름 전역적으로 고유한 이름 새 함수 앱을 식별하는 이름입니다. 유효한 문자는 a-z(대/소문자 구분 안 함), 0-9-입니다.
    코드 또는 컨테이너 이미지를 배포하려고 하나요? 코드 코드 파일 또는 Docker 컨테이너를 게시하는 옵션입니다.
    런타임 스택 기본 언어 즐겨찾는 함수 프로그래밍 언어를 지원하는 런타임을 선택합니다. 포털 내 편집은 JavaScript, PowerShell, Python, TypeScript 및 C# 스크립트에만 사용할 수 있습니다. C# 클래스 라이브러리 및 Java 함수는 로컬로 개발해야 합니다.
    버전 버전 번호 설치된 런타임의 버전을 선택합니다.
    지역 기본 지역 사용자 또는 함수가 액세스할 수 있는 기타 서비스에 가까운 지역을 선택합니다.
    운영 체제 Windows 운영 체제는 런타임 스택 선택에 따라 미리 선택되지만 필요한 경우 설정을 변경할 수 있습니다. 포털 내 편집은 Windows에서만 지원됩니다. 컨테이너 게시는 Linux에서만 지원됩니다.
    호스팅 옵션 및 계획 ‘사용량(서버리스)’ 함수 앱에 리소스가 할당되는 방법을 정의하는 호스팅 계획입니다. 기본 소비 플랜에서 함수의 필요에 따라 리소스가 동적으로 추가됩니다. 이 서버리스 호스팅에서는 함수가 실행되는 시간 만큼만 요금을 지불하면 됩니다. 프리미엄 플랜은 동적 크기 조정도 제공합니다. App Service 계획에서 실행하는 경우 함수 앱의 크기 조정을 관리해야 합니다.
  4. 스토리지 탭에서 새 스토리지 계정을 만들고 모니터링 탭에서 새 Application Insight 인스턴스를 만드는 기본 옵션을 수락합니다. 기존 스토리지 계정이나 Application Insights 인스턴스를 사용하도록 선택할 수도 있습니다.

  5. 검토 + 만들기를 선택하여 선택한 앱 구성을 검토한 다음 만들기를 선택하여 함수 앱을 프로비전하고 배포합니다.

  6. 포털의 오른쪽 위 모서리에 있는 알림 아이콘을 선택하고 배포 성공 메시지를 확인합니다.

  7. 리소스로 이동을 선택하여 함수 앱을 봅니다. 대시보드에 고정을 선택할 수도 있습니다. 고정하면 대시보드에서 이 함수 앱 리소스로 쉽게 돌아올 수 있습니다.

    Screenshot of deployment notification.

다음으로 새 함수 앱에서 함수를 만듭니다.

HTTP 트리거 함수 만들기

  1. 함수 앱에서 개요를 선택한 다음, 함수에서 + 만들기를 선택합니다. + 만들기 단추가 표시되지 않으면 함수를 로컬로 만들 수 있습니다.

  2. 템플릿 선택에서 아래로 스크롤하여 HTTP 트리거 템플릿을 선택합니다.

  3. 템플릿 세부 정보에서 새 함수HttpExample을 사용하여 권한 부여 수준 드롭다운 목록에서 익명을 선택한 다음, 만들기를 선택합니다.

    Azure에서 HTTP 트리거 함수를 만듭니다. 이제 HTTP 요청을 전송하여 새 함수를 실행할 수 있습니다.

로컬로 함수 만들기

포털에서 함수 코드를 만들 수 없는 경우 대신 로컬 프로젝트를 만들고 함수 코드를 새 함수 앱에 게시할 수 있습니다.

  1. 함수 앱에서 개요를 선택한 다음, 기본 설정 환경의 Functions에서 함수 만들기를 선택합니다.

  2. 선호하는 로컬 개발 환경을 선택하고 연결된 문서의 단계에 따라 첫 번째 Azure Functions 프로젝트를 만들고 게시합니다.

    새 프로젝트를 게시할 때 함수 앱 및 방금 만든 관련 리소스를 사용해야 합니다.

함수 테스트

포털의 코드 + 테스트 기능은 읽기 전용이고 포털에서 편집할 수 없는 기능에 대해서도 작동합니다.

  1. 포털에서 새 함수 앱에서 HTTP 트리거 함수를 찾고, 왼쪽 메뉴에서 코드 + 테스트를 선택한 다음, 상단 메뉴에서 함수 URL 가져오기를 선택합니다.

    Screenshot of Get function URL window.

  2. 함수 URL 가져오기 대화 상자의 드롭다운 목록에서 기본값을 선택한 다음, 클립보드에 복사 아이콘을 선택합니다.

    Screenshot of Copy the function URL window from the Azure portal.

  3. 함수 URL을 브라우저의 주소 표시줄에 붙여넣습니다. ?name=<your_name> 쿼리 문자열 값을 이 URL의 마지막에 추가하고 Enter 키를 눌러 요청을 실행합니다. 브라우저는 쿼리 문자열 값을 반향하는 응답 메시지를 표시해야 합니다.

    요청 URL에 액세스 키(?code=...)가 포함된 경우 함수를 만들 때 익명 액세스 수준 대신 함수를 선택했음을 의미합니다. 이 경우 대신 &name=<your_name>을 추가해야 합니다.

  4. 함수가 실행되면 추적 정보가 로그에 기록됩니다. 추적 출력을 보려면 포털의 코드 + 테스트 페이지로 돌아가서 페이지 하단에 있는 로그 화살표를 확장합니다. 함수를 다시 호출하여 로그에 기록된 추적 출력을 확인합니다.

    Screenshot of Functions log viewer in the Azure portal.

리소스 정리

이 컬렉션의 다른 빠른 시작은 이 빠른 시작을 기반으로 구성됩니다. 이후의 빠른 시작, 자습서 또는 기타 이 빠른 시작에서 만든 서비스를 사용하여 작업하려는 경우 이 빠른 시작에서 만든 리소스를 정리하지 않습니다.

Azure에서 리소스란 함수 앱, 함수, 스토리지 계정 등을 의미합니다. 리소스는 리소스 그룹으로 그룹화되며 그룹을 삭제하면 그룹의 모든 항목을 삭제할 수 있습니다.

이러한 빠른 시작을 완료하기 위해 리소스를 만들었습니다. 이러한 리소스에 대한 요금이 계정 상태서비스 가격 책정에 따라 청구될 수 있습니다. 리소스가 더 이상 필요하지 않게 되면 다음과 같이 삭제합니다.

  1. Azure Portal에서 리소스 그룹 페이지로 이동합니다.

    함수 앱 페이지에서 해당 페이지로 이동하려면 개요 탭을 선택한 다음, 리소스 그룹 아래의 링크를 선택합니다.

    Screenshot that shows select the resource group to delete from the function app page.

    대시보드에서 해당 페이지로 이동하려면 리소스 그룹을 선택한 다음, 이 문서에 사용한 리소스 그룹을 선택합니다.

  2. 리소스 그룹 페이지에서 포함된 리소스 목록을 검토하고 삭제하려는 항목인지 확인합니다.

  3. 리소스 그룹 삭제를 선택하고 지시를 따릅니다.

    삭제하는 데 몇 분 정도 걸릴 수 있습니다. 완료되면 알림이 잠시 표시됩니다. 또한 페이지 위쪽의 종 모양 아이콘을 선택하여 알림을 확인할 수도 있습니다.

다음 단계

첫 번째 함수를 만들었으므로, Storage 큐에 메시지를 작성하는 함수에 출력 바인딩을 추가해 보겠습니다.