Friday Mar 23, 2012

How to subscribe to the free Oracle Linux errata yum repositories

Now that updates and errata for Oracle Linux are available for free (both as in beer and freedom), here's a quick HOWTO on how to subscribe your Oracle Linux system to the newly added yum repositories on our public yum server, assuming that you just installed Oracle Linux from scratch, e.g. by using the installation media (ISO images) available from the Oracle Software Delivery Cloud

You need to download the appropriate yum repository configuration file from the public yum server and install it in the yum repository directory. For Oracle Linux 6, the process would look as follows: as the root user, run the following command:

[root@oraclelinux62 ~]# wget http://public-yum.oracle.com/public-yum-ol6.repo \
-P /etc/yum.repos.d/
--2012-03-23 00:18:25--  http://public-yum.oracle.com/public-yum-ol6.repo
Resolving public-yum.oracle.com... 141.146.44.34
Connecting to public-yum.oracle.com|141.146.44.34|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1461 (1.4K) [text/plain]
Saving to: “/etc/yum.repos.d/public-yum-ol6.repo”

100%[=================================================>] 1,461       --.-K/s   in 0s      

2012-03-23 00:18:26 (37.1 MB/s) - “/etc/yum.repos.d/public-yum-ol6.repo” saved [1461/1461]
For Oracle Linux 5, the file name would be public-yum-ol5.repo in the URL above instead. The "_latest" repositories that contain the errata packages are already enabled by default — you can simply pull in all available updates by running "yum update" next:
[root@oraclelinux62 ~]# yum update
Loaded plugins: refresh-packagekit, security
ol6_latest                                                    | 1.1 kB     00:00     
ol6_latest/primary                                            |  15 MB     00:42     
ol6_latest                                                               14643/14643
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package at.x86_64 0:3.1.10-43.el6 will be updated
---> Package at.x86_64 0:3.1.10-43.el6_2.1 will be an update
---> Package autofs.x86_64 1:5.0.5-39.el6 will be updated
---> Package autofs.x86_64 1:5.0.5-39.el6_2.1 will be an update
---> Package bind-libs.x86_64 32:9.7.3-8.P3.el6 will be updated
---> Package bind-libs.x86_64 32:9.7.3-8.P3.el6_2.2 will be an update
---> Package bind-utils.x86_64 32:9.7.3-8.P3.el6 will be updated
---> Package bind-utils.x86_64 32:9.7.3-8.P3.el6_2.2 will be an update
---> Package cvs.x86_64 0:1.11.23-11.el6_0.1 will be updated
---> Package cvs.x86_64 0:1.11.23-11.el6_2.1 will be an update

[...]

---> Package yum.noarch 0:3.2.29-22.0.1.el6 will be updated
---> Package yum.noarch 0:3.2.29-22.0.2.el6_2.2 will be an update
---> Package yum-plugin-security.noarch 0:1.1.30-10.el6 will be updated
---> Package yum-plugin-security.noarch 0:1.1.30-10.0.1.el6 will be an update
---> Package yum-utils.noarch 0:1.1.30-10.el6 will be updated
---> Package yum-utils.noarch 0:1.1.30-10.0.1.el6 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

=====================================================================================
 Package                     Arch    Version                       Repository   Size
=====================================================================================
Installing:
 kernel                      x86_64  2.6.32-220.7.1.el6            ol6_latest   24 M
 kernel-uek                  x86_64  2.6.32-300.11.1.el6uek        ol6_latest   21 M
 kernel-uek-devel            x86_64  2.6.32-300.11.1.el6uek        ol6_latest  6.3 M
Updating:
 at                          x86_64  3.1.10-43.el6_2.1             ol6_latest   60 k
 autofs                      x86_64  1:5.0.5-39.el6_2.1            ol6_latest  470 k
 bind-libs                   x86_64  32:9.7.3-8.P3.el6_2.2         ol6_latest  839 k
 bind-utils                  x86_64  32:9.7.3-8.P3.el6_2.2         ol6_latest  178 k
 cvs                         x86_64  1.11.23-11.el6_2.1            ol6_latest  711 k

