In this article, I will show you how to install ‘Ansible’ on RHEL/CentOS 7/6. Like other configuration management tools like puppet, chef and CFEngine, server software is installed on one machine and client machines are managed through the agent. Wherein Ansible, the nodes are managed by controlling machine (Ansible server) over SSH, so there won’t be any agent running on node machines.

Base Requirements    :  

  1. Controlling Machine , 
  2. Client Nodes , 
  3. Required Packages

Software Prerequisites      :  

  1. Operating System: RHEL/CentOS/Fedora and Ubuntu/Debian/Linux Mint
  2. Jinja2: A modern, fast and easy to use stand-alone template engine for Python.
  3. PyYAML: A YAML parser and emitter for the Python programming language.
  4. parmiko: A native Python SSHv2 channel library.
  5. httplib2: A comprehensive HTTP client library.
  6. sshpass: A non-interactive ssh password authentication.
Note: Use yum for installation because it will install all dependencies automatically.

My Controlling Machine and Nodes   : 

  • 192.168.87.145    server.gekvplabs.com    server
  • 192.168.87.146    node1.gekvplabs.com    node1    
  • 192.168.87.147    node2.gekvplabs.com    node2

Installation of  Ansible on On RHEL/CentOS :

  1.  Run yum update  for updating all existing packages
    1. yum update -y
  2.  Install EPEL repo 
    1. yum install epel-release
  3.  After configuring epel repository, you can install Ansible using following command
    1. sudo yum install ansible -y
  4. After installed successfully, you can verify the version by executing below command.
    1. ansible --version 



Ansible is a free configuration management tool, it supports managing the configurations of Unix-like and Microsoft windows systems. Ansible manages nodes over SSH or PowerShell and python to be installed on them.

Ansible is agent-less, that means no need of any agent installation on remote nodes, so it means there are no any background daemons or programs are executing for Ansible, when it’s not managing any nodes.

Ansible can handle 100’s of nodes from a single system over SSH connection and the entire operation can be handled and executed by one single command ‘ansible’. But, in some cases, where you required to execute multiple commands for a deployment, here we can build playbooks.



Service Now Integration Interfaces :

ServiceNow is a Database driven application. Every peace of data and Configurations within the applications are resides inside database.This data and Configurations are often displayed form of modules,options and forms. Every form in the system is essentially a database table.


In Service Now we reference any table by using standard URL format, and to directly access any table or form with in the Service Now instance, simply type the database table name in the URL and Append .do extension to that table name.

Example:  Incidents

URL: https://dev12552.service-now.com/incident.do

1.  Every table in Service Now instance has number of built in interfaces that allow third
     party applications access the data resides within the table.

2. These interfaces are auto regenerated that means any new custom tables/new fields are
     automatically accessible to these interfaces.

3. Each table within the table has web services API set that will provide you CRED 
    operations.

CREAD:

C ==> Create
R ==> Read
E ==> Edit
D ==> Delete

All of this interfaces are protected with basic authentication by default

Proof of Concepts Using SOAP UI:

"Soap UI is an open source web service testing application for service-oriented architectures (SOA). Its functionality covers web service inspection, invoking, development, simulation and mocking, functional testing, load and compliance testing." 

We can use SOAP web service interface(SOAP UI) tool, If we want to explore Web Services functions available.

==> Installation of SOAP UI tool:

1. Download SOAP UI tool from here www.soapui.org
2. Install the downloaded file and Open the tool

 ==> Create Project a Project in SOAP UI:

1. Open SoapUI
2. Click File > New SOAP Project
3. Project Name: IncidentInterface
5. Click OK to finish

 ==> Authentication
 Alternatively users can also set authentication using Auth option available in bottom of tool


 Example 1: Insert new incident

1. Double click the insert operation

2. Update the XML file as needed

Sample XML:
-------------------------------------------------------------------------------------------------------------------------


-------------------------------------------------------------------------------------------------------------------------
3. Select the green arrow to submit the soap request
4. You will receive a soap response that the the incident was created. Example response below
-------------------------------------------------------------------------------------------------------------------------



--------------------------------------------------------------------------------------------------------------------------




  Example 2: Update an existing incident

We need to pass sys_id value of the incident record  in XML request for updating an existing incident

Example 3: Delete an Incident

We need to pass sys_id value of the incident record  in XML request for deleting an existing incident

========================================================================

 

 


 





The behavior of a different modules in Service-now instance can be controlled by System Properties.
System Properties are just like global variables in general.  If we need  a variable value that should be available system-wide then it is a best practice to put that value in a system property so that we can use that property where ever required. In addition to that any changes to system property values later  can be managed easily.

It’s always a good idea to be aware of the different properties in the Service Now instance and How they function. Business rules, UI actions, UI pages  and other scripts depend  on system property values.Using a system property instead of a hard-coded value in server-side scripts makes the system easier to maintain and gives you the flexibility to make changes to the system's behavior without reprogramming with system property values

Standard System properties consist of following

1. Name
2. Application
3. Description
4. Type
5. Value
6. Roles

 ==> All system properties in ServiceNow instance are stored in System Property
            [sys_properties] table




How to open sys_properties table:

1. Go to Application Navigation section
2. Type sys_properties.list in filter box, it will automatically opens up the sys_properties table
3. We can add custom in sys_properties table

Creating or Editing a Property:

