Docker : My First Steps

In a blog post after OpenWorld I mentioned I might not be writing so much for a while as something at work was taking a lot of my “home time”, which might result in some articles, but then again might not… Well, that something was Docker…

After spending a couple of years saying I was going to start looking at Docker, in June I wrote a couple of articles, put them on the website, but didn’t mention them to anyone.  I was finding it quite hard to focus on Docker because of all the fun I was having with ORDS. More recently it became apparent that we have a couple of use-cases for Docker at work, one of which involved ORDS, so it reignited my interest. There’s nothing like actually needing to use something to make you knuckle down and learn it… 🙂

Having gone back to revisit Docker, I realised the two articles I wrote were terrible, which wasn’t surprising considering how little time I had spent using Docker at that point. The more I used Docker, the more I realised I had totally missed the point. I had come to it with too many preconceptions, mostly relating to virtualization, that were leading me astray. I reached out to a few people (Gerald Venzl, Bruno Borges & Avi Miller) for help and advice, which got me back on track…

I’ve been playing around with Docker a lot lately, which has resulted in a few articles, with some more on the way. I’m not trying to make out I’m “the Docker guy” now, because I’m clearly not. I’m not suggesting you use my Docker builds, because there are better ones around, like these. I’m just trying to learn this stuff and I do that by playing and writing. If other people find that useful and want to follow me on the journey, that’s great. If you prefer to go straight to the source (docs.docker.com) that’s probably a better idea. 🙂

I do a lot of rewrites of articles on my website in general. This is especially true of these Docker articles, which seem to be in a permanent state of flux at the moment. Part of me wanted to wait until I was a little more confident about it all, because I didn’t want to make all my mistakes in public, then part of me thought, “sod it!”

If you want to see what I’ve been doing all the articles are on my website and the Dockerfiles on Github.

I’m having a lot of fun playing around with Docker. You could say, I’m having a “whale” of a time! (I’ll get my coat…)

Cheers

Tim…

Enterprise Linux Upgrade : It’s a Sorry State!

It’s 2017 and it’s still not possible to reliably upgrade an Enterprise Linux distribution between major versions!

At this point you are scrolling down to the comments to “educate me” about the redhat-upgrade-tool, because you read about it somewhere and you once heard someone successfully upgraded an installation on a lab machine. Unless you have an ultra vanilla starting point, you are going to end up with a mess that probably won’t boot. By the time you come to upgrade a “real server”, there have been years of changes and it is unlikely to resemble some pristine minimal installation.

I know your next comment is going to be something about the architectural changes brought in by project X and version Y in RHEL7, which is why it is all so hard. Stop now! You are boring me already! Is it an enterprise distribution or isn’t it? If it is, you should be able to upgrade it reliably!

Next up comes, “But you have to reinstall when you get new hardware!” I present to you virtual machines. Physical hardware upgrades with no need to reinstall the OS on the VM.

I can’t believe I’ve been using Linux for about 19 years and this is where we are at.

Cheers

Tim…

Oracle Linux 12cR2 Preinstall Package

I was doing some clean Oracle Linux 6 and 7 installs today and look what I noticed in the yum repository for OL6.

Available Packages
oracle-database-server-12cR2-preinstall.x86_64 1.0-1.el6 public_ol6_latest
oracle-rdbms-server-11gR2-preinstall.x86_64 1.0-13.el6 public_ol6_latest
oracle-rdbms-server-12cR1-preinstall.x86_64 1.0-14.el6 public_ol6_latest

And for OL7.

Available Packages
oracle-database-server-12cR2-preinstall.x86_64 1.0-2.el7 ol7_latest
oracle-rdbms-server-11gR2-preinstall.x86_64 1.0-4.el7 ol7_latest
oracle-rdbms-server-12cR1-preinstall.x86_64 1.0-5.el7 ol7_latest

A quick look at the repos and it first turned up in September. I’m surprised I’ve not noticed it before now…

Cheers

Tim…

Spacewalk : My First Steps in Space

spacewalkA few days ago we had a rather unproductive web session at work with an Oracle Linux Support sales team. They were obviously keen to sell us Oracle Linux support contracts and I was keen to only pay if we were getting something of value from the deal.

  • We already use Cloud Control for managing our Oracle Database and WebLogic installations. We are currently transitioning from Cloud Control 12c to Cloud Control 13c. Buying OS support brings nothing to the table here.
  • We have a company policy to use SCOM (and Squared Up) for monitoring, so at this point Cloud Control 13c is never going to be used as a general monitoring tool across the organisation.
  • We do all our server provisioning with VMware vSphere and Embotics vCommander, so Cloud Control 13c will not be used for general VM provisioning tool.
  • We don’t really have a need for Ksplice. I’m not denying it’s a cool piece of kit, but at this point we really don’t need it.
  • We don’t want to rip out all our other tools to replace them with Cloud Control.
  • Although I predominantly work on UNIX and Linux systems, the vast majority of the servers in the company run Windows. As a result, products that suit Windows tend to take priority. 🙂
  • The piece of the puzzle we are really missing is management of Linux patching, repositories, channels etc. After asking several times for some information I got pretty angry and said something to the tune of, “Look, I’m throwing you a bone here. Give us some information on using Cloud Control 13c for Linux patch management and maybe you’ll be able to persuade us to spend some money.” The response was something to the tune of, “Yes. You can do Linux patch management.” What a well thought out response! Amazing!

I’ve held back on writing this post for a few days because the whole process was infuriating and I would have ended up calling those salespeople fuckwits and morons, which would be rather unproductive…

Anyway, as a response to that fiasco I decided to spend the weekend having a play with Spacewalk at home. Not the jazzed up Oracle version, but the open source and, more importantly, free version.

I’m not part of the Sys Admin team at work, but I like to play around with stuff and get an idea of what it brings to the table. I think Spacewalk will fit well into what we already have, and it won’t cost us any money. As a result of playing around with it I’ve decided to use Spacewalk at home to manage all my VMs. 🙂

I’m a fan of Oracle Linux and I’m a fan of Cloud Control. I’m not saying Cloud Control is not capable doing the stuff we need. It might even be better than what we have now. It’s just not an option for anything other than managing our Oracle databases and WebLogic servers at this time.

I’m not a fan of idiot sales people that don’t care to understand what the customer wants and repeatedly spout preplanned sentences that are meant mislead and to scare you into buying something you don’t need.

Cheers

Tim…

Video: Oracle Linux Virtual Machine (VM) on Amazon Web Services (AWS)

Continuing the cloud theme, here is a quick run through of the process of creating an Oracle Linux virtual machine on Amazon Web Services (AWS).

A few months ago I wrote an article about installing an Oracle database on AWS.

I updated the images in that article last night to bring them in line with this video.

The cameo today is by Joel PĂ©rez, who was a bit of a perfectionist when recording “.com”. I’ve included about half of his out-takes at the end of the video. Don’t ever hire him for a film or you will run over budget! 🙂

Cheers

Tim…

Which version of Oracle Linux should I pick for Oracle server product installations?

linux-tuxOracle certifies many of their latest products for installation on Oracle Linux 6 and 7, so I guess the obvious question is, which should you pick?

I tend to have a dual approach to this. I always use the latest versions of everything for my play kit, but I tend to be a little conservative for production deployments, preferring to use the OS version the product was developed against. I’ve noticed Oracle Cloud and some VM templates are still using Oracle Linux 6, which makes me think Oracle are being a little conservative too.

We were lucky enough to get some time with Wim Coekaerts during the ACE Director briefing at Oracle OpenWorld 2015. During Wim’s session I asked this very question and (to paraphrase his response) he said, the products are written on Oracle Linux 6, so that’s a safe bet. The products are certified and supported on Oracle Linux 7, so you are fine to choose that, but it doesn’t really matter if you prefer to stick with Oracle Linux 6.

