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
If you are new to offering software on Opsera Cloud Solution, sign up to become a customer.
Complete the Customer Onboarding Request Form.
Review and complete the open source compliance requirements.
Checklist
At a high level, you must do the following:
Gather the below information:
output.logstash file location
filebeat.yml location
Signup at opsera.io
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.
Test your solution end-to-end.
If you want to include support, integrate your support.
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.
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.
Solution - 1
Customers who already have tools running in their own Instance and want to integrate with Opsera
Solution - 2
Customers who don’t have tools in place and want to integrate directly with Opsera
Solution -1: Customers who already have tools:
Jenkins
Install Logstash plugin and add point to https://customerdomain-logstash.opsera.io
Login to Jenkins > Manage Jenkins > Manage Plugins > search for logstash plugin and install.
Screenshot : jenkins-installing-logstah-plugin.png
Login to Jenkins > Manage Jenkins > Configure > Under Logstash
Screenshot : jenkins-logstash-plugin.png
Index : Elasticsearch
(Leave Username and password blank)
Upon successful completion, Opsera will get the log information.
Sonarqube
From the sonarqube dashboard,
Create a user and token with and share it with via opsera portal.
User > My Account > Security
Screenshot : sonarqube-token.png
(we (Opsera team) are manually setting logstash environment variable)
Customer to add Webhook to send data to https://customerdomain-logstash.opsera.io
During onboarding process, email will be sent to customer with Logstash URL
Login to sonarqube dashboard
Administration > configuration > webhooks > create
Screenshot : sonar-add-webhook.png
Enter logstash URL and create
To Unsubscribe, from sonarqube,
Administration > configuration > webhooks >Delete.
Screenshot : sonar-add-webhook.png
For JMeter, Junit and XUnit to work as expected, you must configure filebeat before proceeding.
Install Filebeat as per instructions at https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-installation.html
Update config path : /etc/filebeat.yml
Follow the below steps to configure the filebeat
Configure filebeat to send data to logstash
Under output.logstash add logstash-url as follows:
output.logstash: # The Logstash hosts hosts: ["develk-logstash.opsera.io:5044"] ssl.enabled: true
Restart filebeat after Updating filebeat.yml:
sudo service filebeat restart
Check if filebeat config error
filebeat test config
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.
Store Xunit test results in as jenkinsBuildId-xunitResults.xml
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
Login into gitlab
Select project > Settings(left panel) > Webhook >
Add webhook to send all events to logstash
Screenshot : gitlab-add-webhook.png
Codeship
Add webhook and point to
Login to codeship dashboard > projects > “select your project” > Project settings (top-right) > Notifications >
Create user with read privileges and share username and password with opsera via email
Screenshot :
Screenshot : Codeship-project-settings.png
Screenshot : codeship-add-webhook.png
Solution -2: Customers who don’t have tools installed
Tool Jenkins
Goto Platform page (https://opsera.io)
Create an application name
Select the tools you want to integrate and hit submit.
Once you submit, Email will be sent with Tool/URL information. This will take approximately 15 mins.
Logstash plugin and Filebeat is automatically configured by java-microservice.
ELK stack and DB details will be sent via email.