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…

Oracle 12c on Fedora 27

As always, I have to start with a warning.

With that out of the way…

Fedora 27 has been out for a couple of weeks now, but I’ve not really been able to do anything with it because I couldn’t get it installed on VirtualBox. I finally managed to get the installation to work, provided I used the Live DVD when I was running VirtualBox on an Oracle Linux 7 host. That means I was finally able to have a play with 12cR2 on Fedora 27.

It’s pretty much the same as the installation on Fedora 27.

So now you know how to do it, please don’t! 🙂

Cheers

Tim…

 

Oracle 12c on Fedora 26

Before we get into this, I feel the need to mention this important caveat, so I don’t get any grief about this.

With that done, here we go…

Fedora 26 has been out for a while now. As soon as it dropped I tried to do some 12c installations on it and hit a stumbling block. The software would install and link fine, but it wouldn’t start up Oracle processes, so you couldn’t actually create a database using the DBCA or SQL*Plus. I roped in Frits Hoogland to help me find the issue, which he did through the magic of strace. 🙂

With that information, a bit of Googling revealed other software that was struggling with changes to glibc, with the only reliable solution (to their problems) being to downgrade to glibc from Fedora 25. That didn’t sound too satisfactory to me.

If I’m honest, I got kind-of bored by it until Andy Campbell made me aware of a workaround, so I was finally able to get 12cR1 and 12cR2 working fine on Fedora 26.

Not surprisingly, the 12cR1 installation still suffers from that Perl issue on newer chipsets. The 12cR2 installation is a lot clearer by comparison.

So now you know how to do it, please don’t! 🙂

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…

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…

Fedora 24 and Oracle 12c

fedoraFedora 24 was released a few days ago. As usual I had a play around with it and tried installing Oracle on it.

First comes the warnings, because people keep misunderstand why I do this. Do not install Oracle on Fedora before reading this!

With that out of the way, here’s what I did.

No real drama here. It was pretty much the same as Fedora 23 in that respect.

It’s kind-of hard to get excited about a new version of Fedora since I switched my desktop from Fedora to Mac. One thing that was interesting is the change to the upgrade process. In previous releases I used “fedup” to do it. Now it’s pretty much done using DNF (YUM). If you are interested, you can read about it here.

Cheers

Tim…

Video: Oracle Linux Virtual Machine (VM) on Micorosft Azure

The interface for Microsoft Azure has been re-jigged since I last did screen shots, so I did a run through of creating an Oracle Linux VM and recorded it for my channel.

I also updated the associated article.

Cheers

Tim…

Fedora 22/23 and Oracle 11gR2/12cR1

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

I was reading some stuff about the Fedora 23 Alpha and realised Fedora 22 had passed me by. Not sure how I missed that. 🙂

Anyway, I did a run through of the usual play stuff.

While I was at it, I thought I would get the heads-up on Fedora 23 Alpha.

The F23 stuff will have to be revised once the final version is out, but I’m less likely to forget now. 🙂

I guess the only change in F22 upward that really affects me is the deprecation of YUM in F22 in favour of the DNF fork. For the most part, you just switch the command.

#This:
yum install my-package -y
yum groupinstall my-package-group -y
yum update -y

#Becomes:
dnf install my-package -y
dnf groupinstall  my-package-group -y
dnf group install  my-package-group -y
dnf update -y

This did cause one really annoying problem in F23 though. The “MATE Desktop” had a single documentation package that was causing a problem. Usually I would use the following.

yum groupinstall "MATE Desktop" -y --skip-broken

Unfortunately, DNF doesn’t support “–skip-broken”, so I was left to either manually install the pieces, or give up. I chose the latter and use LXDE instead. 🙂 F23 is an Alpha, so you expect issues, but DNF has been in since F22 and still no “–skip-broken”, which I find myself using a lot. Pity.

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…