Oc
External
- https://docs.openshift.com/container-platform/latest/cli_reference/basic_cli_operations.html
- https://docs.openshift.com/container-platform/latest/cli_reference/admin_cli_operations.html
Internal
Overview
oc is the OpenShift remote client that talks with the master API server. Intended for regular users. The cluster administrator's CLI interface is oadm.
Installation
RHEL
If a new RHEL node needs to be enabled to allow access to an OpenShift environment, and the entire OpenShift set of packages was not installed, only OpenShift clients can be installed as part of the atomic-openshift-clients package:
yum install atomic-openshift-clients
If you get:
No package atomic-openshift-clients available. Error: Nothing to do
that means that either the host has no access to an OpenShift subscription, and, in consequence, no access to the appropriate repository, or that the "atomic-openshift-excluder" package was previously installed, and an "unexclude" command must be executed, as described here: OpenShift Yum Excluders.
Mac
Download from https://access.redhat.com/downloads/content/290, choose "OpenShift v3.5 MacOSX Client". Then extract the content and place "oc" in PATH.
Namespace Selection
By default, oc selects objects from the current project, which is the project oc commands apply to, without to explicitly having to use the -n <project-name> qualifier.
To specify another project, use:
oc -n <project-name> ...
To set the current project:
Output
In general, all oc commands can be configured to send their output in either JSON or YAML format, rather than execute the command.
This is achieved with
oc ... -o json|yaml
In case of oc get, the output of the server execution is rendered in JSON/YAML if -o json|-o yaml is used.
Logging and Debugging
oc ... --loglevel=8
This log level shows the API requests made with each command.
The curl commands used to send the requests are displayed with:
oc --v=10 ...