This is an old revision of the document!
Let op! deze documentatie is nog volop in ontwikkeling
Openshift Command Line Interface
Download
De CLI is beschikbaar voor Windows, MacOS en Linux en is hier te downloaden
Nadat je met ingelogd op de host maak je gebruik van het “oc” commando die je met de bovenstaande link kan installeren.
Meestal kun je, als je met “oc get” ergens informatie over kan opvragen, met “oc describe” uitgebreidere informatie opvragen. Over het algemeen is het “OC” commando zo ingedeeld:
oc <handeling> <resource-type> [<naam (optioneel)>] <code> ===== Bash/tab completion ===== In MacOS en Linux kun je gebruik maken van tab completion, voor verschillende beschikbare shell's kun je de completion file genereren. Bijv. voor BASH : <code bash> oc completion bash > ~/.bash_oc_completion source ~/.bash_oc_completion
Inloggen
Inloggen op de betreffende Openshift omgeving gaat via
| commando | opties | beschrijving |
|---|---|---|
| oc login | -u <user> <openshift_master_url> | inloggen in openshift |
| oc whoami | laat zien als welke user je bent ingelogt | |
| oc project | laat zien in welk project je werkt | |
#bijvoorbeeld: oc login -u gebruiker https://master.chp.npohosting.nl:8443/
Project Management
| commando | opties | beschrijving |
|---|---|---|
| oc projects | Laat beschikbare projecten zien | |
| oc new-project | Maak een project aan | |
| oc project | Laat zien in welk project je momenteel werkt | |
| oc project <project_name> | Verander je huidige workspace naar een ander project | |
Gebruikers rechten geven of ontnemen binnen projecten
Note : alleen een project admin kan deze commando's uitvoeren
Deze commando's zijn bedoeld om gebruikers en groepen toegang te geven tot een project.
Beschikbare rollen :
| Role | Omschrijving |
|---|---|
| admin | Een gebruiker die edit rechten heeft binnen het project en de mogelijkheid heeft om project memberships aan te passen |
| edit | Een gebruiker die meeste resources kan maken en aanpassen binnen het project, maar kan niet de project memberships aan passen |
| view | Een gebruiker die het project kan bekijken, maar kan geen resources aanpassen en kan geen secrets of memberships zien in het project |
-
Voeg project rol toe aan gebruiker
oc policy add-role-to-user <role> <user>
-
Voeg project rol toe aan groep
oc policy add-role-to-group <role> <group>
-
Verwijder project rol van gebruiker
oc policy remove-role-from-user <role> <user>
-
Verwijder project rol van groep
oc policy remove-role-from-group <role> <group>
-
Laat zien welke rollen er uitgedeeld zijn in het project
oc get rolebinding
Bijvoorbeeld, je wilt gebruiker
Status en informatie binnen je project
| commando | opties | beschrijving |
|---|---|---|
| oc status | laat alle services, deployment configs, build configurations, en actieve deployments zien binnen je project | |
| oc logs | -f | Logs tonen van een object -f voor persistent (vergelijkbaar met tail -f) |
| oc get ev | events tonen van het hele cluster | |
| oc get all | list alle resource types binnen je project | |
| oc describe | ||
| oc get pods | -o wide | list alle pods (zoals met ps) -o wide voor meer opties |
Troubleshooting & debugging
-
Direct vanaf je werkstation connectie maken. Zet een portforward op naar een pod:
oc port-forward <pod_name> <listen_port>:<port_in_pod> # example mysql : oc port-forward mysql-1-ghb5q 6001:3306 mysql -p 6001 -h localhost -u <mysql_user> -p<mysql_pass> <mysql_database>
* Direct commando's binnen een container uitvoeren
oc exec <pod> [-c <container> (optioneel] <commando>
Netwerk-gerelateerd
| commando | opties | beschrijving |
|---|---|---|
| oc get svc | list alle services binnen je project | |
| oc expose | –hostname | Route creëren (zonder –hostname wordt het <route-name>-<project-name>.<default-domain> ) |