<reponame>ederst/pulumi-kops<filename>sdk/dotnet/Outputs/ClusterKubelet.cs// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.Kops.Outputs
{

    [OutputType]
    public sealed class ClusterKubelet
    {
        public readonly bool? AllowPrivileged;
        public readonly ImmutableArray<string> AllowedUnsafeSysctls;
        public readonly Outputs.ClusterKubeletAnonymousAuth? AnonymousAuth;
        public readonly string? ApiServers;
        public readonly bool? AuthenticationTokenWebhook;
        public readonly string? AuthenticationTokenWebhookCacheTtl;
        public readonly string? AuthorizationMode;
        public readonly bool? BabysitDaemons;
        public readonly string? BootstrapKubeconfig;
        public readonly string? CgroupDriver;
        public readonly string? CgroupRoot;
        public readonly string? ClientCaFile;
        /// <summary>
        /// - cloud_provider_spec - CloudProvider configures the cloud provider to use.
        /// </summary>
        public readonly string? CloudProvider;
        public readonly string? ClusterDns;
        public readonly string? ClusterDomain;
        public readonly bool? ConfigureCbr0;
        public readonly int? ContainerLogMaxFiles;
        public readonly string? ContainerLogMaxSize;
        public readonly Outputs.ClusterKubeletCpuCfsQuota? CpuCfsQuota;
        public readonly string? CpuCfsQuotaPeriod;
        public readonly string? CpuManagerPolicy;
        public readonly bool? DockerDisableSharedPid;
        public readonly bool? EnableCadvisorJsonEndpoints;
        public readonly bool? EnableCustomMetrics;
        public readonly bool? EnableDebuggingHandlers;
        public readonly string? EnforceNodeAllocatable;
        public readonly int? EventBurst;
        public readonly int? EventQps;
        public readonly string? EvictionHard;
        public readonly int? EvictionMaxPodGracePeriod;
        public readonly string? EvictionMinimumReclaim;
        public readonly string? EvictionPressureTransitionPeriod;
        public readonly string? EvictionSoft;
        public readonly string? EvictionSoftGracePeriod;
        public readonly ImmutableArray<string> ExperimentalAllowedUnsafeSysctls;
        public readonly bool? FailSwapOn;
        public readonly ImmutableDictionary<string, string>? FeatureGates;
        public readonly string? HairpinMode;
        public readonly string? HostnameOverride;
        public readonly string? HousekeepingInterval;
        public readonly int? ImageGcHighThresholdPercent;
        public readonly int? ImageGcLowThresholdPercent;
        public readonly string? ImagePullProgressDeadline;
        public readonly bool? KernelMemcgNotification;
        public readonly ImmutableDictionary<string, string>? KubeReserved;
        public readonly string? KubeReservedCgroup;
        public readonly string? KubeconfigPath;
        public readonly string? KubeletCgroups;
        public readonly string? LogFormat;
        public readonly int? LogLevel;
        public readonly int? MaxPods;
        public readonly int? NetworkPluginMtu;
        public readonly string? NetworkPluginName;
        public readonly ImmutableDictionary<string, string>? NodeLabels;
        public readonly string? NodeStatusUpdateFrequency;
        /// <summary>
        /// - (Computed) - String - NonMasqueradeCIDR is the CIDR for the internal k8s network (on which pods &amp; services live)&lt;br /&gt;It cannot overlap ServiceClusterIPRange.
        /// </summary>
        public readonly string? NonMasqueradeCidr;
        public readonly int? NvidiaGpUs;
        /// <summary>
        /// - String - PodCIDR is the CIDR from which we allocate IPs for pods.
        /// </summary>
        public readonly string? PodCidr;
        public readonly string? PodInfraContainerImage;
        public readonly string? PodManifestPath;
        public readonly int? PodPidsLimit;
        public readonly bool? ProtectKernelDefaults;
        public readonly int? ReadOnlyPort;
        public readonly bool? ReconcileCidr;
        public readonly bool? RegisterNode;
        public readonly bool? RegisterSchedulable;
        public readonly int? RegistryBurst;
        public readonly int? RegistryPullQps;
        public readonly bool? RequireKubeconfig;
        public readonly string? ResolverConfig;
        public readonly string? RootDir;
        public readonly bool? RotateCertificates;
        public readonly string? RuntimeCgroups;
        public readonly string? RuntimeRequestTimeout;
        public readonly string? SeccompProfileRoot;
        public readonly bool? SerializeImagePulls;
        public readonly string? ShutdownGracePeriod;
        public readonly string? ShutdownGracePeriodCriticalPods;
        public readonly string? StreamingConnectionIdleTimeout;
        public readonly string? SystemCgroups;
        public readonly ImmutableDictionary<string, string>? SystemReserved;
        public readonly string? SystemReservedCgroup;
        public readonly ImmutableArray<string> Taints;
        public readonly string? TlsCertFile;
        public readonly ImmutableArray<string> TlsCipherSuites;
        public readonly string? TlsMinVersion;
        public readonly string? TlsPrivateKeyFile;
        public readonly string? TopologyManagerPolicy;
        public readonly string? VolumePluginDirectory;
        public readonly string? VolumeStatsAggPeriod;

        [OutputConstructor]
        private ClusterKubelet(
            bool? allowPrivileged,

            ImmutableArray<string> allowedUnsafeSysctls,

            Outputs.ClusterKubeletAnonymousAuth? anonymousAuth,

            string? apiServers,

            bool? authenticationTokenWebhook,

            string? authenticationTokenWebhookCacheTtl,

            string? authorizationMode,

            bool? babysitDaemons,

            string? bootstrapKubeconfig,

            string? cgroupDriver,

            string? cgroupRoot,

            string? clientCaFile,

            string? cloudProvider,

            string? clusterDns,

            string? clusterDomain,

            bool? configureCbr0,

            int? containerLogMaxFiles,

            string? containerLogMaxSize,

            Outputs.ClusterKubeletCpuCfsQuota? cpuCfsQuota,

            string? cpuCfsQuotaPeriod,

            string? cpuManagerPolicy,

            bool? dockerDisableSharedPid,

            bool? enableCadvisorJsonEndpoints,

            bool? enableCustomMetrics,

            bool? enableDebuggingHandlers,

            string? enforceNodeAllocatable,

            int? eventBurst,

            int? eventQps,

            string? evictionHard,

            int? evictionMaxPodGracePeriod,

            string? evictionMinimumReclaim,

            string? evictionPressureTransitionPeriod,

            string? evictionSoft,

            string? evictionSoftGracePeriod,

            ImmutableArray<string> experimentalAllowedUnsafeSysctls,

            bool? failSwapOn,

            ImmutableDictionary<string, string>? featureGates,

            string? hairpinMode,

            string? hostnameOverride,

            string? housekeepingInterval,

            int? imageGcHighThresholdPercent,

            int? imageGcLowThresholdPercent,

            string? imagePullProgressDeadline,

            bool? kernelMemcgNotification,

            ImmutableDictionary<string, string>? kubeReserved,

            string? kubeReservedCgroup,

            string? kubeconfigPath,

            string? kubeletCgroups,

            string? logFormat,

            int? logLevel,

            int? maxPods,

            int? networkPluginMtu,

            string? networkPluginName,

            ImmutableDictionary<string, string>? nodeLabels,

            string? nodeStatusUpdateFrequency,

            string? nonMasqueradeCidr,

            int? nvidiaGpUs,

            string? podCidr,

            string? podInfraContainerImage,

            string? podManifestPath,

            int? podPidsLimit,

            bool? protectKernelDefaults,

            int? readOnlyPort,

            bool? reconcileCidr,

            bool? registerNode,

            bool? registerSchedulable,

            int? registryBurst,

            int? registryPullQps,

            bool? requireKubeconfig,

            string? resolverConfig,

            string? rootDir,

            bool? rotateCertificates,

            string? runtimeCgroups,

            string? runtimeRequestTimeout,

            string? seccompProfileRoot,

            bool? serializeImagePulls,

            string? shutdownGracePeriod,

            string? shutdownGracePeriodCriticalPods,

            string? streamingConnectionIdleTimeout,

            string? systemCgroups,

            ImmutableDictionary<string, string>? systemReserved,

            string? systemReservedCgroup,

            ImmutableArray<string> taints,

            string? tlsCertFile,

            ImmutableArray<string> tlsCipherSuites,

            string? tlsMinVersion,

            string? tlsPrivateKeyFile,

            string? topologyManagerPolicy,

            string? volumePluginDirectory,

            string? volumeStatsAggPeriod)
        {
            AllowPrivileged = allowPrivileged;
            AllowedUnsafeSysctls = allowedUnsafeSysctls;
            AnonymousAuth = anonymousAuth;
            ApiServers = apiServers;
            AuthenticationTokenWebhook = authenticationTokenWebhook;
            AuthenticationTokenWebhookCacheTtl = authenticationTokenWebhookCacheTtl;
            AuthorizationMode = authorizationMode;
            BabysitDaemons = babysitDaemons;
            BootstrapKubeconfig = bootstrapKubeconfig;
            CgroupDriver = cgroupDriver;
            CgroupRoot = cgroupRoot;
            ClientCaFile = clientCaFile;
            CloudProvider = cloudProvider;
            ClusterDns = clusterDns;
            ClusterDomain = clusterDomain;
            ConfigureCbr0 = configureCbr0;
            ContainerLogMaxFiles = containerLogMaxFiles;
            ContainerLogMaxSize = containerLogMaxSize;
            CpuCfsQuota = cpuCfsQuota;
            CpuCfsQuotaPeriod = cpuCfsQuotaPeriod;
            CpuManagerPolicy = cpuManagerPolicy;
            DockerDisableSharedPid = dockerDisableSharedPid;
            EnableCadvisorJsonEndpoints = enableCadvisorJsonEndpoints;
            EnableCustomMetrics = enableCustomMetrics;
            EnableDebuggingHandlers = enableDebuggingHandlers;
            EnforceNodeAllocatable = enforceNodeAllocatable;
            EventBurst = eventBurst;
            EventQps = eventQps;
            EvictionHard = evictionHard;
            EvictionMaxPodGracePeriod = evictionMaxPodGracePeriod;
            EvictionMinimumReclaim = evictionMinimumReclaim;
            EvictionPressureTransitionPeriod = evictionPressureTransitionPeriod;
            EvictionSoft = evictionSoft;
            EvictionSoftGracePeriod = evictionSoftGracePeriod;
            ExperimentalAllowedUnsafeSysctls = experimentalAllowedUnsafeSysctls;
            FailSwapOn = failSwapOn;
            FeatureGates = featureGates;
            HairpinMode = hairpinMode;
            HostnameOverride = hostnameOverride;
            HousekeepingInterval = housekeepingInterval;
            ImageGcHighThresholdPercent = imageGcHighThresholdPercent;
            ImageGcLowThresholdPercent = imageGcLowThresholdPercent;
            ImagePullProgressDeadline = imagePullProgressDeadline;
            KernelMemcgNotification = kernelMemcgNotification;
            KubeReserved = kubeReserved;
            KubeReservedCgroup = kubeReservedCgroup;
            KubeconfigPath = kubeconfigPath;
            KubeletCgroups = kubeletCgroups;
            LogFormat = logFormat;
            LogLevel = logLevel;
            MaxPods = maxPods;
            NetworkPluginMtu = networkPluginMtu;
            NetworkPluginName = networkPluginName;
            NodeLabels = nodeLabels;
            NodeStatusUpdateFrequency = nodeStatusUpdateFrequency;
            NonMasqueradeCidr = nonMasqueradeCidr;
            NvidiaGpUs = nvidiaGpUs;
            PodCidr = podCidr;
            PodInfraContainerImage = podInfraContainerImage;
            PodManifestPath = podManifestPath;
            PodPidsLimit = podPidsLimit;
            ProtectKernelDefaults = protectKernelDefaults;
            ReadOnlyPort = readOnlyPort;
            ReconcileCidr = reconcileCidr;
            RegisterNode = registerNode;
            RegisterSchedulable = registerSchedulable;
            RegistryBurst = registryBurst;
            RegistryPullQps = registryPullQps;
            RequireKubeconfig = requireKubeconfig;
            ResolverConfig = resolverConfig;
            RootDir = rootDir;
            RotateCertificates = rotateCertificates;
            RuntimeCgroups = runtimeCgroups;
            RuntimeRequestTimeout = runtimeRequestTimeout;
            SeccompProfileRoot = seccompProfileRoot;
            SerializeImagePulls = serializeImagePulls;
            ShutdownGracePeriod = shutdownGracePeriod;
            ShutdownGracePeriodCriticalPods = shutdownGracePeriodCriticalPods;
            StreamingConnectionIdleTimeout = streamingConnectionIdleTimeout;
            SystemCgroups = systemCgroups;
            SystemReserved = systemReserved;
            SystemReservedCgroup = systemReservedCgroup;
            Taints = taints;
            TlsCertFile = tlsCertFile;
            TlsCipherSuites = tlsCipherSuites;
            TlsMinVersion = tlsMinVersion;
            TlsPrivateKeyFile = tlsPrivateKeyFile;
            TopologyManagerPolicy = topologyManagerPolicy;
            VolumePluginDirectory = volumePluginDirectory;
            VolumeStatsAggPeriod = volumeStatsAggPeriod;
        }
    }
}
