0

Azure Functions on Premises V2 (ランタイム) を使用しています。

毎分実行される単純な関数をテストし、ログに書き込もうとしています。

ただし、関数は実行されず、このエラーが発生しています。

Windowsサーバー2016を搭載した仮想マシンで実行されています(この問題の原因と思われるもの)。

私は Docker と Hyper-V を初めて使用します。

Hyper V と Docker が正常に動作しているかどうかを確認するために、実行できるコマンドがいくつかあります。

前もって感謝します。

これは私が取得しているログです。

2018 年 3 月 14 日 5:42:44 PM ようこそ、ログ ストリーミング サービスに接続されました。 /2018 5:41:49 PM [myteslaVM] コンテナー イメージをプルするazure-functions-runtime3/14/2018 5:41:50 PM [myteslaVM] ダイジェスト: sha256:dfdb47a7638d0cdd1a42c603e3e59311ee0d229222f88329a7c561fc3d8b2ff33/14/2018 5:41:50 PM ステータス: azre-functions の日付/azure-functions が実行されます。ランタイム:preview2-latest-nanoserver

2018 年 3 月 14 日 5:41:50 PM [myteslaVM] コンテナー イメージ azfuncrun/azure-functions-runtime:preview2-latest-nanoserver が正常にプルされました! 3/14/2018 5:41:50 PM [myteslaVM] Provisioning container MyContainerFuncApp_03/14/2018 5:41:51 PM [myteslaVM] f2788b6c9c5d6115bba891f463759dd0df75c2344e6c217b0280a8b9f686fb32 3/14/2018 5:41:51 PM [myteslaVM] C:\Program Files \Azure Functions Runtime\docker\docker.exe: デーモンからのエラー応答: コンテナー f2788b6c9c5d6115bba891f463759dd0df75c2344e6c217b0280a8b9f686fb32

encountered an error during CreateContainer: failure in a Windows system call: No hypervisor is present on this system. (0xc0351000) extra info: {"SystemType":"Container","Name":"f2788b6c9c5d6115bba891f463759dd0df75c2344e6c217b0280a8b9f686fb32","Owner":"docker","IgnoreFlushesDuringBoot":true,"LayerFolderPath":"C:\\Program Files\\Azure Functions Runtime\\docker\\windows\\windowsfilter\\f2788b6c9c5d6115bba891f463759dd0df75c2344e6c217b0280a8b9f686fb32","Layers":[{"ID":"951f96e7-ad8c-5e5c-8533-4f70d49a4e6a","Path":"C:\\Program Files\\Azure Functions

"HostName":"f2788b6c9c5d","MappedDirectories":[{"HostPath":"c:\windows\temp\fwas\mycontainerfuncapp","ContainerPath":"c:\home","ReadOnly":false,"BandwidthMaximum ":0,"IOPSMaximum":0,"CreateInUtilityVM":false}],"HvPartition":true,"EndpointList":["d6c4c527-5520-40f1-9c84-2f3d8a013900"],"HvRuntime":{"ImagePath" :"C:\Program Files\Azure Functions Runtime\docker\windows\windowsfilter\545c1be2ad30f1933a07de48e4ffe611900bacafbf4b717de969b56fb8a725d6\UtilityVM"},"AllowUnqualifiedDNSQuery":true}.

2018 年 3 月 14 日 5:41:51 PM [myteslaVM] コンテナーへの停止コマンドの発行: MyContainerFuncApp_

    03/14/2018 5:41:52 PM [myteslaVM] Error response from daemon: Cannot kill container: MyContainerFuncApp_0: No such container: MyContainerFuncApp_03/14/2018 5:41:52 PM [myteslaVM] Stop complete for container: MyContainerFuncApp_03/14/2018 5:41:52 PM [myteslaVM] ExecuteCommand called with C:\Program Files\Azure Functions Runtime\docker\docker.exe returned 125.3/14/2018 5:42:03 PM [myteslaVM]

    Function App 'MyContainerFuncApp' is starting...3/14/2018 5:42:04 PM [myteslaVM] Pull container image azfuncrun/azure-functions-runtime:preview2-latest-nanoserver3/14/2018 5:42:06 PM [myteslaVM] preview2-latest-nanoserver: Pulling from azfuncrun/azure-functions-runtime3/14/2018 5:42:06 PM [myteslaVM] Digest: sha256:dfdb47a7638d0cdd1a42c603e3e59311ee0d229222f88329a7c561fc3d8b2ff3

    3/14/2018 5:42:06 PM [myteslaVM] Status: Image is up to date for azfuncrun/azure-functions-runtime:preview2-latest-nanoserver3/14/2018 5:42:06 PM [myteslaVM] The container image azfuncrun/azure-functions-runtime:preview2-latest-nanoserver has been pulled successfully!3/14/2018 5:42:06 PM [myteslaVM] Provisioning container MyContainerFuncApp_13/14/2018 5:42:07 PM [myteslaVM] 10dfbab15acef64780c34d5d01ded776a10d074500b33ba916b032920404d1d13/14/2018 5:42:07 PM [myteslaVM] C:\Program Files\Azure Functions Runtime\docker\docker.exe: 
4

3 に答える 3

0

いくつかの調査の後、このエラーを解決するために次の手順を実行しました.

1.Windows Server 2016 の構成

https://app.pluralsight.com/player?course=installing-windows-server-2016&author=greg-shields&name=installing-windows-server-2016-m2&clip=5&mode=live

--Install Features and Roles.

2.Hyper-Vのインストール

https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/get-started/install-the-hyper-v-role-on-windows-server

To check Hyper-V installed, run this cmd let in Power Shell.
Get-WindowsFeature -ComputerName <computer_name>  

Get-WindowsFeature -ComputerName MyteslaVM

To Install Hyper-V
Add-WindowsFeature –name RSAT-Hyper-V-Tools

    https://social.technet.microsoft.com/Forums/windows/en-US/f750d5e3-69f8-4cbd-a7aa-98e2fd41c618/need-to-install-hyperv-management-tools-on-server-2012-vm?forum=winserverhyperv

3.Docker版を実行します。

4.Dockerd「Daemon」を実行します。

https://www.bountysource.com/issues/40602674-can-t-start-docker-service-on-windows-server-vm
dockerd --debug

Stop-service docker
Get-ContainerNetwork | Remove-ContainerNetwork -Force
Start-service docker

5. Get-VM | セット VMProcessor -ExposeVirtualizationExtensions $true

https://github.com/Azure/Azure-Functions/issues/359

6.Dockerのインストール

https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/quick-start-windows-server

Install-Module -Name DockerMsftProvider -RequiredVersion 1.0.0.3
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Install-Package -Name docker -ProviderName DockerMsftProvider

7.最新の azure-functions-core-tools をインストールします。

npm i -g azure-functions-core-tools@core

 Run npm i -g npm           **to update
  1. .NET Core 2.0 をインストールする

    https://www.microsoft.com/net/download/windows

9.ネストされた仮想化を有効にするには、Hyper-V ホストで次のコマンドレットを実行する必要があります。

Get-VM | Set-VMProcessor -ExposeVirtualizationExtensions $true

10.スクリプトの実行

https://github.com/moby/moby/issues/19685

11.azure-functions-runtime:2.0.0-nanoserver をダウンロードします。

docker pull microsoft/azure-functions-runtime:2.0.0-nanoserver-1709

12.Hyper-V コンポーネントの 1 つが実行されていません

https://social.technet.microsoft.com/Forums/en-US/b4d0761d-6048-4cb8-9a1f-1a2544b4ceb2/one-of-the-hyperv-components-is-not-running?forum=win10itprovirt

13.Windows ディフェンダーを無効にします。

https://www.windowscentral.com/how-permanently-disable-windows-defender-windows-10

于 2018-04-03T14:29:48.267 に答える