mirror of
https://github.com/kubernetes-sigs/node-feature-discovery.git
synced 2024-12-15 17:50:49 +00:00
Merge pull request #1632 from marquiz/devel/fix-nodefeatureapi-feature-gate
Remove references to -enable-nodefeature-api flag
This commit is contained in:
commit
869bb2044d
9 changed files with 36 additions and 30 deletions
|
@ -185,9 +185,9 @@ func initFlags(flagset *flag.FlagSet) (*master.Args, *master.ConfigOverrideArgs)
|
|||
"Comma separated list of labels to be exposed as extended resources. DEPRECATED: use NodeFeatureRule objects instead")
|
||||
flagset.Var(overrides.ResyncPeriod, "resync-period",
|
||||
"Specify the NFD API controller resync period."+
|
||||
"It has an effect when the NodeFeature API has been enabled (with -enable-nodefeature-api).")
|
||||
"It does not have effect when the NodeFeature API has been disabled (with -feature-gates NodeFeatureAPI=false).")
|
||||
overrides.NfdApiParallelism = flagset.Int("nfd-api-parallelism", 10, "Defines the maximum number of goroutines responsible of updating nodes. "+
|
||||
"Can be used for the throttling mechanism. It has effect only when -enable-nodefeature-api has been set.")
|
||||
"Can be used for the throttling mechanism. It does not have effect if NodeFeatureAPI feature gate is disabled.")
|
||||
|
||||
return args, overrides
|
||||
}
|
||||
|
|
|
@ -62,8 +62,6 @@ func main() {
|
|||
// Check deprecated flags
|
||||
flags.Visit(func(f *flag.Flag) {
|
||||
switch f.Name {
|
||||
case "enable-nodefeature-api":
|
||||
klog.InfoS("-enable-nodefeature-api is deprecated, will be removed in a future release along with the deprecated gRPC API")
|
||||
case "ca-file":
|
||||
klog.InfoS("-ca-file is deprecated, will be removed in a future release along with the deprecated gRPC API")
|
||||
case "cert-file":
|
||||
|
|
|
@ -16,9 +16,9 @@ sort: 5
|
|||
---
|
||||
|
||||
> **DEPRECATED**: this section only applies when the gRPC API is used, i.e.
|
||||
> when the NodeFeature API is disabled via the `-enable-nodefeature-api=false`
|
||||
> flag on both nfd-master and nfd-worker. The gRPC API is deprecated and will
|
||||
> be removed in a future release.
|
||||
> when the NodeFeature API is disabled (via the `-feature-gates
|
||||
> NodeFeatureAPI=false` flag) on both nfd-master and nfd-worker. The gRPC API
|
||||
> is deprecated and will be removed in a future release.
|
||||
|
||||
NFD supports mutual TLS authentication between the nfd-master and nfd-worker
|
||||
instances. That is, nfd-worker and nfd-master both verify that the other end
|
||||
|
|
|
@ -175,8 +175,8 @@ e2e-tests:
|
|||
|
||||
> ****DEPRECATED**: Running NFD locally is deprecated and will be removed in a
|
||||
> future release. It depends on the gRPC API which is deprecated and will be
|
||||
> removed in a future release. To run NFD locally, use the
|
||||
> `-enable-nodefeature-api=false` flag.
|
||||
> removed in a future release. To run NFD locally, disable the NodeFeature API
|
||||
> with `-feature-gates NodeFeatureAPI=false` flag.
|
||||
|
||||
You can run NFD locally, either directly on your host OS or in containers for
|
||||
testing and development purposes. This may be useful e.g. for checking
|
||||
|
@ -186,12 +186,12 @@ features-detection.
|
|||
|
||||
When running as a standalone container labeling is expected to fail because
|
||||
Kubernetes API is not available. Thus, it is recommended to use `-no-publish`
|
||||
Also specify `-crd-controller=false` and `-enable-nodefeature-api=false`
|
||||
Also specify `-crd-controller=false` and `-feature-gates NodeFeatureAPI=false`
|
||||
command line flags to disable CRD controller and enable gRPC. E.g.
|
||||
|
||||
```bash
|
||||
$ export NFD_CONTAINER_IMAGE={{ site.container_image }}
|
||||
$ docker run --rm --name=nfd-test ${NFD_CONTAINER_IMAGE} nfd-master -no-publish -crd-controller=false -enable-nodefeature-api=false
|
||||
$ docker run --rm --name=nfd-test ${NFD_CONTAINER_IMAGE} nfd-master -no-publish -crd-controller=false -feature-gates NodeFeatureAPI=false
|
||||
2019/02/01 14:48:21 Node Feature Discovery Master <NFD_VERSION>
|
||||
2019/02/01 14:48:21 gRPC server serving on port: 8080
|
||||
```
|
||||
|
@ -202,7 +202,7 @@ To run nfd-worker as a "stand-alone" container you need to run it in the same
|
|||
network namespace as the nfd-master container:
|
||||
|
||||
```bash
|
||||
$ docker run --rm --network=container:nfd-test ${NFD_CONTAINER_IMAGE} nfd-worker -enable-nodefeature-api=false
|
||||
$ docker run --rm --network=container:nfd-test ${NFD_CONTAINER_IMAGE} nfd-worker -feature-gates NodeFeatureAPI=false
|
||||
2019/02/01 14:48:56 Node Feature Discovery Worker <NFD_VERSION>
|
||||
...
|
||||
```
|
||||
|
|
|
@ -181,12 +181,13 @@ The `-enable-leader-election` flag enables leader election for NFD-Master.
|
|||
It is advised to turn on this flag when running more than one instance of
|
||||
NFD-Master.
|
||||
|
||||
This flag takes effect only when combined with `-enable-nodefeature-api` flag.
|
||||
Does not have effect if the [NodeFeatureAPI](feature-gates.md#nodefeatureapi)
|
||||
feature gate is disabled.
|
||||
|
||||
Default: false
|
||||
|
||||
```bash
|
||||
nfd-master -enable-nodefeature-api -enable-leader-election
|
||||
nfd-master -enable-leader-election
|
||||
```
|
||||
|
||||
### -enable-taints
|
||||
|
@ -346,7 +347,8 @@ nfd-master -options='{"noPublish": true}'
|
|||
The `-nfd-api-parallelism` flag can be used to specify the maximum
|
||||
number of concurrent node updates.
|
||||
|
||||
It takes effect only when `-enable-nodefeature-api` has been set.
|
||||
Does not have effect if the [NodeFeatureAPI](feature-gates.md#nodefeatureapi)
|
||||
feature gate is disabled.
|
||||
|
||||
Default: 10
|
||||
|
||||
|
@ -440,8 +442,9 @@ The `-resync-period` flag specifies the NFD API controller resync period.
|
|||
The resync means nfd-master replaying all NodeFeature and NodeFeatureRule objects,
|
||||
thus effectively re-syncing all nodes in the cluster (i.e. ensuring labels, annotations,
|
||||
extended resources and taints are in place).
|
||||
Only has effect when the [NodeFeature](../usage/custom-resources.md#nodefeature)
|
||||
CRD API has been enabled with [`-enable-nodefeature-api`](master-commandline-reference.md#-enable-nodefeature-api).
|
||||
|
||||
Does not have effect if the [NodeFeatureAPI](feature-gates.md#nodefeatureapi)
|
||||
feature gate is disabled.
|
||||
|
||||
Default: 1 hour.
|
||||
|
||||
|
|
|
@ -152,8 +152,9 @@ The `resyncPeriod` option specifies the NFD API controller resync period.
|
|||
The resync means nfd-master replaying all NodeFeature and NodeFeatureRule objects,
|
||||
thus effectively re-syncing all nodes in the cluster (i.e. ensuring labels, annotations,
|
||||
extended resources and taints are in place).
|
||||
Only has effect when the [NodeFeature](../usage/custom-resources.md#nodefeature)
|
||||
CRD API has been enabled with [`-enable-nodefeature-api`](master-commandline-reference.md#-enable-nodefeature-api).
|
||||
|
||||
Does not have effect if the [NodeFeatureAPI](feature-gates.md#nodefeatureapi)
|
||||
feature gate is disabled.
|
||||
|
||||
Default: 1 hour.
|
||||
|
||||
|
@ -227,7 +228,8 @@ leaderElection:
|
|||
The `nfdApiParallelism` option can be used to specify the maximum
|
||||
number of concurrent node updates.
|
||||
|
||||
It takes effect only when `-enable-nodefeature-api` has been set.
|
||||
Does not have effect if the [NodeFeatureAPI](feature-gates.md#nodefeatureapi)
|
||||
feature gate is disabled.
|
||||
|
||||
Default: 10
|
||||
|
||||
|
|
|
@ -149,11 +149,12 @@ nfd-worker -key-file=/opt/nfd/worker.key -cert-file=/opt/nfd/worker.crt -ca-file
|
|||
### -kubeconfig
|
||||
|
||||
The `-kubeconfig` flag specifies the kubeconfig to use for connecting to the
|
||||
Kubernetes API server. It is only needed for manipulating
|
||||
[NodeFeature](../usage/custom-resources.md#nodefeature) objects, and thus the flag
|
||||
only takes effect when
|
||||
[`-enable-nodefeature-api`](#-enable-nodefeature-api)) is specified. An empty
|
||||
value (which is also the default) implies in-cluster kubeconfig.
|
||||
Kubernetes API server. It is needed for manipulating
|
||||
[NodeFeature](../usage/custom-resources.md#nodefeature) objects. An empty value
|
||||
(which is also the default) implies in-cluster kubeconfig.
|
||||
|
||||
Does not have effect if the [NodeFeatureAPI](feature-gates.md#nodefeatureapi)
|
||||
feature gate is disabled.
|
||||
|
||||
Default: *empty*
|
||||
|
||||
|
|
|
@ -41,10 +41,12 @@ Note that RBAC rules must be created for each extension for them to be able to
|
|||
create and manipulate NodeFeature objects in their namespace.
|
||||
|
||||
The NodeFeature CRD API can be disabled with the
|
||||
`-enable-nodefeature-api=false` command line flag. This flag must be specified
|
||||
for both nfd-master and nfd-worker as it will enable the gRPC communication
|
||||
between them. Note that the gRPC API is **DEPRECATED** and will be removed in a
|
||||
future release, at which point the NodeFeature API cannot be disabled.
|
||||
[NodeFeatureAPI](../reference/feature-gates.md#nodefeatureapi) feature gate
|
||||
(`-feature-gates NodeFeatureAPI=false` on command line). The `-feature-gates`
|
||||
command line flag must be specified for both nfd-master and nfd-worker as it
|
||||
will enable the gRPC communication between them. Note that the gRPC API is
|
||||
**DEPRECATED** and will be removed in a future release, at which point the
|
||||
NodeFeature API cannot be disabled.
|
||||
|
||||
### A NodeFeature example
|
||||
|
||||
|
|
|
@ -190,7 +190,7 @@ var _ = NFDDescribe(Label("nfd-master"), func() {
|
|||
nfdTestSuite := func(useNodeFeatureApi bool) {
|
||||
createPodSpecOpts := func(opts ...testpod.SpecOption) []testpod.SpecOption {
|
||||
if !useNodeFeatureApi {
|
||||
return append(opts, testpod.SpecWithContainerExtraArgs("-enable-nodefeature-api=false"))
|
||||
return append(opts, testpod.SpecWithContainerExtraArgs("-feature-gates", "NodeFeatureAPI=false"))
|
||||
}
|
||||
return opts
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue