Overview of k9s - an advanced terminal interface for Kubernetes

Overview of k9s - an advanced terminal interface for Kubernetes

K9s terminatio usoris interfaciem praebet pro racemis Kubernetes mutuo se mutuo praebet. Propositum huius consilii Open Source est ut facile navigare, monitor, et applicationes K8s regere possit. K9s assidue monitores in Kubernetes mutat et celeria mandata praebet ad operandum cum opibus monitoriis.

Propositum est scriptum in Go et circa annum et dimidium fuit: prima committas facta est die 1 Februarii MMXIX. In tempore scribendi sunt 2019+ stellae GitHub et de contributoribus LXXX. Videamus quid k80s facere possit?

Installation and launch

Haec clientis est (in relatione ad botrum Kubernetes) applicatio quae facillima est ad imaginem currendi ut Docker:

docker run --rm -it -v $KUBECONFIG:/root/.kube/config quay.io/derailed/k9s

Aliquae distributiones Linux et alia systemata operativa, sunt etiam parata ad instituendum packages. In genere, pro Linux systemata, fasciculum binarium instituere potes:

sudo wget -qO- https://github.com/derailed/k9s/releases/download/v0.22.0/k9s_Linux_x86_64.tar.gz | tar zxvf -  -C /tmp/
sudo mv /tmp/k9s /usr/local/bin

Nulla certa requisita ad ipsum botrum K8s. Ex recensionibus iudicans, applicatio etiam laborat cum vetustis versionibus Kubernetensium, ut 1.12.

Applicatio launched per vexillum aboutconfig .kube/config - similis quomodo facit kubectl.

Навигация

Defalta fenestra aperitur cum spatio nominali defalto pro contextu designato. Hoc est, si scripseris kubectl config set-context --current --namespace=test, , tunc nomina spatii aperient test. (Vide infra in contextibus mutandis / spatiis nominalibus.)

Overview of k9s - an advanced terminal interface for Kubernetes

ad imperium modus fit deprimendo ":". Post hoc, operationem k9s utentium mandatorum temperare potes - exempli gratia, ut album StatefulSets (in spatio temporis praesenti), intrare potes. :sts.

Overview of k9s - an advanced terminal interface for Kubernetes

Ad alia Kubernetes facultates;

  • :ns — spatiis spatiis;
  • :deploy — Deployments;
  • :ing — Ingress;
  • :svc — Officia.

Ut ostenderet summam indicem copiarum instrumentorum ad videndum promptum, mandatum est :aliases.

Commodum est etiam inspicere indicem mandatorum a iunctis clavis calidis intus in fenestra currenti: hoc facere, modo deprime "?"

Overview of k9s - an advanced terminal interface for Kubernetes

Etiam in k9s est quaerere modusire ad quem ingredi satis est "/". Cum ea, quaesitio fit in contentis "fenestrae" hodiernae. Dicamus si antea ingressus :ns, habes indicem nominatorum apertum. Si plures sint, ne longum tempus enumerem, satis est in fenestra nomina spatiis ingredi. /mynamespace.

Ad inquirere per pittacia, siliquas omnes in spatio nominali desiderato eligere potes, deinde intrare, exempli gratia, / -l app=whoami. Indicem siliquae cum hoc pittacio dabimus:

Overview of k9s - an advanced terminal interface for Kubernetes

Inquisitionis opera in omnibus fenestris, etiam lignis, inspiciendis YAML manifestat et describe pro opibus — vide infra pro plura de his notis.

Quid fluit altiore navigationis simile?

помощью команды :ctx potes eligere contextu:

Overview of k9s - an advanced terminal interface for Kubernetes

Spatium nominandi eligere, est iam dictum mandatum :nset tunc uti potes inquisitione loci desiderati; /test.

Si nunc subsidia quae egimus in quibus quaerimus (exempli gratia idem StatefulSet), notitiae respondentes pro ea patebunt: quot siliquae cum brevibus informationibus de illis currunt.

Overview of k9s - an advanced terminal interface for Kubernetes

Siliquae tantum interest - tunc satis est intrare :pod. In ConfigMaps (:cm - pro indice harum facultatum), potes eligere obiectum usuris et deprime "u", post quod K9s indicabit tibi qui ea specie utitur (hoc CM).

