cloud computing


Bugzilla 4.2 will be end of life in November 2015, so if you are thinking of upgrading, then you might want to take a look at Bugzilla 5.0 ( released in July )

You can follow the ‘Installation and Maintenance Guide’ at bugzilla.readthedocs.org or use a configuration template.

If Ansible is your thing, then the repository at bitbucket.org/wrightsolutions/ansible16bugzilla5 can be used to configure an Ubuntu server ( dedicated or cloud )

In ~/hosts.list for Ansible give your server a name such as ‘myubuntu’
and then clone the repository using:

hg clone ssh://hg@bitbucket.org/wrightsolutions/ansible16bugzilla5

From within the local cloned copy you should be able to see site.yml and then run the following:

ansible-playbook site.yml -i ~/hosts.list -u root -l myubuntu

A video demonstration of the automation is available as follows:

Advertisements

Image

For this particular project the setup.py contained the following line:

      install_requires=['bottle','python-memcached>=1.45'],

Note: if you use ‘memcache’ or ‘memcached’ instead of what is written, you will probably get a message like:

Couldn’t find index page for ‘memcache’ (maybe misspelled?)

remote: Reading http://pypi.python.org/simple/
remote: No local packages or download links found for memcache>=1.45
remote: Best match: None

It is always good to know how powerful a new cloud server is, when you take delivery.

There are a range of benchmarks available, however for pure cpu, I like to use some Mathematics.

Programs that tax a processor for several hours, often will be compiled from source.

( Makes sense as if the thing is cpu intensive,
then it really is important for it to be tailored more closely,
to the features available on the underlying host )

Benchmarking with fabric example – hosted on Bitbucket:

The fabric file at the link above, will download the code to your server and run the benchmark.

The image below (click to resize fullscreen) shows the preparatory steps in action as witnessed through the fabric call on the local machine.

benchmarking server from fabric

fabric to benchmark

The Mathematics will run for anywhere between 1 and 15 hours, depending on the raw (single core) processing power on the server being benchmarked.

Fabric availability as standard package

Because Fabric relies on Python 2.5 or newer, you will have to do your own thinking, for CentOS 5 and RedHat 5 (which have python 2.4 by default)

Here is a useful link for Python 2.5 and fabric on rpm based ‘5’ series systems.

Here is a fabric rpm in fedora that assumes a Python version 2.7 or newer.

Consultancy relies in no small part in having a skill set which reflects what is hot in the IT marketplace.

Linux and Server Skills - Graphical Representation

18 months have passed since my an earlier posting (2009), it seemed a good time to update that Skills Matrix.

Talking yesterday with some folks about cloud computing, I mentioned Salesforce.com as an early pioneer.

Formed in 1999, Salesforce.com “is best known for its Customer Relationship Management (CRM) products”

Above Quote: Wikipedia (2011)

Phrases like the following, are how I sometimes talk about cloud computing:

Rather than buy software with a large up front cost, install it locally, then go back to the vendor and pay for a new version 18 months later…

What I am doing here is marketing cloud computing on the basis of ‘continuous upgrades’

With that new model comes some caveats and some new thinking.

Funding cloud computing development:

Making up a company name, let us call the vendor “Cloudgang” (No relation to any real company intended)

How will Cloudgang developers be paid?

  1. Software rental (Monthly / Quarterly “Pay as you go”)
  2. One time fee
  3. Advertising sponsored
  4. Other model

(1) Above is easy to explain as there is an analogy in Mobile Phones

(3) Above is easier to explain, now that lots of folks, have experience of the personal (free) editions of GMail and Hotmail

Service level agreements (SLA) and cloud computing:

This is a huge area and I will not cover it in detail, however I cover Google offering briefly.

The SLA for “Google Apps for Business” is here.

Government cloud contracts might well be covered under an enhanced SLA, depending on the contract negotiations involved.

Some Extracts:

  • “99.9% uptime guarantee SLA and 24×7 support”
  • “Phone support for critical issues”

Certification and cloud computing:

This is a huge area and I will not cover it in detail, however recent events have raised an important question.

Traditionally government is used to going through a certification process, buying the software product, end of story.

Cloud computing may require an adaptation of the certification process, that may depend some on, whether the funding model is (1) or (2) above.

Re-certification, and how often that occurs, is going to have to form a part of the contractual negotiations.

Here is what David McClure from US Government (GSA) had to say recently:

FISMA recognize that products evolve and that recertification is part of the process

To provide an example I will use Healthcare (Critical Care) and stretch a standard (CCMDS), to be a certification.

So in this fictional procurement process, CCMDS is a certification process with an external certification body.

Your local hospital signs a 5 year cloud computing contract with Cloudgang for their new Critical Care product ICGang.

Part of that process might require a CCMDS re-certification every 2 years.

Vendor enhancements, continuous development:

As a purchaser of service, you need to consider whether this sort of enhancements model, is one which you favour.

Going back to my fictional Healthcare procurement:

  • If you and 5 other hospitals contract for ICGang, would you want the benefits of enhancements the other 4 hospitals suggest, as they happen?
  • Do you instead wish the product to remain static, and ‘conform to specification’ for the entire contract term?

If you choose the first option benefits of enhancements, then:

  • Would you require an ‘opt out of further changes‘ process?
  • Do you see the system functioning as a sort of ‘optional updates’ setup, where you are prompted for each major ‘enhancement’?
  • Should you avoid a “One time fee” sort of contract, and instead prefer a Monthly / Quarterly payment setup

In the last point in that list, I have returned to the subject of funding.

Developers need paying. Fact.

If you choose the benefits of enhancements option then, that ongoing development work, will need to be funded.

If the contract is a one time fee, then the vendor will have to ‘factor in’ an estimate, of the number of hours of development, to deliver under that benefits of enhancements setup.

An alternative arrangement conforming to specification might seem attractive, however your planning is then really about a series of ‘one time fee’ contract negotiations, accepting that your software is unenhanced for the term of the contract.

Choosing the right sort of arrangement, might well depend on the organisation doing the purchasing, and the business area:

  • Is the organisation dynamic and capable of managing a more interactive relationship with the vendor?
  • Is the business area rapidly developing, and seems a more natural fit with a “benefits of enhancement” style agreement?

Links and further reading: