Organizing Jobs in EM13c, centralize or leave it to the team…

Using the EM Job System, especially for ‘house keeping’ jobs makes sense to many of the EM using organizations.

Requirements

  • Team members should be able to schedule jobs
  • Team members should be able to create library jobs
  • Team members should be able to see, stop, resume jobs that were scheduled by other members in the team

We will discuss two possible approaches:

  • Centralized
  • Leave it to the team

Centralized

I have seen organizations that prefer to work with a central EM account to locate Jobs (as well as for deployment procedures and reports). For this a ‘Non personal account’ is created, that is used to created, maintain and schedule library jobs.

A clear disadvantage of this approach would be that it is unknown which user actually modified or scheduled a specific job.  Something, your security officer will have a strong opinion about…

A clear advantage of this approach would be that all job definitions are to be found in one and the same account, which makes maintenance of library jobs easy. Job logs will be found at the same location and anyone having access to the central account can start, stop and resume jobs running in the account.

In order to get more team involvement, you could decide on creating a central account per team. So the Sales team would have a different account as the Human Resource team.

Leave it to the team

As working in Agile/Scrum teams is a standard way of working for many organizations, another approach could be: allow individual team members to create, maintain and schedule library jobs using their personal EM account.

This approach will make your security officer much happier as now it is clear who did exactly what.

Some disadvantages of this approach include:

  • The necessity of working with private roles
  • Jobs are scattered over multiple owners (team members)
  • You need to think of who is going to be the next logical owner whenever a team member leaves the team or even the organization. When removing this member as an EM user, EM will for another EM user to become the owner of the EM objects that are owned by the EM user you are trying to delete.

Advantages of using this approach include:

  • The team is responsible for creation, maintenance and scheduling itself and because of this fully self serviced
  • It is clear who did what and when

Using private roles

In order to allow other team members to view the logs and schedule and maintain the jobs, job privileges need to be granted. As the granting must be per administrator this could be a tedious job. For this using private roles could be a solution.

The private role should be created by a Super administrator or an administrator with the ‘Create role’ privilege.

This private role then should be granted to all team members once (and whenever a new member joins the team). Granting job privileges is than limited to the private role, in order to implement requirements as described above.

Make DevOps work in EM13c – Database privileges

devops-em13c

When implementing the ‘DevOps’ way of working you would want to be able to setup Enterprise Manager to support you in that…

When considering database management;

  • Administrators, granted the ‘Developer’ role should be able to Stop/Start ‘Developer’ and ‘Test’ database and only ‘view’ ‘Acceptance’ and ‘Production’ databases
  • Administrators, granted the ‘Operator’ role should be able to Stop/Start ‘Acceptance’ and ‘Production’ database and only ‘view’ ‘Development’ and ‘Test’ databases

Continue reading “Make DevOps work in EM13c – Database privileges”

EM13c – DevOps best practices

Introduction

More and more the fast moving and changing world urges us to upgrade applications with new features to keep track with user demand.

devops-em13c

In order to support a way of working that allows for short build and delivery cycles (Agile) the ‘DevOps’ way of working is introduced in many IT departments nowadays. Architectures specifically setup to support this way of working include tools like Jenkins, Nolio, Git, Puppet etc.

Those of us using Oracle Enterprise Manager would want to include EM within the ‘DevOps’ architecture. Considering we want to use the EM deployment framework, a typical role for EM could be the role of Orchestrator.

I have written this article based on experiences I had while implementing a ‘DevOps’ way of working using EM on projects I was involved in.

Continue reading “EM13c – DevOps best practices”