Alius habilis pluma ad videndum facultates suas est "x-ray" (Xray view). Hic modus dicitur per mandatum :xray RESOURCE et ... facilius est ostendere quomodo operatur quam exponere. Hic exemplum StatefulSets est:

Overview of k9s - an advanced terminal interface for Kubernetes
(Uterque harum facultatum emendari, mutari, fieri potest describe.)

Et hic instruere cum Ingressu:

Overview of k9s - an advanced terminal interface for Kubernetes

Opus cum opibus

Potes informationem de singulis resource in YAML vel ejus describe premendo claviaturas claviaturas respondentes ("y" et "d", respective). Nimirum etiam plures sunt praecipuae operationes: eorum album et claviaturae semper apparent propter opportunum "caput" in interface (absconditum premendo Ctrl + e).

Overview of k9s - an advanced terminal interface for Kubernetes

Cum aliquem resource emendo ("e" post suam delectu), textus editor definitus in ambitu variabilium aperitur (export EDITOR=vim).

Atque hic est quod explicatio subsidii similis est.describe):

Overview of k9s - an advanced terminal interface for Kubernetes

Hoc output (seu output inspiciendi YAML resource manifestum) servari potest utens in claviaturis brevibus nota Ctrl+s. Ubi salvus erit, cognoscetur ex nuntio K9s;

Log /tmp/k9s-screens-root/kubernetes/Describe-1601244920104133900.yml saved successfully!

Potes etiam facultates ex fasciculis tergum creatis restituere, remotis pittaciis et annotationibus systematis. Hoc facere debes cum illis indicem ire (:dir /tmp) Desideravit ergo eligere file et applicare apply.

Viam aliquando revolvere potes ad priorem ReplicaSet si problemata currenti sunt. Ad hoc elige desideratum RS (:rs eorum indicem);

Overview of k9s - an advanced terminal interface for Kubernetes

with Ctrl^l. Debemus habere notitiam omnia opera bona;

k9s/whoami-5cfbdbb469 successfully rolled back

Et replicationes scandere, mox deprime in "s" (scala) et elige numerum desideratum instantiarum:

Overview of k9s - an advanced terminal interface for Kubernetes

Ingredi aliquem ex vasis testa: hoc facere, vade ad vasculum desideratum, deprime "s" (testa) et vas deligere.

alius features

Scilicet, acta spectandi etiam confirmatur ("l" pro subsidiis selectis). Et ut novas tabulas inspicias, nihil opus est ut assidue urgeas Intra: satis est notare ("m") et tunc tantum novas nuntios indagare.

Overview of k9s - an advanced terminal interface for Kubernetes

Item in eadem fenestra, tempus range pro output lignorum eligere potes:

  • key "1"- for 1 minute;
  • "2"-5 minuta;
  • "3"-15 minuta;
  • "4"-30 minuta;
  • "5"- 1 m.
  • "0" — pro tota vita ipsius vasculi.

Specialis modus operandi Pulsus (imperium :pulse) informationes generales de botro Kubernetes ostendit;

Overview of k9s - an advanced terminal interface for Kubernetes

In ea videre potes numerum opum ac status eorum (viridis monstra illis quae statum habent" Running).

Alius frigus pluma of K9s vocatur Papa. Omnes facultates coercet ad quaedam regulas rectitudinis et consequentiam "rating" cum explicationibus ostendit. Exempli gratia, videre potes quod non sunt satis exempla seu limites, et aliquod continens potest currere sicut radix...

Overview of k9s - an advanced terminal interface for Kubernetes

Nulla sit amet convallis lorem. Verbi gratia, hoc est quomodo videas solutiones laxari in botro;

:helm all # все
:helm $namespace # в конкретном пространстве имен

Probatio

Etiam in K9s Gloria simplex HTTP server onus generantis, jocus ad notiorem ab (ApacheBench).

Ut id efficiat, necesse est ut in vasculum port-transmittat. Ad hoc fac, legumen elige et Shift + f premat, vade ad portum submenu utendo alias "pf".

Overview of k9s - an advanced terminal interface for Kubernetes

Postquam portum deligere et Ctrl+b instans, ipsum Probatio incipiet. Eventus operis eius reponuntur in /tmp and are available for later viewing in K9s.

Overview of k9s - an advanced terminal interface for Kubernetes
Overview of k9s - an advanced terminal interface for Kubernetes

Probatio figuram mutare, limam creare debes $HOME/.k9s/bench-<my_context>.yml (Pro se racemum determinari).

NB: Gravis est extensio omnium imaginum YAML in directorio .k9s prorsus erat .yml (.yaml non recte operatur).

Exemplum figurationis:

benchmarks:
  defaults:
    # Количество потоков
    concurrency: 2
    # Количество запросов
    requests: 1000
  containers:
    # Настройки для контейнера с бенчмарком
    # Контейнер определяется как namespace/pod-name:container-name
    default/nginx:nginx:
      concurrency: 2
      requests: 10000
      http:
        path: /
        method: POST
        body:
          {"foo":"bar"}
        header:
          Accept:
            - text/html
          Content-Type:
            - application/json
 services:
    # Можно проводить бенчмарк на сервисах типа NodePort и LoadBalancer
    # Синтаксис: namespace/service-name
    default/nginx:
      concurrency: 5
      requests: 500
      http:
        method: GET
        path: /auth
      auth:
        user: flant
        password: s3cr3tp455w0rd

interface

Aspectus columnarum pro tabulis subsidiorum modificatur per fasciculum creando $HOME/.k9s/views.yml. Exemplum contenti sui:

k9s:
 views:
   v1/pods:
     columns:
       - AGE
       - NAMESPACE
       - NAME
       - IP
       - NODE
       - STATUS
       - READY
   v1/services:
     columns:
       - AGE
       - NAMESPACE
       - NAME
       - TYPE
       - CLUSTER-IP

Verum, non satis est columna pro pittaciis, pro qua est normam in project.

Genus per columnas fit per claviaturae:

  • Trabea + n - nomine;
  • Trabea + o — , nodis;
  • Trabea + i - ab IP;
  • Trabea + a — , vita continens;
  • Trabea + t - per numerum restarts;
  • Trabea + r - , paratissimam conditionem;
  • Trabea + c - tabes per CPU;
  • Trabe + m — , memoria tabes.

Si quis color schema non placet, K9s etiam sustinet utres. Exempla parata facta (7 pieces) praesto sunt hic. Unum exemplum est de pellibus (in classe):

Overview of k9s - an advanced terminal interface for Kubernetes

Plugins

postremo, plugins permitto tibi facultatem K9s ampliare. Ego ipse solus usus sum ex eis in opere meo - kubectl get all -n $namespace.

Hoc simile est. Creare lima $HOME/.k9s/plugin.yml contenti sic:

plugin:
 get-all:
   shortCut: g    
   confirm: false    
   description: get all
   scopes:
   - all
   command: sh
   background: false
   args:
   - -c
   - "kubectl -n $NAMESPACE get all -o wide | less"

Nunc ad nomina spatii adire potes ac "g" ad exsequendum cum congruente mandato:

Overview of k9s - an advanced terminal interface for Kubernetes

Inter graphina exstant, exempli gratia, integrationes cum kubectl-jq et utilitas ad ligna spectandi. arduum.

conclusio,

Gustus enim meus, K9s contigit ut commodissime laborare possis: cito assuesces quaerere omnia quae sine eo egent. kubectl. Placuit mihi in conspectu omnium rerum et earum salutiferae, edendi opum velox, celeritas operis in communi*, Papae modus evasit utilis. Peculiaris mentio est facultas plugins creandi et applicationem modificandi ad necessitates tuas aptandas.

* Tametsi cum magno volumine lignorum, animadverti etiam tarditatem operum K9s. Talibus momentis utilitas "comeditur" 2 coros Intel Xeon E312xx et etiam durare potuit.

Quid deest tempore? Velox reverti ad versionem priorem (de RS non loquimur) sine indicem iens. Praeterea, recuperatio tantum fit tantum resource: si annotationem vel pittacium delere, totum opum delere ac restituere debebis (hoc est ubi in indicem ire debes). Aliud nugatorium - non satis date pro talibus servatis "tergum".

PS

Lege etiam in nostro diario:

Source: www.habr.com