인터넷 서비스 공급자용 Microsoft Connected Cache(초기 미리 보기)

중요

이 문서는 Microsoft Connected Cache(초기 미리 보기)용입니다. ISP용 Microsoft 연결된 캐시는 현재 공개 미리 보기로 제공됩니다. 초기 미리 보기 고객의 경우 캐시 노드를 공개 미리 보기로 마이그레이션하는 것이 좋습니다. 아래 마이그레이션 방법에 대한 지침을 참조하세요.

개요

MCC(Microsoft Connected Cache) 미리 보기는 운영자 네트워크 내에서 Microsoft 콘텐츠를 제공하는 소프트웨어 전용 캐싱 솔루션입니다. MCC는 필요한 만큼의 물리적 서버 또는 VM에 배포할 수 있으며 클라우드 포털에서 관리됩니다. Microsoft 클라우드 서비스는 콘텐츠 다운로드를 위해 소비자 디바이스를 캐시 서버로 라우팅하는 작업을 처리합니다.

Microsoft Connected Cache는 온-프레미스 및 클라우드 리소스가 혼합된 하이브리드 애플리케이션입니다. 서버 및 클라우드 관리 포털에 배포된 Docker 호환 Linux 컨테이너로 구성됩니다. Microsoft는 안전하고 신뢰할 수 있는 컨트롤 플레인으로 Azure IoT Edge 선택했습니다. IoT Edge 대한 자세한 내용은 부록을 참조하세요. 시나리오가 IoT와 관련이 없지만 Azure IoT Edge 보안 Linux 컨테이너 배포 및 관리 인프라입니다.

MCC 작동 방식

Microsoft Connected Cache 작동 방식의 데이터 흐름 다이어그램

다음 단계에서는 MCC를 프로비전하고 사용하는 방법을 설명합니다.

  1. Azure 관리 포털은 MCC 노드를 만들고 관리하는 데 사용됩니다.

  2. 셸 스크립트는 서버를 프로비전하고 MCC 애플리케이션을 배포하는 데 사용됩니다.

  3. Azure 관리 포털과 셸 스크립트의 조합은 트래픽을 MCC 서버로 라우팅하도록 Microsoft 배달 최적화 서비스를 구성하는 데 사용됩니다.

    • 서버의 공개적으로 액세스할 수 있는 IPv4 주소는 포털에서 구성됩니다.

    • 수동 라우팅: MCC 노드로 라우팅되어야 하는 클라이언트 IP 주소 공간을 나타내는 CIDR 블록을 제공합니다.

    • BGP 라우팅: 셸 스크립트는 운영자 네트워크의 라우터를 사용하여 피어링 세션을 시작하는 데 사용되며 운영자는 MCC 노드로 세션을 시작합니다.

      참고

      현재는 IPv4 주소만 지원됩니다. IPv6 주소를 입력하면 오류가 발생합니다.

  4. Microsoft 최종 사용자 디바이스(클라이언트)는 주기적으로 Microsoft Delivery Optimization Services에 연결되며 서비스는 클라이언트의 IP 주소와 해당 MCC 노드의 IP 주소와 일치합니다.

  5. Microsoft 클라이언트는 MCC 노드의 콘텐츠에 대한 범위 요청을 만듭니다.

  6. MCC 노드는 CDN에서 콘텐츠를 가져오고, 디스크에 저장된 로컬 캐시를 시드하고, 콘텐츠를 클라이언트에 전달합니다.

  7. 콘텐츠에 대한 최종 사용자 디바이스의 후속 요청은 캐시에서 제공됩니다.

  8. MCC 노드를 사용할 수 없는 경우 클라이언트는 구독자에 대한 중단 없는 서비스를 보장하기 위해 CDN에서 콘텐츠를 가져옵니다.

MCC에 대한 ISP 요구 사항

인터넷 서비스 공급자용 Microsoft 연결된 캐시는 이제 공개 미리 보기로 제공됩니다! 시작하려면 Azure Portal 방문하여 인터넷 서비스 공급자용 Microsoft Connected Cache에 등록합니다. 등록 및 온보딩 요구 사항에 대한 자세한 내용은 Microsoft Connected Cache에 대한 운영자 등록 및 서비스 온보 딩을 참조하세요.

제대로 작동하는 MCC 서버 확인

클라이언트 쪽 확인

연결된 캐시 서버에 로그인하거나 SSH를 사용합니다. 터미널에서 다음 명령을 실행하여 실행 중인 모듈(컨테이너)을 확인합니다.

sudo iotedge list

실행 중인 컨테이너를 보여 주는 iotedge list 명령의 터미널 출력 스크린샷

edgeAgentedgeHub 컨테이너를 나열하지만 MCC를 포함하지 않는 경우 명령을 사용하여 IoT Edge 보안 관리자의 상태 확인합니다.

