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

RHCEPHQE-17760: [IO Tool Integration] - Including postgresIO on FUSE #4419

Merged
merged 6 commits into from
Feb 5, 2025

Conversation

Manimaran-MM
Copy link
Contributor

@Manimaran-MM Manimaran-MM commented Feb 4, 2025

Description

This PR is enhancement of #4406

Changes from Previous PR

  • Simplified postgresql deployment

Steps to configure PostgresIO (from client node):

  1. Create a directory for PostgreSQL data on Client node under the mounted directory
  2. sudo mkdir -p /mnt/mani_fs_1/postgres_data
  3. Provide postgres user access to the folder
  4. chown -R postgres:postgres /mnt/mani_fs_1/postgres_data
  5. chmod 700 /mnt/mani_fs_1/postgres_data
  6. Run postgresql as a container with mount point as the data directory
    podman run -d --name postgres
    -e POSTGRESQL_USER=pguser
    -e POSTGRESQL_PASSWORD=pgpassword
    -e POSTGRESQL_DATABASE=pgbench
    -v /mnt/mani_fs_1/postgres_data:/var/lib/pgsql/data
    -p 5432:5432
    registry.redhat.io/rhel8/postgresql-13
  7. podman exec -it postgres bash -c "pgbench -i -U pguser -d pgbench"
  8. podman exec -it postgres bash -c "pgbench -c 10 -j 2 -T 60 -U pguser -d pgbench"

Code Changes - Summary

  • tests/cephfs/cephfs_IO_lib.py
    • Deploy postgresql as a container using podman
    • Include function to handle cleanup
    • Migrate existing dbench and postgresIO function to this function
  • tests/cephfs/cephfs_utilsV1.py
    • Handle Postgres IO and dbench function in the new fucntion(as above)
  • tests/cephfs/cephfs_vol_management/cephfs_vol_mgmt_fs_create_delete_loop.py
    • Include new subvolume
    • Add logic for PostgresIO using FUSE mount
    • Handle cleanup

Pass Logs:

click to expand checklist
  • Create a test case in Polarion reviewed and approved.
  • Create a design/automation approach doc. Optional for tests with similar tests already automated.
  • Review the automation design
  • Implement the test script and perform test runs
  • Submit PR for code review and approve
  • Update Polarion Test with Automation script details and update automation fields
  • If automation is part of Close loop, update BZ flag qe-test_coverage “+” and link Polarion test

Signed-off-by: Manimaran M <[email protected]>
Signed-off-by: Manimaran M <[email protected]>
Signed-off-by: Manimaran M <[email protected]>
@openshift-ci-robot
Copy link

openshift-ci-robot commented Feb 4, 2025

@Manimaran-MM: This pull request references RHCEPHQE-17760 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "odf-4.18" version, but no target version was set.

In response to this:

Description

This PR is enhancement of #4406

Changes from Previous PR

  • Simplified postgresql deployment

Steps to configure PostgresIO (from client node):

  1. Create a directory for PostgreSQL data on Client node under the mounted directory
  2. sudo mkdir -p /mnt/mani_fs_1/postgres_data
  3. Provide postgres user access to the folder
  4. chown -R postgres:postgres /mnt/mani_fs_1/postgres_data
  5. chmod 700 /mnt/mani_fs_1/postgres_data
  6. Run postgresql as a container with mount point as the data directory
    podman run -d --name postgres
    -e POSTGRESQL_USER=pguser
    -e POSTGRESQL_PASSWORD=pgpassword
    -e POSTGRESQL_DATABASE=pgbench
    -v /mnt/mani_fs_1/postgres_data:/var/lib/pgsql/data
    -p 5432:5432
    registry.redhat.io/rhel8/postgresql-13
  7. podman exec -it postgres bash -c "pgbench -i -U pguser -d pgbench"
  8. podman exec -it postgres bash -c "pgbench -c 10 -j 2 -T 60 -U pguser -d pgbench"

Code Changes - Summary

  • tests/cephfs/cephfs_utilsV1.py
    • Deploy postgresql as a container using podman
    • Include function to handle cleanup
  • tests/cephfs/cephfs_vol_management/cephfs_vol_mgmt_fs_create_delete_loop.py
    • Include new subvolume
    • Add logic for PostgresIO using FUSE mount
    • Handle cleanup

Pass Logs:

click to expand checklist
  • Create a test case in Polarion reviewed and approved.
  • Create a design/automation approach doc. Optional for tests with similar tests already automated.
  • Review the automation design
  • Implement the test script and perform test runs
  • Submit PR for code review and approve
  • Update Polarion Test with Automation script details and update automation fields
  • If automation is part of Close loop, update BZ flag qe-test_coverage “+” and link Polarion test

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Signed-off-by: Manimaran M <[email protected]>
@openshift-ci-robot
Copy link

openshift-ci-robot commented Feb 4, 2025

@Manimaran-MM: This pull request references RHCEPHQE-17760 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "odf-4.18" version, but no target version was set.

In response to this:

Description

This PR is enhancement of #4406

Changes from Previous PR

  • Simplified postgresql deployment

