Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从领事处注销kubernetes吊舱_C#_Kubernetes_Asp.net Core 3.1_Consul - Fatal编程技术网

C# 从领事处注销kubernetes吊舱

C# 从领事处注销kubernetes吊舱,c#,kubernetes,asp.net-core-3.1,consul,C#,Kubernetes,Asp.net Core 3.1,Consul,我正在使用IHostedService在k8s集群中注册我的POD。它运行得很好,但当我需要更新或扩展我的部署时,我会在Concur中看到僵尸吊舱 MyIHostedService实现了StopAsync,如下所示: public async Task StopAsync(CancellationToken cancellationToken) { _cts.Cancel(); _logger.LogInformation(&quo

我正在使用
IHostedService
在k8s集群中注册我的POD。它运行得很好,但当我需要更新或扩展我的部署时,我会在Concur中看到僵尸吊舱

My
IHostedService
实现了
StopAsync
,如下所示:

public async Task StopAsync(CancellationToken cancellationToken)
        {
            _cts.Cancel();
            _logger.LogInformation("De-registering from Consul");
            try
            {
                await _consulClient.Agent.ServiceDeregister(_registrationId, cancellationToken);
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, $"De-registration failed");
            }
        }
我还尝试注入
IHostApplicationLifetime
并注册
ApplicationStopping
,但这是相同的交易-除非我实际按下ctrl+c,否则这些函数永远不会被调用,这显然不是k8s内部发生的

每个人是如何注销他们的播客的


我用的是netcore 3.1

当你说僵尸豆荚时,你能解释一下吗?你能发布kubectl get pods的输出吗?在清理之前,一个终止的位置停留一段时间可能是正常的。所以说它们被缩放到零-豆荚被从k8s中移除,但领事仍然认为它们在那里-只是对运行状况没有响应-因为它们从未注销-因为从未调用StopAsync