sql >> Database >  >> NoSQL >> MongoDB

Databasegebruikersbeheer met ClusterControl

In de vorige berichten van deze blogreeks hebben we het gehad over de implementatie van clustering/replicatie (MySQL / Galera, MySQL Replication, MongoDB &PostgreSQL), beheer en monitoring van uw bestaande databases en clusters, prestatiebewaking en gezondheid, hoe u uw setup sterk kunt maken beschikbaar via HAProxy en MaxScale, hoe u zich kunt voorbereiden op rampen door back-ups te plannen, hoe u uw databaseconfiguraties beheert en in de laatste post hoe u uw logbestanden beheert.

Een van de belangrijkste aspecten om een ​​ClusterControl DBA te worden, is het kunnen delegeren van taken aan teamleden en de toegang tot ClusterControl-functionaliteit beheren. Dit kan worden bereikt door gebruik te maken van de User Management-functionaliteit, waarmee u kunt bepalen wie wat kan doen. U kunt zelfs een stap verder gaan door teams of organisaties toe te voegen aan ClusterControl en deze toe te wijzen aan uw DevOps-rollen.

Teams

Teams kunnen worden gezien als een volledige organisatie of als groepen gebruikers. Clusters kunnen worden toegewezen aan teams en op deze manier is het cluster alleen zichtbaar voor de gebruikers in het team waaraan het is toegewezen. Hierdoor run je meerdere teams of organisaties binnen één ClusterControl omgeving. Het is duidelijk dat de ClusterControl-beheerdersaccount nog steeds alle clusters kan zien en beheren.

U kunt een nieuw team maken via Zijmenu -> Gebruikersbeheer -> Teams en klikken op het plusteken aan de linkerkant onder het gedeelte Teams:

Nadat u een nieuw team heeft toegevoegd, kunt u gebruikers aan het team toewijzen.

Gebruikers

Nadat u het nieuw aangemaakte team heeft geselecteerd, kunt u nieuwe gebruikers aan dit team toevoegen door op het plusteken in de rechter dialoog te drukken:

Door de rol te selecteren, kunt u de functionaliteit van de gebruiker beperken tot een superbeheerder, beheerder of gebruiker. U kunt deze standaardrollen uitbreiden in het gedeelte Toegangscontrole.

Toegangscontrole

Standaardrollen

Binnen ClusterControl zijn de standaard rollen:Super Admin, Admin en Gebruiker. De superbeheerder is het enige account dat teams, gebruikers en rollen kan beheren. De superbeheerder kan ook clusters migreren tussen teams of organisaties. De beheerdersrol hoort bij een specifieke organisatie en kan alle clusters in deze organisatie zien. De gebruikersrol kan alleen de clusters zien die hij/zij heeft gemaakt.

Gebruikersrollen

U kunt nieuwe rollen toevoegen binnen het op rollen gebaseerde toegangscontrolescherm. U kunt per functionaliteit de privileges definiëren of de rol is toegestaan ​​(alleen-lezen), geweigerd (weigeren), beheren (wijziging toestaan) of wijzigen (uitgebreid beheer).

Als we een rol maken met beperkte toegang:

Zoals je kunt zien, kunnen we een gebruiker maken met beperkte toegangsrechten (meestal alleen-lezen) en ervoor zorgen dat deze gebruiker niets breekt. Dit betekent ook dat we hier niet-technische rollen zoals Manager kunnen toevoegen.

Merk op dat de rol van Superbeheerder hier niet wordt vermeld, omdat het een standaardrol is met het hoogste niveau van bevoegdheden binnen ClusterControl en dus niet kan worden gewijzigd.

LDAP-toegang

ClusterControl ondersteunt Active Directory, FreeIPA en LDAP-authenticatie. Hierdoor kunt u ClusterControl integreren binnen uw organisatie zonder dat u de gebruikers opnieuw hoeft aan te maken. In eerdere blogposts hebben we beschreven hoe u ClusterControl instelt om te authenticeren tegen OpenLDAP, FreeIPA en Active Directory.

Zodra dit is ingesteld, zal authenticatie tegen ClusterControl het onderstaande schema volgen:

In wezen is het belangrijkste onderdeel hier het toewijzen van de LDAP-groep aan de ClusterControl-rol. Dit kan vrij eenvoudig worden gedaan op de pagina LDAP-instellingen onder Gebruikersbeheer.

In het bovenstaande dialoogvenster wordt het DevopsTeam toegewezen aan de rol Beperkte gebruiker in ClusterControl. Herhaal dit vervolgens voor elke andere groep die u in kaart wilt brengen. Hierna wordt elke gebruiker die zich bij ClusterControl authenticeert, geauthenticeerd en geautoriseerd via de LDAP-integratie.

Laatste gedachten

Door al het bovenstaande te combineren kunt u ClusterControl beter integreren in uw bestaande organisatie, specifieke rollen creëren met beperkte of volledige toegang en gebruikers aan deze rollen koppelen. Het mooie hiervan is dat je nu veel flexibeler bent in hoe je je database-infrastructuur inricht:wie mag wat doen? U kunt bijvoorbeeld de taak van back-upcontrole overlaten aan een site-betrouwbaarheidstechnicus in plaats van dat de DBA ze dagelijks controleert. Sta uw ontwikkelaars toe om de MySQL-, Postgres- en MongoDB-logbestanden te controleren om ze te correleren met hun monitoring. U kunt ook een senior ontwikkelaar de database laten schalen door meer nodes/shards toe te voegen of een ervaren DevOps-engineer te laten schrijven met adviseurs.

Zoals je kunt zien, zijn de mogelijkheden hier eindeloos, het is alleen een kwestie van hoe je ze kunt ontgrendelen. In de Developer Studio-blogreeks duiken we dieper in automatisering met ClusterControl en voor DevOps-integratie hebben we onlangs CCBot uitgebracht.


  1. database converteren van mysql naar mongoDb

  2. tijdreeksen opslaan in redis

  3. Rate-Limit een API (lente MVC)

  4. Meerdere rijen in een door komma's gescheiden lijst in SQL krijgen