You might be asking yourself, why would I stick with such an old distribution? If you are using Oracle Linux you should be using Oracle’s kernel (currently UEK3), so even if the main distribution is older, you are still getting the latest and greatest kernel updates. This is very different to RHEL, where the kernel functionality is essentially fixed when the distribution is released, then just patched for critical updates. For a database or application server, the kernel is the important thing. You’re not bothered about having the latest version of Firefox on the server. 🙂

Oracle Linux 6 is supported until 2021, so there is no hurry to get rid of it any time soon. If you are doing new installations, the likelihood is your hardware replacement cycle will kick in before Oracle Linux 6 is out of date. If virtualized, you will probably rebuild your VMs as part of your application software updates within this time-scale also. 🙂

So in conclusion, don’t be afraid to make the jump to Oracle Linux 7, but equally, don’t be afraid to stick with Oracle Linux 6… Neither choice is a bad one in this case.

Cheers

Tim…

PS. For non-Oracle installations, there may be other more pressing reasons to jump to version 7. I’ve intentionally avoided mentioning systemd and firewalld. I don’t have time for that war. 🙂

Fedora 23 and Oracle 11gR2/12cR1

A few months ago I mentioned doing some Fedora 22 installations. At the time I did some pre-emptive installations on the Alpha release of Fedora 23 also.

Now the final release of Fedora 23 is out, I’ve run through the articles again to make sure things are all ship-shape.

It’s pretty much as it was before, with the nice bonus that the “MATE Desktop” package group has been fixed. Happy days! 🙂

As always, installations of Oracle server products on Fedora are not a great idea, as explained here.

If you do like playing with this stuff, knock yourself out… 🙂

Cheers

Tim…

Oracle Linux 7.1 Preinstall Packages available for 11gR2 and 12cR1

Every so often I have a nose around the contents of the Oracle Linux public yum repositories and guess what I found in the OL7.1 base and OL7 latest repositories.

Yeeeeeaaaaahhhhhh!

The datestamps suggest they’ve been around since the 5th February, but I think these only became available with the release of OL7.1.

On the positive side, this means installations of 11g and 12c just got a whole lot easier on Oracle Linux 7. On the downside, I’ve got some minor rewrites to do. 🙂

Cheers

Tim…

Fedora 21 : Upgrading from Fedora 20

I just did an upgrade of my old desktop from Fedora 20 to Fedora 21. The process was similar to this old blog post, but there were some variations, so I’ll list the procedure here.

  • Update your current Fedora 20 system by issuing the “yum update -y” command and restart once it is complete.
  • Install the latest “fedup” package using “sudo yum –enablerepo=updates-testing install fedup”
  • Run the “sudo fedup-cli –network 21 –product=nonproduct” command.
  • If you are using Dropbox, disable the repository using the “yum-config-manager –disable Dropbox” command. Re-enable it once the Fedora 21 repository is available.
  • Run the following clean up commands.
    sudo rpm --rebuilddb
    sudo yum distro-sync --setopt=deltarpm=0
    
    sudo yum install rpmconf
    sudo rpmconf -a
  • If you are using Chrome, uninstall and reinstall Chrome.

It seemed to go fine!

Cheers

Tim…

Oracle 11gR2 and 12cR1 on Oracle Linux 7

I did a quick update of my Oracle installation articles on Oracle Linux 7. The last time I ran through them was with the beta version OL7 and before the release of 12.1.0.2.

The installation process of 11.2.0.4 on the production release of Oracle Linux 7 hasn’t changed since the beta. The installation of 12.1.0.2 on Oracle Linux 7 is a lot neater than the 12.1.0.1 installation. It’s totally problem free for a basic installation.

You can see the articles here.

There is a bold warning on the top of both articles reminding you that the database is not supported on Oracle Linux 7 yet! Please don’t do anything “real” with it until the support is official.

Note. I left the fix-it notes for the 12.1.0.1 installation at the bottom of the 12c article, but now 12.1.0.2 is available from OTN there is really no need for someone to be installing 12.1.0.1 other than for reference I guess.

Cheers

Tim…