sudo journalctl -u iotedge -f

예를 들어 이 명령은 컨테이너의 시작 및 중지 또는 컨테이너 끌어오기 및 시작의 현재 상태 제공합니다.

iotedge에 대한 journalctl 명령의 터미널 출력입니다.

서버 쪽 확인

컨테이너를 배포하는 데 몇 분 정도 걸릴 수 있습니다.

제대로 작동하는 MCC의 유효성을 검사하려면 캐시 서버의 터미널 또는 네트워크의 모든 디바이스에서 다음 명령을 실행합니다. 을 캐시 서버의 IP 주소로 바꿉니다 <CacheServerIP> .

wget http://<CacheServerIP>/mscomtest/wuidt.gif?cacheHostOrigin=au.download.windowsupdate.com

다음 스크린샷은 성공적인 테스트 결과를 보여줍니다.

Microsoft Connected Cache의 유효성을 검사하는 wget 명령을 사용하여 성공적인 테스트 결과의 터미널 출력 스크린샷

마찬가지로 네트워크의 모든 디바이스에서 웹 브라우저에 다음 URL을 입력합니다.

http://<CacheServerIP>/mscomtest/wuidt.gif?cacheHostOrigin=au.download.windowsupdate.com

테스트가 실패하는 경우 자세한 내용은 일반적인 문제 섹션을 참조하세요.

일반적인 문제

참고

이 섹션에서는 일반적인 문제만 나열합니다. IoT Edge 구성할 때 발생할 수 있는 추가 문제에 대한 자세한 내용은 IoT Edge 문제 해결 가이드를 참조하세요.

다음 명령을 사용하여 IoT Edge 저널을 검사.

sudo journalctl -u iotedge -f

DNS를 구성해야 합니다.

다음 IoT Edge 설치 상태 검사 실행합니다.

sudo iotedge check --verbose

포트 5671, 443 및 8883에 문제가 표시되면 IoT Edge 디바이스에서 Docker용 DNS를 업데이트해야 합니다.

DNS에서 작동하도록 디바이스를 구성하려면 다음 단계를 사용합니다.

  1. 를 사용하여 ifconfig 적절한 NIC 어댑터 이름을 찾습니다.

    ifconfig
    
  2. 를 실행 nmcli device show <network adapter name> 하여 이더넷 어댑터의 DNS 이름을 표시합니다. 예를 들어 eno1에 대한 DNS 정보를 표시하려면 다음을 수행합니다.

    nmcli device show eno1 
    

    네트워크 어댑터 정보를 표시하는 nmcli 명령의 샘플 출력 스크린샷

  3. DNS 서버를 구성하는 데 사용되는 Docker 구성 파일을 열거나 만듭니다.

    sudo nano /etc/docker/daemon.json
    
  4. 다음 문자열을 daemon.json 파일에 붙여넣고 적절한 DNS 서버 주소를 포함합니다. 예를 들어 이전 스크린샷 IP4.DNS[1] 에서 은 입니다 10.50.10.50.

    { "dns": ["x.x.x.x"]}
    
  5. 변경 내용을 daemon.json 저장합니다. 이 파일에 대한 권한을 변경해야 하는 경우 다음 명령을 사용합니다.

    sudo chmod 555 /etc/docker/daemon.json
    
  6. Docker를 다시 시작하여 새 DNS 설정을 선택합니다. 그런 다음 IoT Edge 다시 시작합니다.

    sudo systemctl restart docker
    sudo systemctl daemon-reload
    sudo restart IoTEdge
    

MCC를 공개 미리 보기로 마이그레이션

참고

서버를 다시 부팅하면 현재 사용 중인 버전이 더 이상 작동하지 않으며 그 후에는 새 버전으로 마이그레이션해야 합니다.

이러한 혜택에 액세스하고 가동 중지 시간을 보장하려면 지금 새 버전으로 마이그레이션하는 것이 좋습니다.

마이그레이션하려면 다음 단계를 사용합니다.

  1. 마이그레이션하려는 캐시 노드로 이동하고 페이지 맨 위에 있는 단추를 사용하여 마이그레이션 패키지 다운로드 를 선택합니다.
  2. Azure Portal 내의 연결된 캐시 마이그레이션 스크립트 섹션의 지침을 따릅니다. 캐시 노드를 초기 미리 보기에서 공개 미리 보기로 마이그레이션하기 위한 마이그레이션 지침을 보여 주는 Azure Portal 스크린샷
  3. https://portal.azure.com 이동하여 리소스로 이동하여 마이그레이션된 캐시 노드를 검사.

MCC 제거

