Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add test to simulate client authentications using a pam tool #15

Merged
merged 2 commits into from
Dec 3, 2021

Conversation

rcritten
Copy link
Contributor

@rcritten rcritten commented Dec 1, 2021

Add test to simulate client authentications using a pam tool

The purpose of the test is to determine the maximum number of
authentications an IPA server is capable of. The general rule
of thumb has been 2-3000 clients per server. The intention of
this test is to back that up with numbers.

This is an IPA-centric test so only using IPA users and only
authenticating via SSSD using the PAM login service. A single
authentication for each user is done.

The basic idea is:

  • Deploy some client machines, trying to gate their installation
    so that all are successful
  • Create a bunch of users in IPA for each specific host in the form
    of user000client000.ipa.test
  • Set Kerberos and LDAP passwords for every user to 'password'
  • Run the pamtest tool with a number of threads and collect the
    result
  • Pull the logs and determine the success rate

This should scale both vertically (number of threads) and
horizontally (more clients) so hopefully we can get a reproducible
and relevant number.

Signed-off-by: Rob Crittenden rcritten@redhat.com

With many contributions from Antonio Torres antorres@redhat.com

The purpose of the test is to determine the maximum number of
authentications an IPA server is capable of. The general rule
of thumb has been 2-3000 clients per server. The intention of
this test is to back that up with numbers.

This is an IPA-centric test so only using IPA users and only
authenticating via SSSD using the PAM login service. A single
authentication for each user is done.

The basic idea is:

- Deploy some client machines, trying to gate their installation
  so that all are successful
- Create a bunch of users in IPA for each specific host in the form
  of user000client000.ipa.test
- Set Kerberos and LDAP passwords for every user to 'password'
- Run the pamtest tool with a number of threads and collect the
  result
- Pull the logs and determine the success rate

This should scale both vertically (number of threads) and
horizontally (more clients) so hopefully we can get a reproducible
and relevant number.

Signed-off-by: Rob Crittenden <rcritten@redhat.com>

With many contributions from Antonio Torres <antorres@redhat.com>
Add option to write to a log file which makes collection
a lot easier.

Log the PAM errors as both strings and numbers for easier
diagnosis.

Signed-off-by: Rob Crittenden <rcritten@redhat.com>
@antoniotorresm
Copy link
Collaborator

LGTM!

@antoniotorresm antoniotorresm merged commit 9a4d2ac into freeipa:master Dec 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants