public async Task <IActionResult> CreateAsync([FromServices] ClusterService service, [FromBody] ClusterDTO ClusterDto)
        {
            try
            {
                var retornoNetwork = await service.CreateNetwork(ClusterDto.NomeCluster);

                var retornoSubnet = await service.CreateSubnet(retornoNetwork.Id, ClusterDto.NomeCluster);

                var retornoRouter = await service.CreateRouter(ClusterDto.NomeCluster);

                var retornoInterface = await service.AddRouterInterface(retornoSubnet.Id, retornoRouter.Id);

                var retorno = await service.CreateServer(ClusterDto.NomeCluster, ClusterDto.IdImage, ClusterDto.IdFlavor, retornoNetwork.Id);

                ClusterDto.IdServer  = retorno.Id;
                ClusterDto.IdNetwork = retornoNetwork.Id;

                var interfacePort = await service.GetAllServerInterfaces(retorno.Id);

                var floatingIp = await service.AssociateFloatingIp("78c9ed54-cca8-4f1b-837d-b15c185cce17", interfacePort[0].PortId);

                ClusterDto.FloatingIP  = floatingIp.FloatingIpAddress;
                ClusterDto.DataCriacao = DateTime.Now;
            }
            catch
            {
                return(null);
            }


            var mapped = Mapper.Map <Cluster>(ClusterDto);
            var result = service.Add <ClusterValidator>(mapped);

            return(new ObjectResult(result));
        }