[...]

 xulrunner                   x86_64  10.0.3-1.0.1.el6_2            ol6_latest   12 M
 yelp                        x86_64  2.28.1-13.el6_2               ol6_latest  778 k
 yum                         noarch  3.2.29-22.0.2.el6_2.2         ol6_latest  987 k
 yum-plugin-security         noarch  1.1.30-10.0.1.el6             ol6_latest   36 k
 yum-utils                   noarch  1.1.30-10.0.1.el6             ol6_latest   94 k

Transaction Summary
=====================================================================================
Install       3 Package(s)
Upgrade      96 Package(s)

Total download size: 173 M
Is this ok [y/N]: y
Downloading Packages:
(1/99): at-3.1.10-43.el6_2.1.x86_64.rpm                       |  60 kB     00:00     
(2/99): autofs-5.0.5-39.el6_2.1.x86_64.rpm                    | 470 kB     00:01     
(3/99): bind-libs-9.7.3-8.P3.el6_2.2.x86_64.rpm               | 839 kB     00:02     
(4/99): bind-utils-9.7.3-8.P3.el6_2.2.x86_64.rpm              | 178 kB     00:00     

[...]

(96/99): yelp-2.28.1-13.el6_2.x86_64.rpm                      | 778 kB     00:02     
(97/99): yum-3.2.29-22.0.2.el6_2.2.noarch.rpm                 | 987 kB     00:03     
(98/99): yum-plugin-security-1.1.30-10.0.1.el6.noarch.rpm     |  36 kB     00:00     
(99/99): yum-utils-1.1.30-10.0.1.el6.noarch.rpm               |  94 kB     00:00     
-------------------------------------------------------------------------------------
Total                                                306 kB/s | 173 MB     09:38     
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
Retrieving key from http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
Importing GPG key 0xEC551F03:
 Userid: "Oracle OSS group (Open Source Software group) "
 From  : http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating   : yum-3.2.29-22.0.2.el6_2.2.noarch                                1/195 
  Updating   : xorg-x11-server-common-1.10.4-6.el6_2.3.x86_64                  2/195 
  Updating   : kernel-uek-headers-2.6.32-300.11.1.el6uek.x86_64                3/195 
  Updating   : 12:dhcp-common-4.1.1-25.P1.el6_2.1.x86_64                       4/195 
  Updating   : tzdata-java-2011n-2.el6.noarch                                  5/195 
  Updating   : tzdata-2011n-2.el6.noarch                                       6/195 
  Updating   : glibc-common-2.12-1.47.el6_2.9.x86_64                           7/195 
  Updating   : glibc-2.12-1.47.el6_2.9.x86_64                                  8/195 

[...]

  Cleanup    : kernel-firmware-2.6.32-220.el6.noarch                         191/195 
  Cleanup    : kernel-uek-firmware-2.6.32-300.3.1.el6uek.noarch              192/195 
  Cleanup    : glibc-common-2.12-1.47.el6.x86_64                             193/195 
  Cleanup    : glibc-2.12-1.47.el6.x86_64                                    194/195 
  Cleanup    : tzdata-2011l-4.el6.noarch                                     195/195 

Installed:
  kernel.x86_64 0:2.6.32-220.7.1.el6                                                 
  kernel-uek.x86_64 0:2.6.32-300.11.1.el6uek                                         
  kernel-uek-devel.x86_64 0:2.6.32-300.11.1.el6uek                                   

Updated:
  at.x86_64 0:3.1.10-43.el6_2.1                                                      
  autofs.x86_64 1:5.0.5-39.el6_2.1                                                   
  bind-libs.x86_64 32:9.7.3-8.P3.el6_2.2                                             
  bind-utils.x86_64 32:9.7.3-8.P3.el6_2.2                                            
  cvs.x86_64 0:1.11.23-11.el6_2.1                                                    
  dhclient.x86_64 12:4.1.1-25.P1.el6_2.1                                             

[...]

  xorg-x11-server-common.x86_64 0:1.10.4-6.el6_2.3                                   
  xulrunner.x86_64 0:10.0.3-1.0.1.el6_2                                              
  yelp.x86_64 0:2.28.1-13.el6_2                                                      
  yum.noarch 0:3.2.29-22.0.2.el6_2.2                                                 
  yum-plugin-security.noarch 0:1.1.30-10.0.1.el6                                     
  yum-utils.noarch 0:1.1.30-10.0.1.el6                                               

Complete!

At this point, your system is fully up to date. As the kernel was updated as well, a reboot is the recommended next action.

If you want to install the latest release of the Unbreakable Enterprise Kernel Release 2 as well, you need to edit the .repo file and enable the respective yum repository (e.g. "ol6_UEK_latest" for Oracle Linux 6 and "ol5_UEK_latest" for Oracle Linux 5) manually, by setting enabled to "1". The next yum update run will download and install the second release of the Unbreakable Enterprise Kernel, which will be enabled after the next reboot.

-Lenz

Website

Newsletter

Facebook

Twitter

Wednesday Mar 21, 2012

Want to Patch your Red Hat Linux Kernel Without Rebooting?

Patched Tube by Morten Liebach
Patched Tube by Morten Liebach (CC BY 2.0)

Are you running Red Hat Enterprise Linux? Take back your weekend and say goodbye to lengthy maintenance windows for kernel updates! With Ksplice, you can install kernel updates while the system is running. Stay secure and compliant without the hassle.

To give you a taste of one of the many features that are included in Oracle Linux Premier Support, we now offer a free 30-day Ksplice trial for RHEL systems. Give it a try and bring your Linux kernel up to date without rebooting (not even once to install it)!

For more information on this exciting technology, read Wim's OTN article on using Oracle Ksplice to update Oracle Linux systems without rebooting.

Watch Waseem Daher (one of the Ksplice founders) telling you more about Ksplice zero downtime updates in this screencast "Zero Downtime OS Updates with Ksplice"

- Lenz

Friday Mar 16, 2012

Oracle Linux Forum

This forum includes live chat so you can tell Wim, Lenz, and the gang what you really think.

Linux Forum - Tuesday March 27

Since Oracle recently made Release 2 of its Unbreakable Enterprise Kernel available (see Lenz's blog), we're following up with an online forum with Oracle's Linux executives and engineers. Topics will be:

9:30 - 9:45 am PT
Oracle's Linux Strategy

Edward Screven, Oracle's Chief Corporate Architect and Wim Coekaerts, Senior VP of Linux and Virtualization Engineering, will explain Oracle's Linux strategy, the benefits of Oracle Linux, Oracle's role in the Linux community, and the Oracle Linux roadmap.

9:45 - 10:00 am PT
Why Progressive Insurance Chose Oracle Linux

John Dome, Lead Systems Engineer at Progressive Insurance, outlines why they selected Oracle Linux with the Unbreakable Enterprise Kernel to reduce cost and increase the performance of database applications.

10:00 - 11:00 am PT
What's New in Oracle Linux

Oracle engineers walk you through new features in Oracle Linux, including zero-downtime updates with Ksplice, Btrfs and OCFS2, DTrace for Linux, Linux Containers, vSwitch and T-Mem.

11:00 am - 12:00 pm PT
Get More Value from your Linux Vendor

Why Oracle Linux delivers more value than Red Hat Enterprise Linux, including better support at lower cost, best practices for deployments, extreme performance for cloud deployments and engineered systems, and more.

Date: Tuesday, March 27, 2012
Time: 9:30 AM PT / 12:30 PM ET
Duration: 2.5 hours
Register here.

- Rick

Thursday Mar 15, 2012

How to Unlock the Performance of Your Multithreaded Applications

Does the memory allocation of your multi-threaded application look like this?

That's probably because you're using a memory allocator designed for single-thread, single-CPU applications. Those memory allocators use malloc() and free() to reserve a portion of memory for your application, and then release it.

That type of memory allocator can continue to work in an application that ventures timidly into the possibilities of a multi-core, multithread-capable system. However, as the thread count begins to increase, different threads will start to request access to memory at the same time, and the traditional memory allocator won't be able to keep up.

Article: How Memory Allocation Affects Performance in Multithreaded Applications

Rick Weisner explains how memory allocation has evolved over the years, then shows you how to recognize a performance deficiency in your multithreaded application. Then he describes how to use three MT-aware memory allocators to take advantage of the performance promises of multi-core systems:

  • mtmemlock shipped with Oracle Solaris
  • libumem shipped with Oracle Solaris
  • the hoard allocator, publicly available

Stop the madness. Read Rick Weisner's article.

- Rick (Ramsey)

Website

Newsletter

Facebook

Twitter

Tuesday Mar 13, 2012

Who the Linux Developer Met on His Way to St. Ives

For some reason I still remember this nursery riddle:

"As I was going to Saint Ives
I met a man with seven wives
Each wife had seven sacks
Each cat had seven cats
Each cat had seven kits
How many were going to St Ives?

The answer, of course, is one. More about the riddle here.

Little did I know, when I first learned it, that this rhyme would help me understand the Oracle Exadata Database Machine. Miss Blankenship, please forgive me:

As I was going to St Ives
I met a man with 8 Oracle Exadata Machines
Each machine had 8 sockets
Each socket had 8 cores
Each core had 2 threads
How many CPU's were going to St Ives?

If your i-phone has hobbled you to the point that you can no longer do simple arithmetic in your head, you can get the answer to that riddle by listening to these podcasts (the first one even provides notes):

Podcast: How Oracle Linux Was Optimized for the Oracle Exadata Database Machine

Turns out that when you use off-the-shelf components to build a NUMA system like the Exadata, you lower your hardware costs, but you increase the software work that must be done to optimize the system. Oracle Linux already had a set of optimizations well suited to this task. Chris Mason, director of Linux kernel engineering at Oracle, describes the process engineering used to optimize Exadata's integrated stack, touching everything from storage, to networking, the CPU, I/O speeds, and finally the application. Great Q&A, too.

Podcast: What's So Great About Oracle's Unbreakable Enterprise Kernel?

It's easy to replace your tired rust-bucket of a Linux kernel with the chromed-out Unbreakable Enterprise Kernel from Oracle, but why would you? Sergio Leunissen, Oracle Vice President, and Lenz Grimmer, blogger extraordinaire, explain why it's worth your time to use the Unbreakable Linux Kernel. Sergio and Lenz explain why Oracle went to the trouble to engineer its own kernel, what's included in Release 2, how it is tested, how it is optimized for the Oracle stack, the close relationship with the Linux community, and what benefits it brings developers and sysadmins.

Where to Get It, How to Use It

As you may have already heard, Release 2 of Oracle's Unbreakable Enterprise Kernel for Linux is now available. Here are some resources to help you get started.

- Rick with Todd Trichler

Website

Newsletter

Facebook

Twitter

Friday Mar 09, 2012

My Personal Crib Sheet for the ZFS Storage Appliance

Question: What do the F22 Raptor and the ZFS Storage Appliance have in common?

Answer: They bend time. They compress distance. And they both come with their own simulator.

We recently published some articles about really cool ways to use the ZFS Storage Appliance (see below), so I spent a little time looking into the darned thing. It's easy to find out what the ZFS Storage Appliance does, but more difficult to find out what its components are. What can I yank out and replace? What can I connect it to? And what buttons and levers can I push? Or pull.

So I put together this crib sheet. If you didn't grow up in The Bronx, see wikipedia's definition of crib sheet.

What Have We Published Recently?

What the Heck Is It?

It is Oracle's main NAS system for enterprise environments. In case you don't already know, NAS (Network Attached Storage) is simply a storage system designed to be shared by several servers on a network. Instead of each server having its own storage, which would make sharing files wicked slow, you put all your storage on your NAS system, and let all the servers access it fast. Plus, it's much easier to manage. Shoot, you can even store your boot environments on your NAS system so that if one of your servers dumps core, you can reboot it from the NAS system.

It comes in three variations:

  • 7120 - for small and medium size installations - 3.3 TB to 177 TB raw capacity
  • 7320 - mid-range storage for the enterprise - cluster option - up to 288 TB raw capacity - Hybrid Storage Pools with up to 4 TB of optimized cache
  • 7420 - For virtualized environments requiring multiple data services and heterogeneous file sharing - single or cluster - up to 1.7 PB of raw capacity

What Makes It Special?

  • It's wicked fast (see F22 Raptor, above).
  • It's got management software that makes it easy to administer.
  • Its Hybrid Storage Pool Design recognizes I/O patterns and places data in the storage media that will provide best performance for that data, whether DRAM, flash, or disk.
  • Hybrid Columnar Compression reduces storage footprints for NAS-based databases from three to five times.
  • DTrace analytics help you diagnose performance and networking bottlenecks
  • Fault Management Architecure (FMA) identifies faults and automatically re-routes traffic around them.
  • When you need more capacity, you can add:
    • DRAM, cache, or I/O ports for more resources
    • Disk shelf units for greater total capacity
    • Flash drives for faster performance.
  • You can get it in a dual-cluster configuration for high availability.
  • It provides a variety of RAID protections to balance capacity, protection, and performance requirements of your applications.
  • It's waaaaay cheaper than an F22 and doesn't require all that cryptic back and forth with those moody Air Traffic Control people.

Details here.

What's In The Box?

When I asked, I got the usual "Well, I could tell you what's in the box, but then I'd have to shoot you." Turns out they don't want me messing with it. Or you messing with it. The darn thing is built from off-the-shelf components, but the value-add comes from the way they're tuned to work together. So if you, Mister Curiosity, decide to pop open a terminal and run ssh into Solaris, you'll see a message notifying you that if you continue with your wayward ways you'll void your warranty. Ack! Like the good ol' boys from the Georgia Satellites like to put it...

She said, "No huggee, no kissee
Until you make me a wife."
Oh, my honey, my baby
Don't put my love upon no shelf
She said, "Don't hand me no lines
And keep your hands to yourself."

Here's what you really need to know: It's a specialized server with a processor, memory, and disk drives. Loaded with a highly tuned version of Oracle Solaris and other software goodies. But don't think of it that way. Think of it as remote storage. That's all. A box with:

  • Two types of storage:
    1. Filesystem, such as CIFS, NFS, ZFS, etc.
    2. Block, allocated as a Logical Unit (LUN)
  • Connections for a wide variety of network protocols
  • Two sysadmin toolkits:
    1. BUI (boo! boo!)
    2. CLI (yay! yay!)
  • Analytics to help you monitor its performance.

Connections? What Can I Connect It To?

For starters, you can connect it to the other servers on the network, through the stock Infiniband HCA's. That's part of what makes it wicked fast. But you can also connect it to other devices through industry-standard network protocols, including:

  • Infiniband
  • Fibre Channel
  • NFS
  • Common Internet File System (CIFS)
  • Internet Small Computer System Interface (iSCSI)
  • NDMP (Network Data management Protocol so it can participate in remotely-coordinated automatic backups
  • A Virus Scan Service
  • NIS naming, LDAP directory, and Microsoft Active Directory services for centralized management of users, groups, hostnames, etc.

What Administration Tasks Does It Require?

Details vary by model and your needs, but basic administration consists of:

  • Defining the storage allocated to each server
  • Making it available to the servers (sharing)
  • Migrating data
  • Integrating it with other applications
  • Taking snapshots
  • Monitoring performance with DTrace Analytics
  • The usual backups, diagnostics, and housecleaning tasks for any server or storage system

Any Examples of What To Use It For?

Turns out you can do lots of cool things with the ZFS Storage Appliance. A partial listing:

For More Information

The Best American Country Song of All Time?

Is it the best? That's debatable. But it's certainly one of my favorite renditions of a country song, from one of my favorite movies of all time.

- Rick Ramsey (with special thanks to Andrew Ness)

Website

Newsletter

Facebook

Twitter

About

Contributors:
Rick Ramsey
Kemer Thomson
and members of the OTN community

Search

Archives
« March 2012 »
SunMonTueWedThuFriSat
    
1
2
3
4
5
6
7
8
10
11
12
14
17
18
19
20
22
24
25
26
27
28
29
30
31
       
Today
Blogs We Like