설치 관리자 zip 파일에서 uninstallmcc.sh 파일을 찾을 수 있습니다. 이 스크립트는 MCC 및 모든 관련 구성 요소를 제거합니다. 이 스크립트를 실행하기 전에 MCC 팀에 문의하세요. MCC 설치에 문제가 있는 경우에만 실행합니다.

Warning

이 스크립트를 실행하기 전에 주의해야 합니다. 또한 이 VM의 기존 IoT 워크플로도 지워집니다.

uninstallmcc.sh 스크립트는 다음 구성 요소를 제거합니다.

  • IoT Edge
  • Edge 에이전트
  • Edge Hub
  • MCC
  • Moby CLI
  • Moby 엔진

스크립트를 실행하려면 다음 명령을 사용합니다.

sudo chmod +x uninstallmcc.sh
sudo ./uninstallmcc.sh

부록

Azure 구독 ID를 가져오는 단계

  1. Azure Portal 로그인합니다.
  2. 구독을 선택합니다. 구독이 표시되지 않으면 검색 창에 구독을 입력합니다. 입력을 시작하면 입력에 따라 목록이 필터링됩니다.
  3. Azure 구독이 이미 있는 경우 5단계로 건너뜁니다. Azure 구독이 없는 경우 왼쪽 위에서 + 추가 를 선택합니다.
  4. 종량제 구독을 선택합니다. 신용 카드 정보를 입력하라는 메시지가 표시되지만 MCC 서비스 사용에 대한 요금은 청구되지 않습니다.
  5. 구독 페이지에서 현재 구독 에 대한 세부 정보를 찾을 수 있습니다. 구독 이름을 선택합니다.
  6. 구독 이름을 선택하면 개요 탭에서 구독 ID를 찾을 수 있습니다. 구독 ID 옆에 있는 클립보드로 복사 아이콘을 선택하여 값을 복사합니다.

가상 환경에서 MCC 성능

가상 환경에서 캐시 서버 송신은 약 1.1Gbps로 최고조에 달합니다. 가상 환경에서 송신을 최대화하려면 다음 두 설정을 변경하는 것이 중요합니다.

  1. 다음 세 위치에서 SR-IOV 를 사용하도록 설정합니다.

    • MCC VM의 BIOS
    • MCC VM의 네트워크 카드 속성
    • MCC VM의 하이퍼바이저

    Microsoft는 Microsoft Hyper-V 배포를 사용할 때 두 번 송신하도록 이러한 설정을 찾았습니다.

  2. 에너지 절약 대신 BIOS에서 "고성능"을 사용하도록 설정합니다. Microsoft는 이 설정이 Microsoft Hyper-V 배포에서 송신을 거의 두 배로 늘렸습니다.

다른 사용자에게 MCC를 관리할 수 있는 액세스 권한 부여

Azure 계정이 없더라도 더 많은 사용자에게 Microsoft Connected Cache를 관리할 수 있는 액세스 권한을 부여할 수 있습니다. 포털에서 첫 번째 캐시 노드를 만든 후에는 다른 사용자를 Microsoft Connected Cache 리소스 그룹 및 Microsoft Connected Cache 리소스의 소유자 로 추가할 수 있습니다.

다른 사용자를 소유자로 추가하는 방법에 대한 자세한 내용은 Azure Portal 사용하여 Azure 리소스에 대한 사용자 액세스 권한 부여를 참조하세요. MCC 리소스MCC 리소스 그룹 모두에 대해 이 작업을 수행해야 합니다.

Windows Server에서 VM 설정

