Monday, September 28, 2020

How to Configure AWS CLI for Ceph Object Gateway Storage

 How can I configure AWS s3 CLI for Ceph Storage?. The Ceph Object Gateway is an object storage interface built on top of librados to provide applications with a RESTful gateway to Ceph Storage Clusters. The Ceph Object Gateway daemon (radosgw) is an HTTP server for interacting with a Ceph Storage Cluster. It provides interfaces compatible with both OpenStack Swift and Amazon S3 and has embedded user management.


Ceph Object Storage has support for two interfaces.

  1. S3-compatible: Provides object storage functionality with an interface that is compatible with a large subset of the Amazon S3 RESTful API.
  2. Swift-compatible: Provides object storage functionality with an interface that is compatible with a large subset of the OpenStack Swift API.

In this guide, we’ll focus on configuring Amazon S3 CLI to work with Ceph Object Storage cluster. This will be helpful for automated personal backups and pushing your Server data & configurations to Ceph Object store.

Step 1: Install AWS CLI

We need to install the AWS CLI on the server or machine where access to Ceph Object Gateway will be done.

Follow our guide below to install AWS CLI:

Verify installation: $ aws --version


Step 2: Create Object Store User for S3 Access

A user should be created on the Ceph Object Store backend. This will generate S3 API credentials that we’ll configure AWS S3 CLI to use.

Run the commands in one of your Ceph cluster nodes with access to the cluster for administration.


Where:

  • cephuser is the name of the user to be created.
  • ceph S3User is the user display names

This is the sample output from the command.

Take note of the access_key and the secret_key.

Step 3: Using AWS CLI for Accessing Ceph Object Storage

Before you can start using AWS CLI tool to interact with AWS services, you need to configure it by running the aws configure command.
Paste the access key and Secret key you copied in previous step. The credentials are written to file ~/.aws/credentials.


Configuration file is located in ~/.aws/config.


You need to have the IP address of one of your Rados Gateway nodes or equivalent DNS name configured. Get a list of rgw servers using the command:


In my setup, I have three rgw servers. I’ll use one of them – servera.rgw0, whose URL is http://10.9.204.225:8080


The command will create a bucket called test. The creation can be confirmed using the command radosgw-admin.

You can list the buckets created with the command:

Copy a test file to the bucket:


Confirm if the file has been uploaded.



You can confirm the same from the Ceph Dashboard under Object Gateway > Buckets section.




Saturday, July 18, 2020

How To Create And Use TestNG.Xml File and different Test Suite Level TestNG xml files

What Is TestNG.Xml?

TestNG.xml file is a configuration file that helps in organizing our tests. It allows testers to create and handle multiple test classes, define test suites and tests.
It makes a tester's job easier by controlling the execution of tests by putting all the test cases together and run it under one XML file. This is a beautiful concept, without which, it is difficult to work in TestNG.
How to create TestNg.xml file 
Step1: Right-click on the Project folder, go to New and select ‘File’ as shown in the below image.
Step 2: Add the file name as ‘TestNG.xml’ as shown in the below image and click on the Finish button.


Step 3: Now you can add the below XML code in your testng.xml file. You can choose your Test suite name and the Test name as per the requirements.
TestNG XML file @ Method Level 
<suite name="Test cases execution @ Method Level">
<test name="Method Level Test Suites">
<classes>
<class name="com.testng.pages.TestNgSuite">
<methods>
<include name="method1" />
<include name="method2" />
<include name="method3" />
<include name="method4" />
<exclude name="divisiblebyZero" />
</methods>
</class>
<class name="com.testng.tests.RetryLogicTest">
<methods>
<include name="retryTestMethod" />
<exclude name="retryTestMethod1" />
</methods>
</class>
</classes>
</test>
</suite>

TestNG XML file @ Package Level 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="Test cases execution @  Package Level">
<test name="Package Level Test Suites">
<packages>
<!-- <package name = "com.testng.pages"/> -->
<package name="com.testng.tests" />
</packages>
</test>
</suite>
TestNG XML file @ Class Level 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="TestNG Suite">
<test name="Sample Test">
<classes> <!-- Test cases will execute within specified class -->
<class name="com.testng.pages.TestNgSuite" />
</classes>
</test>
</suite>
TestNG XML file @ Groups Level 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="Test cases execution @ Groups Level">
<test name="Groups Level Test Suites">
<groups>
<run>
<!-- <include name="smoke" /> -->
<include name="Testing Tools" />
</run>
</groups>
<classes>
<class name="com.testng.pages.TestNgSuite" />
</classes>
</test>
</suite>

Friday, July 17, 2020

How to Download & Install TestNG in Eclipse


TestNG is an open-source tool and is available with most of the IDEs as a plugin. To Install TestNG in eclipse follow below steps:
Step 1: Launch Eclipse.
Step 2: Click Help –> Install New Software.

Step 3: Click “Add” button in the below snapshot.
Step4: In Name field type “TestNG” and in Location field type https://dl.bintray.com/testng-team/testng-eclipse-release/6.14.3/ and Click OK.


Step 5:
  1. Select the "TestNG" checkbox
  2. Click on the "Next" button.
Step 6: It will give you a review of Items to be installed. Click on Next.
Step 7:
  1. Select the radio button "I accept the terms of the license agreement"
  2. Click on Finish.
Step 8: If you encounter a Security warning, just click "Install Anyway".
Step 9: Wait for the installation to finish. When Eclipse prompts you for a restart, click "Restart now."
Step 10: After the restart, verify if TestNG was indeed successfully installed. Click Window > Show View > Other.

Then open the Java directory and see if TestNG is included.


How to install and setup Kubernetes cluster using kOps in AWS environment

  Kops: Kops is also known as Kubernetes Operations, it is an open-source project which helps you to create, upgrade, destroy, and maintain ...