Most of the system properties can be found in your left navigation under the ‘System Properties’ application as shown above. ALL of the properties in the system are stored in the ‘sys_properties’ table and can be viewed and edited there by typing ‘sys_properties.list’ into the left navigation filter.
You can add a property to your system simply by creating a new record in the ‘sys_properties’ table

1. Enter sys_properties.list in the navigation filter.
2. The entire list of properties in the System Properties [sys_properties] table appears. 
3. Verify the property that you want to create does not already exist.
4. Click New
5. Complete the form as follows (see table)
6. Click Submit.  



 System Properties v/s Properties page:

System Properties and Properties page both allows  users to add values to particular property, but the difference is properties page allows you to set values diffrent properties from single page where as in System Properties we make changes to diffrent property records.


 It’s great to be able to modify properties from the properties table, but it’s a lot more convenient to make the edit through a properties page. Properties pages are what you get when you click on a module under the ‘System Properties’ application in the left navigation of your Service-now instance.
Properties pages are really just a URL that pulls together one or more System Property Categories into a single UI page to be viewed. You can create or modify these categories by navigating to ‘System Properties->Categories’. Here’s what one of the properties categories looks like for the Email settings out-of-box…

Please refer to ServiceNow hosted video on System Sroperties

=========================================================================












 

Users can navigate to a record or module directly by using a URL. This article explains the URL schema by which the system generates pages.


Basic URL format:

Example: https://dev12552.service-now.com/

==> https://dev12552.service-now.com/   -----> base URL
==> dev12552                                          ------> Instance name                   
==> https://dev12552.service-now.com/  <====>  https://.service-now.com

======================================================================

Extended URL format:

Below URL generated by search for admin user operation. We will discuss about each component 
of URL

https://dev12552.service-now.com/sys_user_list.do?sysparm_query=user_nameSTARTSWITHadmin
==> https://dev12552.service-now.com/   -->  base URL
==> sys_user_list.do                                 -->  table name_list.do
==> sysparm_query=user_name               -->  sysparm_query=fieldname
==> STARTSWITH                                     -->  search operator
==> admin                                                  -->  search string


================================================================================

Few Examples: 

Note: Replace dev12552 with your ServiceNow instance name

1. Find All Active Incidents

https://dev12552.service-now.com/incident_list.do?sysparm_query=state%3D2

2. Find All Active Incidents Grouped by Category

https://dev12552.service-now.com/nav_to.do?uri=incident_list.do?sysparm_query=active=true^GROUPBYcategory

3. Export all active incidents to PDF

https://dev12552.service-now.com/nav_to.do?uri=incident_list.do?sysparm_query=active=true%26PDF

4. Export all priority 1 active incidents to CSV

https://dev12552.service-now.com/nav_to.do?uri=incident_list.do?sysparm_query=active=true^priority=1%26CSV

================================================================================

How to capture URL:

1. Construct your query in ServiceNow and Run the query

2. Right click on condition and Copy the URL


3. This URL is direct reference to the ServiceNow database

=======================================================================


 




The Salesforce.com Certified Administrator exam is intended for an individual who has experience performing as a Salesforce Administrator. Here are examples of the concepts you should understand to pass the exam:

Please find links to download SFDC Admin Exam dumps:


Books: 


It's always good to refer latest release notes before going to exam

And For additional reference you may want to refer below sites

http://www.oyecode.com/
http://www.jitendrazaa.com/blog/
http://cloudyworlds.blogspot.in/
http://saramorgan.net/category/visualforce-2/
http://www.sfdc99.com/
http://www.verticalcoder.com/

Please let me know if I can help you for anything


Glide:

ServiceNow company name used to be called as Glidesoft, Inc. incorporated in California. Glide name has been incorporated from previous company name.

GlideRecord is a special Java class (GlideRecord.java) that can be used in JavaScript exactly as if it was a native JavaScript class.


 Usage:

ServiceNow GlideRecord class is used for querying ServiceNow database to retrieve the one or more records

DB Operations Supported by Glide Record:

1. Update
2. Insert
3. Delete
4. Query
5. Get
6. Set
All 6 different DB operations are provided with multiple function/methods to achieve different use cases. In this post we will learn few examples
Use case 1:
List all incident record numbers in incident table

Where should we execute sample code: 

Before we execute the sample GlideRecord code snippet. We should provide security permission

1. Open ServiceNow UI and Click on LOCK icon on Banner section

 
 2. Tick security_admin option(This is required, because we are operating over DB records
 3. Click OK
 4. Open the coding PAD by appending URL shortcut to the URL(sys.scripts.do)


5. Write the sample code in Run script section and Click on Run button


Alternative Method How to find the Scripts - Background Utility

1. Login as an Admin User
2. Elevate your security privileges to security_admin. Click the Lock icon next your name on the title
    Bar
3. Click the security_admin checkbox and click ok. The Lock icon is now unlocked
4. Go to System Defintion > Scripts - Background.  The Scripts - Background Utility appears.

========================================================================



//Function definition
ListallIncident();

//Function Body
function ListallIncident()
{
    var ListallIncident = new GlideRecord('incident'); ////Indicate the table to query from
    ListallIncident.query(); ////Execute the query
//Do something with the records returned
     while(ListallIncident.next()) //Operate over all incidents
     {
        gs.print('Incident Found: '+ListallIncident.number); //Print all incidents
     }
}