기본적으로 Ubuntu 20.04 LTS를 실행하는 하드웨어를 사용하거나 Ubuntu VM을 실행할 수 있습니다. 다음 단계에서는 Hyper-V에서 VM을 설정하는 방법을 설명합니다.

  1. ISO를 다운로드합니다. Ubuntu Desktop 또는 Ubuntu Server를 사용할 수 있습니다.

  2. Hyper-V에서 새 가상 머신 마법사 를 시작합니다.

    Hyper-V 새 가상 머신 마법사의 시작하기 전에 페이지 스크린샷

  3. 이름을 지정하고 위치를 선택합니다.

    Hyper-V 새 가상 머신 마법사의 이름 및 위치 지정 페이지의 스크린샷.

  4. 2세대를 선택합니다. 이 설정은 나중에 변경할 수 없습니다.

    Hyper-V 새 가상 머신 마법사의 생성 지정 페이지의 스크린샷

  5. 시작 메모리를 지정합니다.

    Hyper-V 새 가상 머신 마법사의 메모리 할당 페이지의 스크린샷

  6. 네트워크 어댑터 연결을 선택합니다.

    Hyper-V 새 가상 머신 마법사의 네트워킹 구성 페이지의 스크린샷.

  7. 가상 하드 디스크 매개 변수를 설정합니다. OS 및 캐시될 콘텐츠에 충분한 공간을 지정해야 합니다. 예를 들어 1024 GB는 1테라바이트입니다.

    Hyper-V 새 가상 머신 마법사의 가상 하드 디스크 연결 페이지의 스크린샷.

  8. 부팅 가능한 이미지 파일에서 OS 설치를 선택하고 이전에 다운로드한 Ubuntu 20.04 LTS용 ISO로 이동합니다.

    Hyper-V 새 가상 머신 마법사의 설치 옵션 페이지 스크린샷

  9. 설정을 검토하고 마침 을 선택하여 Ubuntu VM을 만듭니다.

    Hyper-V에서 새 가상 머신 마법사를 완료하는 스크린샷

  10. Ubuntu VM을 시작하기 전에 보안 부팅 을 사용하지 않도록 설정하고 VM에 여러 코어를 할당합니다.

    1. Hyper-V 관리자에서 VM에 대한 설정을 엽니다.

      Hyper-V 관리자의 VM 설정 스크린샷

    2. 보안을 선택합니다. 보안 부팅 사용 옵션을 사용하지 않도록 설정합니다.

      Hyper-V 관리자의 VM 설정에서 보안 페이지의 스크린샷

    3. 프로세서를 선택합니다. 가상 프로세서 수를 늘입니다. 이 예제에서는 를 보여 12주지만 구성은 다를 수 있습니다.

      Hyper-V 관리자의 VM 설정에서 프로세서 페이지의 스크린샷.

  11. VM을 시작하고 Ubuntu 설치를 선택합니다.

    Ubuntu 설치가 선택된 GNU GRUB 화면의 스크린샷

  12. 기본 언어를 선택합니다.

    Ubuntu 설치의 언어 선택 페이지의 스크린샷.

  13. 업데이트 및 타사 하드웨어를 설치하는 옵션을 선택합니다. 예를 들어 업데이트를 다운로드하고 타사 소프트웨어 드라이버를 설치합니다.

  14. 디스크 지우기 를 선택하고 Ubuntu를 설치합니다. 이전 버전의 Ubuntu를 설치한 경우 Ubuntu 16.04를 지우고 설치하는 것이 좋습니다.

    디스크 지우기 및 Ubuntu 설치 옵션이 선택된 Ubuntu 설치 설치 유형 페이지의 스크린샷

    디스크에 변경 내용 작성에 대한 경고를 검토하고 계속을 선택합니다.

    Ubuntu 설치의 '디스크에 변경 내용 쓰기' 경고의 스크린샷

  15. 표준 시간대를 선택합니다.

    표준 시간대를 지정하는 Ubuntu 설치의 'Where are you page'의 스크린샷

  16. 키보드 레이아웃을 선택합니다.

    Ubuntu 설치의 키보드 레이아웃 페이지 스크린샷

  17. 이름, 컴퓨터 이름, 사용자 이름 및 강력한 암호를 지정합니다. 로그인할 암호 필요 옵션을 선택합니다.

    Linux에서는 모든 것이 대/소문자를 구분합니다.

    Ubuntu 설치의 'Who are you' 화면 스크린샷

  18. 설치를 완료하려면 지금 다시 시작을 선택합니다.

    Ubuntu 설치 완료, 지금 다시 시작 화면의 스크린샷

  19. 컴퓨터가 다시 시작되면 사용자 이름 및 암호로 로그인합니다.

    중요

    업그레이드를 사용할 수 있는 것으로 표시되면 업그레이드하지 않음을 선택합니다.

    업그레이드 안 됨이 선택된 Ubuntu 설치의 사용 가능한 업그레이드 프롬프트 스크린샷

이제 Ubuntu VM이 MCC를 설치할 준비가 되었습니다.

IoT Edge 런타임

Azure IoT Edge 런타임을 사용하면 IoT Edge 디바이스에서 사용자 지정 및 클라우드 논리를 사용할 수 있습니다. 런타임은 IoT Edge 디바이스에 배치되며 관리 및 통신 작업을 수행합니다. 런타임은 다음 함수를 수행합니다.

  • 디바이스에 워크로드(Docker 컨테이너)를 설치하고 업데이트합니다.
  • 디바이스에서 Azure IoT Edge 보안 표준을 유지 관리합니다.
  • IoT Edge 모듈(Docker 컨테이너)이 항상 실행되고 있는지 확인합니다.
  • 원격 모니터링을 위해 모듈(Docker 컨테이너) 상태를 클라우드에 보고합니다.
  • IoT Edge 디바이스와 클라우드 간의 통신을 관리합니다.

Azure IoT Edge 대한 자세한 내용은 Azure IoT Edge 설명서를 참조하세요.

Microsoft 연결된 캐시 개요

Microsoft 연결된 캐시 소개 중