Chapter 5. Using oc and kubectl commands

The Kubernetes command-line interface (CLI), kubectl, can be used to run commands against a Kubernetes cluster. Because Red Hat build of MicroShift is a certified Kubernetes distribution, you can use the supported kubectl CLI tool that ships with Red Hat build of MicroShift, or you can gain extended functionality by using the oc CLI tool.

5.1. The kubectl CLI tool

You can use the kubectl CLI tool to interact with Kubernetes primitives on your Red Hat build of MicroShift cluster. You can also use existing kubectl workflows and scripts for new Red Hat build of MicroShift users coming from another Kubernetes environment, or for those who prefer to use the kubectl CLI.

The kubectl CLI tool is included in the archive if you download the oc CLI tool.

For more information, read the Kubernetes CLI tool documentation.

5.2. The oc CLI tool

The oc CLI tool offers the same capabilities as the kubectl CLI tool, but it extends to natively support additional Red Hat build of MicroShift features, including:

  • Route resource

    The Route resource object is specific to Red Hat build of MicroShift distributions, and builds upon standard Kubernetes primitives.

  • Additional commands

    The additional command oc new-app, for example, makes it easier to get new applications started using existing source code or pre-built images.

Important

If you installed an earlier version of the oc CLI tool, you cannot use it to complete all of the commands in Red Hat build of MicroShift 4.15. If you want the latest features, you must download and install the latest version of the oc CLI tool corresponding to your Red Hat build of MicroShift version.

Non-security API changes will involve, at minimum, two minor releases (4.1 to 4.2 to 4.3, for example) to allow older oc binaries to update. Using new capabilities might require newer oc binaries. A 4.3 server might have additional capabilities that a 4.2 oc binary cannot use and a 4.3 oc binary might have additional capabilities that are unsupported by a 4.2 server.

Table 5.1. Compatibility Matrix

 

X.Y (oc Client)

X.Y+N footnote:versionpolicyn[Where N is a number greater than or equal to 1.] (oc Client)

X.Y (Server)

redcircle 1

redcircle 3

X.Y+N footnote:versionpolicyn[] (Server)

redcircle 2

redcircle 1

redcircle 1 Fully compatible.

redcircle 2 oc client might not be able to access server features.

redcircle 3 oc client might provide options and features that might not be compatible with the accessed server.