Steps to configure PostgresIO (from client node):

  1. Create a directory for PostgreSQL data on Client node under the mounted directory
  2. sudo mkdir -p /mnt/mani_fs_1/postgres_data
  3. Provide postgres user access to the folder
  4. chown -R postgres:postgres /mnt/mani_fs_1/postgres_data
  5. chmod 700 /mnt/mani_fs_1/postgres_data
  6. Run postgresql as a container with mount point as the data directory
    podman run -d --name postgres
    -e POSTGRESQL_USER=pguser
    -e POSTGRESQL_PASSWORD=pgpassword
    -e POSTGRESQL_DATABASE=pgbench
    -v /mnt/mani_fs_1/postgres_data:/var/lib/pgsql/data
    -p 5432:5432
    registry.redhat.io/rhel8/postgresql-13
  7. podman exec -it postgres bash -c "pgbench -i -U pguser -d pgbench"
  8. podman exec -it postgres bash -c "pgbench -c 10 -j 2 -T 60 -U pguser -d pgbench"

Code Changes - Summary

  • tests/cephfs/cephfs_IO_lib.py
    • Deploy postgresql as a container using podman
    • Include function to handle cleanup
    • Migrate existing dbench and postgresIO function to this function
  • tests/cephfs/cephfs_utilsV1.py
    • Handle Postgres IO and dbench function in the new fucntion(as above)
  • tests/cephfs/cephfs_vol_management/cephfs_vol_mgmt_fs_create_delete_loop.py
    • Include new subvolume
    • Add logic for PostgresIO using FUSE mount
    • Handle cleanup

Pass Logs:

click to expand checklist
  • Create a test case in Polarion reviewed and approved.
  • Create a design/automation approach doc. Optional for tests with similar tests already automated.
  • Review the automation design
  • Implement the test script and perform test runs
  • Submit PR for code review and approve
  • Update Polarion Test with Automation script details and update automation fields
  • If automation is part of Close loop, update BZ flag qe-test_coverage “+” and link Polarion test

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Signed-off-by: Manimaran M <[email protected]>
@Manimaran-MM Manimaran-MM requested a review from sumabai February 4, 2025 12:05
tests/cephfs/cephfs_IO_lib.py Outdated Show resolved Hide resolved
tests/cephfs/cephfs_IO_lib.py Outdated Show resolved Hide resolved
Signed-off-by: Manimaran M <[email protected]>
@openshift-ci-robot
Copy link

openshift-ci-robot commented Feb 5, 2025

@Manimaran-MM: This pull request references RHCEPHQE-17760 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "odf-4.18" version, but no target version was set.

In response to this:

Description

This PR is enhancement of #4406

Changes from Previous PR

  • Simplified postgresql deployment

Steps to configure PostgresIO (from client node):

  1. Create a directory for PostgreSQL data on Client node under the mounted directory
  2. sudo mkdir -p /mnt/mani_fs_1/postgres_data
  3. Provide postgres user access to the folder
  4. chown -R postgres:postgres /mnt/mani_fs_1/postgres_data
  5. chmod 700 /mnt/mani_fs_1/postgres_data
  6. Run postgresql as a container with mount point as the data directory
    podman run -d --name postgres
    -e POSTGRESQL_USER=pguser
    -e POSTGRESQL_PASSWORD=pgpassword
    -e POSTGRESQL_DATABASE=pgbench
    -v /mnt/mani_fs_1/postgres_data:/var/lib/pgsql/data
    -p 5432:5432
    registry.redhat.io/rhel8/postgresql-13
  7. podman exec -it postgres bash -c "pgbench -i -U pguser -d pgbench"
  8. podman exec -it postgres bash -c "pgbench -c 10 -j 2 -T 60 -U pguser -d pgbench"

Code Changes - Summary

  • tests/cephfs/cephfs_IO_lib.py
    • Deploy postgresql as a container using podman
    • Include function to handle cleanup
    • Migrate existing dbench and postgresIO function to this function
  • tests/cephfs/cephfs_utilsV1.py
    • Handle Postgres IO and dbench function in the new fucntion(as above)
  • tests/cephfs/cephfs_vol_management/cephfs_vol_mgmt_fs_create_delete_loop.py
    • Include new subvolume
    • Add logic for PostgresIO using FUSE mount
    • Handle cleanup

Pass Logs:

click to expand checklist
  • Create a test case in Polarion reviewed and approved.
  • Create a design/automation approach doc. Optional for tests with similar tests already automated.
  • Review the automation design
  • Implement the test script and perform test runs
  • Submit PR for code review and approve
  • Update Polarion Test with Automation script details and update automation fields
  • If automation is part of Close loop, update BZ flag qe-test_coverage “+” and link Polarion test

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Copy link
Contributor

@AmarnatReddy AmarnatReddy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@openshift-ci openshift-ci bot added the lgtm Add this label when the PR is good to be merged label Feb 5, 2025
Copy link
Contributor

openshift-ci bot commented Feb 5, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: AmarnatReddy, Manimaran-MM

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@mergify mergify bot merged commit ae0e218 into red-hat-storage:main Feb 5, 2025
5 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lgtm Add this label when the PR is good to be merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants