Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

This page is an overview of what you need to do to onboard your CI/CD systems and tools and maintain a single pane of solution on Opsera.

Before you begin

Checklist

At a high level, you must do the following:

  1. Gather the below information:

    1. output.logstash file location

    2. filebeat.yml location

  2. Signup at opsera.io

  3. Review the pricing options and select a pricing model. We recommend deciding on a pricing model and submitting it for processing before proceeding with the next steps. Pricing models might take up to 7 Days to process. You can continue setting up your VM solution while the pricing model is being processed.

  4. Test your solution end-to-end.

  5. If you want to include support, integrate your support.

  6. Submit your solution to Opsera. After you submit your solution, the Partner Engineering team reviews your submission and works with you to resolve any issues before approving it. When the solution is approved, it is launched within a few minutes.

  7. Maintain and monitor your solution after it has launched.

If you have questions during the onboarding process, contact your Opsera Cloud Partner Engineer. If you don't know who your assigned Partner Engineer is, contact us at cloud-partner-onboarding@google.com.

Begin Integration Process

Opsera offers two solutions as part of the integration process.

  1. Solution - 1

    1. Customers who already have tools running in their own Instance and want to integrate with Opsera

  2. Solution - 2

    1. Customers who don’t have tools in place and want to integrate directly with Opsera

Solution -1: Customers who already have tools:

Jenkins Integration

  1. Follow the below process to configure the Webhook.

Step 1

  1. Log into Opsera Portal

  2. select Tool Registry from left navigation.

Step 2

  1. In the Tool Registry screen below, Click + New Tool Button to add a tool.

Step 3

  1. Once you click Add Tool, a popup will be displayed.

  2. Type Jenkins Tool Name in the Tool Name input field.

  3. Type Jenkins as Tool Identifier in the dropdown.

Step 5

  1. In the Modal Popup, Choose your Tool Name from the Main Tool Registry screen.

  2. Click the Connections TAB to enter:

    1. Container URL

    2. Jenkins User ID

    3. Jenkins Password

Once you have entered all the fields, Hit the Save Button. With these steps completed, now Log into Jenkins Tool to complete below steps.

Step 4

  1. Click the Create Tool Button to continue.

Step 6

  1. Log into Jenkins tool

  2. Enter your Jenkins credentials.

Step 7

  1. From the Dashboard screen, Click Manage Jenkins from left navigation tool bar

Step 8

  1. In the Manage Jenkins page, Choose Notification

Step 9

  1. Select the Job Name

  2. Click install

  3. Jenkins Installation will start as shown below.

Step 10

  1. Wait for the installation to conplete.

  2. Once Installation is complete, Jenkins will restart.

Step 11

Once the Restart is complete, Click Configure link from left Navigation.

Step 12

  1. Select the 2nd Tab from the Navigation menu.

  2. Enter the Webhook URL details in the Notifications TAB.

Step 13

  1. Congratulations, you have completed all the steps required.

  2. Once you run any job via Jenkins on your end, Analytics data will be available at Opsera Portal.

    1. For SonarQube installation, please proceed to next section.

SonarQube Configuration

To integrate SonarQube, follow the below steps.

Step 1

Objective is to create Auth token to authorize Opsera to SonarQube.

  1. Login to SonarQube portal

  2. Click + Icon located on the top right menu.

Step 2

  1. Enter an unique Project key name

  2. Provide a Display name.

  3. Click the Setup button.

Step 3

  1. Note the Project Key you just created.

Step 4

  1. Now we have to create a Token that you can use with Opsera.

  2. Click Administrator link from Top right menu.

Step 5

  1. In the Administrator screen, click the Security TAB to create the Security Token.

Step 6

  1. Once you have created, you should see a success message as shown below.

  2. Click Copy to copy the key to clipboard.

Step 7

Now that you have created the Token, let’s update Opsera settings.

  1. Log into Opsera Portal

  2. Select Tool Registry from left navigation.

Step 8

  1. Click + New Tool Button to add a tool.

  2. A popup dialogbox will be displayed.

Step 9

In the Popup dialogbox,

  1. Type a tool name.

  2. Choose SonarQube as your Tool.

  3. Select Code Scan as Tool Type from the Dropdown

  4. Click Save Changes

Step 10

Once you click Save Changes, Choose your Tool Name you just created. In this case, choose Sonarqube-demo from the list.

  1. Choose your Tool Name from the main screen.

  2. In the Pop-up, Click Connections TAB

  3. Enter Sonar URL

  4. Sonar Port

  5. Sonar User ID

  6. Sonar Auth Token you created in SonarQube portal.

  7. Click save.

Step 11

  1. Now login to SonarQube portal.

  2. Once you login, click Configuration from top left Menu

  3. Choose Webhooks.

Step 12

  1. Click Create Button located on the right side.

Step 13

Type the below information in the popup dialogbox.

  1. Type an unique name

  2. Enter the URL that you received from Opsera.

  3. Finally Click Create button to complete the Webhook configuration.

  1. To Unsubscribe, from sonarqube, 

    1. Administration > configuration > webhooks >Delete.

      1. Screenshot : sonar-add-webhook.png

For JMeter, Junit and XUnit to work as expected, you must configure filebeat before proceeding.

  1. Install Filebeat as per instructions at https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-installation.html

  2. Update config path : /etc/filebeat.yml

  3. Follow the below steps to configure the filebeat

Configure filebeat to send data to logstash 

  1. Under output.logstash add logstash-url as follows:

  2. Filebeat File Sample:

    Click the link for the complete sample filebeat file.https://drive.google.com/file/d/1COjLuCYQupsEWv7OWvgzSpWrOGuL-VlN/view?usp=sharing

    output.logstash:
     # The Logstash hosts
     hosts: ["develk-logstash.opsera.io:5044"]
     ssl.enabled: true
  3. Restart filebeat after Updating filebeat.yml:

  4. sudo service filebeat restart     
  5. Check if filebeat config error

    filebeat test config     
  6. To test if filebeat is able to establish connectivity to logstash

    filebeat test output

if you have performed above steps, you have successfully completed configuring filebeat. Now that filebeat configuration is complete you can proceed with JMeter, JUnit and XUnit installation.

Junit Installation

You must complete the configuration of filebeat before proceeding these steps. Store test results in instance and Update filebeat to send results logstash.

Update filebeat as below:

- type: log
 enabled: true
 paths:
   - /var/jenkinslogs/*/junitResult.xml
 exclude_lines: ['^<?xml']
 multiline.pattern: '<suite>'
 multiline.negate: true
 multiline.match: after
 multiline.flush_pattern: '</suite>'
 multiline.timeout: 1000

JMeter Installation

You must complete the configuration of filebeat before proceeding these steps. Store test results in instance and Update filebeat to send results logstash.

- type: log
 
 # Change to true to enable this input configuration.
 enabled: true
 paths:
   - /var/lib/docker/volumes/*/_data/jobs/*/builds/*/archive/standardResults.xml
 multiline.pattern: '<api>'
 multiline.negate: true
 multiline.match: after
 multiline.flush_pattern: '</api>'

XUnit Installation

You must complete the configuration of filebeat before proceeding these steps.

  1. Store Xunit test results in as jenkinsBuildId-xunitResults.xml

    1. Example:  if 15 is a Jenkins build ID. result file should be named :  15-xunitResults.xml

- type: log
 enabled: true
 paths:
   - /var/lib/docker/volumes/*/_data/workspace/*/TestResults/*.xml
   - /var/lib/docker/volumes/*/_data/workspace/*/*/*/TestResults/*.xml

GitLab Installation

  1. Login into gitlab

  2. Select project > Settings(left panel) >  Webhook > 

  3. Add webhook to send all events to logstash

    1. https://customerdomain-logstash.opsera.io/webhook/gitlab

Screenshot : gitlab-add-webhook.png

Codeship

  1. Add webhook and point to 

    1. Login to codeship dashboard > projects > “select your project” >  Project settings (top-right) > Notifications >  

    2. https://customerdomain-logstash.opsera.io/webhook/codeship

    3. Create user with read privileges and share  username and password with opsera via email

    4. Screenshot : Screenshot : codeship-add-webhook.png

Solution -2: Direct Integration with Opsera

SonarQube Installation

Log into Opsera Portal and Select Platform from the Left navigation

Select Code Security Tool and click Deploy button.

Click Confirm button in the popup window to confirm the installation.

Jenkins Installation

In the Platform page, Select Jenkins tool and click Confirm Button.

  1. Once you submit, Email will be sent with Tool/URL information. This will take approximately 15 mins.

  2. Logstash plugin and Filebeat is automatically configured by java-microservice.

  3. ELK stack and DB details will be sent via email.

  • No labels