Privileged ServiceAccounts without rackAwarness enabled
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 72/100
Piste de recherche
Start with hdfs_clusterrolebinding_nodes_controller.rs, where HdfsCluster ServiceAccounts are added to hdfs-clusterrolebinding-nodes, and review the spec.clusterConfig.rackAwareness checks used around core_site.rs. Update the reflector to watch full HdfsCluster objects with DeserializeGuard so invalid clusters do not block reconciliation. The change is done when only rack-awareness-enabled clusters appear as subjects, while existing bindings and unrelated cluster reconciliation remain correct; run the repository's relevant Rust tests if present.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Affected Stackable version
25.7.0, 25.11.0, 26.3.0 and 26.7.0
Affected Apache HDFS version
all
Current and expected behavior
Current
hdfs-operator maintains a single ClusterRoleBinding hdfs-clusterrolebinding-nodes to the ClusterRole hdfs-clusterrole-nodes, which grants cluster-wide get/list/watch on pods, nodes and endpoints (plus listeners and CRDs). It exists for the rack awareness topology provider.
The operator adds the ServiceAccount of every HdfsCluster as a subject, whether or not rackAwareness is set. The topology provider is only configured when rackAwareness is set (core_site.rs), so clusters without it get these rights without using them.
Expected
A HdfsCluster's ServiceAccount is only a subject of hdfs-clusterrolebinding-nodes when that cluster sets rackAwareness.
Fix
In hdfs_clusterrolebinding_nodes_controller.rs, only add clusters with spec.clusterConfig.rackAwareness set. The reflector currently watches PartialObjectMeta (no spec), so it needs to watch full objects, using DeserializeGuard so one broken HdfsCluster doesn't block the binding for all of them.
Out of scope: the ServiceAccount is shared by all roles, but only the NameNode runs the topology provider.
Possible solution
No response
Additional context
No response
Environment
No response
Would you like to work on fixing this bug?
No response
- Langage dominant
- Rust
- Étoiles
- 53
- Forks
- 10
- Merge moyen
- 21 h 32 min
- PR mergées (30 j)
- 10
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Aucun guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de stackabletech/hdfs-operator
-
Difficulté 3/5 1-2 jours Accessibilité débutants 61/100
stackabletech/hdfs-operator#853 ·
Les mainteneurs répondent en général sous 1 jour
-
Topology Provider permissions briefly dropped during reconciliation when the reflector watch resetsOuvertetype/bug
Difficulté 4/5 3-5 jours Accessibilité débutants 42/100
stackabletech/hdfs-operator#774 ·
Les mainteneurs répondent en général sous 1 jour
-
type/bug
Difficulté 3/5 1-2 jours Accessibilité débutants 58/100
stackabletech/hdfs-operator#773 ·
Les mainteneurs répondent en général sous 1 jour
-
Re-enable restart-controllerOuvertetype/internal-debt
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 15/100
stackabletech/hdfs-operator#769 ·
Les mainteneurs répondent en général sous 1 jour
-
type/bug
Difficulté 3/5 1-2 jours Accessibilité débutants 52/100
stackabletech/hdfs-operator#763 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de stackabletech/hdfs-operator
Issues similaires
-
Panic on live viewport resize when unstyled elements exist in display: none subtreePeut-être pris @GoCoder7 l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
DioxusLabs/blitz#1488 ·
Les mainteneurs répondent en général sous 1 jour
-
🏷️ good first issue enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
Les mainteneurs répondent en général sous 1 jour
-
S-Needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
vectordotdev/vrl#2042 ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour