The ABC of Security ann an Kubernetes: Dearbhadh, Ùghdarrachadh, Sgrùdadh

The ABC of Security ann an Kubernetes: Dearbhadh, Ùghdarrachadh, Sgrùdadh

Ann an ùine ghoirid no nas fhaide air adhart, ann an obrachadh siostam sam bith, bidh cùis tèarainteachd ag èirigh: dèanamh cinnteach à dearbhadh, dealachadh chòraichean, sgrùdadh agus gnìomhan eile. Air a chruthachadh mu thràth airson Kubernetes mòran fhuasglaidhean, a leigeas leat gèilleadh ri inbhean a choileanadh eadhon ann an àrainneachdan a tha gu math dùbhlanach ... An toiseach, bidh e feumail dhaibhsan a tha a 'tòiseachadh a' faighinn eòlas air Kubernetes - mar thoiseach tòiseachaidh airson a bhith a 'sgrùdadh chùisean co-cheangailte ri tèarainteachd.

Dearbhadh

Tha dà sheòrsa de luchd-cleachdaidh ann an Kubernetes:

  • Cunntasan seirbheis - cunntasan air an riaghladh le Kubernetes API;
  • luchd-cleachdaidh - luchd-cleachdaidh “àbhaisteach” air an riaghladh le seirbheisean neo-eisimeileach bhon taobh a-muigh.

Is e am prìomh eadar-dhealachadh eadar na seòrsaichean sin gu bheil nithean sònraichte anns an Kubernetes API airson Cunntasan Seirbheis (canar sin riutha - ServiceAccounts), a tha ceangailte ri àite-ainm agus seata de dhàta ùghdarrais air a stòradh sa bhuidheann ann an nithean den t-seòrsa Secrets. Tha an leithid de luchd-cleachdaidh (Cunntasan Seirbheis) gu sònraichte an dùil a bhith a’ riaghladh chòraichean-slighe gu API Kubernetes de phròiseasan a tha a’ ruith ann am buidheann Kubernetes.

Chan eil inntrigidhean aig luchd-cleachdaidh àbhaisteach anns an Kubernetes API: feumaidh iad a bhith air an riaghladh le uidheamachdan taobh a-muigh. Tha iad airson daoine no pròiseasan a tha a’ fuireach taobh a-muigh na buidhne.

Tha gach iarrtas API co-cheangailte ri Cunntas Seirbheis, Cleachdaiche, no thathar den bheachd gu bheil e gun urra.

Tha dàta dearbhaidh luchd-cleachdaidh a’ toirt a-steach:

  • Ainm-cleachdaidh - ainm neach-cleachdaidh (cùis mothachail!);
  • UID - sreang aithneachaidh cleachdaiche a ghabhas leughadh le inneal a tha “nas cunbhalaiche agus nas sònraichte na an t-ainm neach-cleachdaidh”;
  • buidhnean - liosta de na buidhnean dham buin an neach-cleachdaidh;
  • a bharrachd - raointean a bharrachd a dh’ fhaodar a chleachdadh leis an uidheamachd ceadachaidh.

Faodaidh Kubernetes àireamh mhòr de dhòighean dearbhaidh a chleachdadh: teisteanasan X509, comharran neach-giùlain, neach-ionaid dearbhaidh, HTTP Basic Auth. A’ cleachdadh nan dòighean sin, faodaidh tu àireamh mhòr de sgeamaichean ceadachaidh a chuir an gnìomh: bho fhaidhle statach le faclan-faire gu OpenID OAuth2.

A bharrachd air an sin, tha e comasach grunn sgeamaichean ceadachaidh a chleachdadh aig an aon àm. Gu gnàthach, bidh an cruinneachadh a’ cleachdadh:

  • comharran cunntas seirbheis - airson Cunntasan Seirbheis;
  • X509 - airson luchd-cleachdaidh.

Tha a’ cheist mu bhith a’ riaghladh Cunntasan Seirbheis taobh a-muigh raon an artaigil seo, ach dhaibhsan a tha airson eòlas nas mionaidiche fhaighinn air a’ chùis seo, tha mi a ’moladh tòiseachadh le duilleagan sgrìobhainnean oifigeil. Bheir sinn sùil nas mionaidiche air a’ cheist mu mar a tha teisteanasan X509 ag obair.

Teisteanasan airson luchd-cleachdaidh (X.509)

Tha an dòigh clasaigeach air obrachadh le teisteanasan a’ toirt a-steach:

  • prìomh ghinealach:
    mkdir -p ~/mynewuser/.certs/
    openssl genrsa -out ~/.certs/mynewuser.key 2048
  • a’ cruthachadh iarrtas teisteanais:
    openssl req -new -key ~/.certs/mynewuser.key -out ~/.certs/mynewuser.csr -subj "/CN=mynewuser/O=company"
  • a’ giullachd iarrtas teisteanais a’ cleachdadh iuchraichean CA cruinneachadh Kubernetes, a’ faighinn teisteanas neach-cleachdaidh (gus teisteanas fhaighinn, feumaidh tu cunntas a chleachdadh aig a bheil cothrom air iuchair Kubernetes cluster CA, a tha gu bunaiteach suidhichte ann an /etc/kubernetes/pki/ca.key):
    openssl x509 -req -in ~/.certs/mynewuser.csr -CA /etc/kubernetes/pki/ca.crt -CAkey /etc/kubernetes/pki/ca.key -CAcreateserial -out ~/.certs/mynewuser.crt -days 500
  • cruthachadh faidhle rèiteachaidh:
    • tuairisgeul brabhsair (sònraich seòladh agus àite faidhle teisteanais CA airson stàladh brabhsair sònraichte):
      kubectl config set-cluster kubernetes --certificate-authority=/etc/kubernetes/pki/ca.crt --server=https://192.168.100.200:6443
    • no ciamar chan eilroghainn a thathar a’ moladh - chan fheum thu an teisteanas freumh a shònrachadh (an uairsin cha dèan kubectl sgrùdadh air dè cho ceart ‘s a tha frithealaiche api a’ bhraisle):
      kubectl config set-cluster kubernetes  --insecure-skip-tls-verify=true --server=https://192.168.100.200:6443
    • a' cur cleachdaiche ris an fhaidhle rèiteachaidh:
      kubectl config set-credentials mynewuser --client-certificate=.certs/mynewuser.crt  --client-key=.certs/mynewuser.key
    • a' cur co-theacs ris:
      kubectl config set-context mynewuser-context --cluster=kubernetes --namespace=target-namespace --user=mynewuser
    • sònrachadh co-theacsa bunaiteach:
      kubectl config use-context mynewuser-context

Às deidh na làimhseachadh gu h-àrd, anns an fhaidhle .kube/config thèid rèiteachadh mar seo a chruthachadh:

apiVersion: v1
clusters:
- cluster:
    certificate-authority: /etc/kubernetes/pki/ca.crt
    server: https://192.168.100.200:6443
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    namespace: target-namespace
    user: mynewuser
  name: mynewuser-context
current-context: mynewuser-context
kind: Config
preferences: {}
users:
- name: mynewuser
  user:
    client-certificate: /home/mynewuser/.certs/mynewuser.crt
    client-key: /home/mynewuser/.certs/mynewuser.key

Gus a dhèanamh nas fhasa an rèiteachadh a ghluasad eadar cunntasan agus frithealaichean, tha e feumail luachan nan iuchraichean a leanas a dheasachadh:

  • certificate-authority
  • client-certificate
  • client-key

Gus seo a dhèanamh, faodaidh tu na faidhlichean a tha air an sònrachadh annta a chòdachadh le base64 agus an clàradh san config, a’ cur an iar-leasachan ri ainm nan iuchraichean -data, i.e. air fhaighinn certificate-authority-data agus a leithid.

Teisteanasan le kubeadm

Leis an fhoillseachadh Àireamhan 1.15 tha a bhith ag obair le teisteanasan air fàs gu math nas fhasa le taing don tionndadh alpha den taic aige ann an goireas kubeadm. Mar eisimpleir, is e seo a dh’ fhaodadh a bhith a’ gineadh faidhle rèiteachaidh le iuchraichean cleachdaiche a-nis:

kubeadm alpha kubeconfig user --client-name=mynewuser --apiserver-advertise-address 192.168.100.200

NB: dhìth seòladh sanasachd ri lorg ann an config api-server, a tha gu bunaiteach suidhichte ann an /etc/kubernetes/manifests/kube-apiserver.yaml.

Thèid an rèiteachadh a thig às a thoirt a-mach gu stdout. Feumaidh e bhith air a shàbhaladh a-steach ~/.kube/config cunntas cleachdaiche no gu faidhle a tha air a shònrachadh ann an caochladair àrainneachd KUBECONFIG.

Cladhaich nas doimhne

Dhaibhsan a tha airson tuigse nas mionaidiche a thoirt air na cùisean a tha air am mìneachadh:

Ùghdarrachadh

Chan eil còraichean aig a’ chunntas ùghdarraichte bunaiteach a bhith ag obair air a’ bhuidheann. Gus ceadan a thoirt seachad, bidh Kubernetes a’ cur an gnìomh uidheamachd ceadachaidh.

Ro dhreach 1.6, chleachd Kubernetes seòrsa cead ris an canar ABAC (Smachd ruigsinneachd stèidhichte air feart). Gheibhear mion-fhiosrachadh mu dheidhinn ann an sgrìobhainnean oifigeil. Thathas an-dràsta a’ beachdachadh air an dòigh-obrach seo mar dhìleab, ach faodaidh tu fhathast a chleachdadh còmhla ri seòrsachan dearbhaidh eile.

Canar ris an dòigh a th’ ann an-dràsta (agus nas sùbailte) airson còraichean-slighe a roinn gu brabhsair RBAC (Smachd ruigsinneachd stèidhichte air àite). Tha e air ainmeachadh seasmhach bhon dreach Àireamhan 1.8. Bidh RBAC a’ cur an gnìomh modail chòraichean anns a bheilear a’ toirmeasg a h-uile càil nach eil ceadaichte gu soilleir.
Gus comas a thoirt do RBAC, feumaidh tu Kubernetes api-server a thòiseachadh leis a’ pharamadair --authorization-mode=RBAC. Tha na crìochan air an suidheachadh anns an fhollaiseach leis an rèiteachadh api-server, a tha gu bunaiteach suidhichte air an t-slighe /etc/kubernetes/manifests/kube-apiserver.yaml, ann an earrann command. Ach, tha RBAC air a chomasachadh gu bunaiteach mar-thà, agus mar sin is coltaiche nach bu chòir dhut dragh a ghabhail mu dheidhinn: faodaidh tu seo a dhearbhadh leis an luach authorization-mode (anns an iomradh cheana kube-apiserver.yaml). Co-dhiù, am measg a bhrìgh dh’ fhaodadh gum bi seòrsaichean ceadachaidh eile ann (node, webhook, always allow), ach fàgaidh sinn am beachdachadh taobh a-muigh raon an stuth.

Co-dhiù, tha sinn mu thràth air fhoillseachadh artaigil le tuairisgeul gu math mionaideach air prionnsapalan agus feartan a bhith ag obair le RBAC, mar sin nas fhaide air adhart cuiridh mi mi fhìn gu liosta ghoirid de na bunaitean agus na h-eisimpleirean.

Tha na buidhnean API a leanas air an cleachdadh gus smachd a chumail air ruigsinneachd ann an Kubernetes tro RBAC:

  • Role и ClusterRole — dreuchdan a tha a’ toirt cunntas air còraichean-slighe:
  • Role a’ leigeil leat cunntas a thoirt air còraichean taobh a-staigh àite ainm;
  • ClusterRole - taobh a-staigh a’ bhuidheann, a’ toirt a-steach nithean a tha sònraichte do chruinneachaidhean leithid nodan, urls neo-ghoireasan (i.e. gun a bhith co-cheangailte ri goireasan Kubernetes - mar eisimpleir, /version, /logs, /api*);
  • RoleBinding и ClusterRoleBinding - air a chleachdadh airson ceangal Role и ClusterRole gu neach-cleachdaidh, buidheann luchd-cleachdaidh no cunntas Service.

Tha na buidhnean Role and RoleBinding cuingealaichte le ainmean-àite, i.e. feumaidh iad a bhith taobh a-staigh an aon àite ainm. Ach, faodaidh RoleBinding iomradh a thoirt air ClusterRole, a leigeas leat seata de cheadan coitcheann a chruthachadh agus smachd a chumail air ruigsinneachd gan cleachdadh.

Bidh dreuchdan a’ toirt cunntas air còraichean a’ cleachdadh sheataichean de riaghailtean anns a bheil:

  • Buidhnean API - faic sgrìobhainnean oifigeil le apiGroups agus toradh kubectl api-resources;
  • goireasan (Goireasan: pod, namespace, deployment Agus mar sin air adhart.);
  • Gnìomhairean (gnìomhairean: set, update msaa).
  • ainmean stòrais (resourceNames) - airson a 'chùis nuair a dh'fheumas tu cothrom a thoirt do ghoireas sònraichte, agus chan ann air a h-uile goireas den t-seòrsa seo.

Gheibhear mion-sgrùdadh nas mionaidiche air cead ann an Kubernetes air an duilleag sgrìobhainnean oifigeil. An àite sin (no an àite, a bharrachd air seo), bheir mi eisimpleirean a sheallas an obair aice.

Eisimpleirean de bhuidhnean RBAC

Simplí Role, a leigeas leat liosta agus inbhe pods fhaighinn agus sùil a chumail orra san namespace target-namespace:

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: target-namespace
  name: pod-reader
rules:
- apiGroups: [""]
  resources: ["pods"]
  verbs: ["get", "watch", "list"]

Eisimpleir: ClusterRole, a leigeas leat liosta agus inbhe pods fhaighinn agus sùil a chumail orra air feadh a’ bhraisle:

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  # секции "namespace" нет, так как ClusterRole задействует весь кластер
  name: secret-reader
rules:
- apiGroups: [""]
  resources: ["secrets"]
  verbs: ["get", "watch", "list"]

Eisimpleir: RoleBinding, a leigeas leis an neach-cleachdaidh mynewuser pods “leugh” ann an namespace my-namespace:

apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: read-pods
  namespace: target-namespace
subjects:
- kind: User
  name: mynewuser # имя пользователя зависимо от регистра!
  apiGroup: rbac.authorization.k8s.io
roleRef:
  kind: Role # здесь должно быть “Role” или “ClusterRole”
  name: pod-reader # имя Role, что находится в том же namespace,
                   # или имя ClusterRole, использование которой
                   # хотим разрешить пользователю
  apiGroup: rbac.authorization.k8s.io

Sgrùdadh tachartas

A thaobh sgeama, faodar ailtireachd Kubernetes a riochdachadh mar a leanas:

The ABC of Security ann an Kubernetes: Dearbhadh, Ùghdarrachadh, Sgrùdadh

Is e prìomh phàirt Kubernetes a tha an urra ri làimhseachadh iarrtasan api-frithealaidh. Bidh a h-uile gnìomh sa bhuidheann a’ dol troimhe. Faodaidh tu barrachd a leughadh mu na dòighean a-staigh sin san artaigil “Dè thachras ann an Kubernetes nuair a ruitheas tu kubectl run?".

Tha sgrùdadh siostaim na fheart inntinneach ann an Kubernetes, a tha ciorramach gu bunaiteach. Leigidh e leat a h-uile fios a chlàradh gu Kubernetes API. Mar a shaoileadh tu, thèid a h-uile gnìomh co-cheangailte ri sgrùdadh agus atharrachadh staid a’ chnuas a dhèanamh tron ​​​​API seo. Gheibhear (mar as àbhaist) tuairisgeul math air na comasan aige sgrìobhainnean oifigeil K8s. An ath rud, feuchaidh mi ris a’ chuspair a thaisbeanadh ann an cànan nas sìmplidhe.

Agus mar sin, gus sgrùdadh a chomasachadh, feumaidh sinn trì paramadairean riatanach a thoirt don ghobhar ann an api-server, a tha air am mìneachadh nas mionaidiche gu h-ìosal:

  • --audit-policy-file=/etc/kubernetes/policies/audit-policy.yaml
  • --audit-log-path=/var/log/kube-audit/audit.log
  • --audit-log-format=json

A bharrachd air na trì paramadairean riatanach sin, tha mòran shuidheachaidhean a bharrachd co-cheangailte ri sgrùdadh: bho cuairteachadh log gu tuairisgeulan lìn. Eisimpleir de pharaimearan cuairteachaidh log:

  • --audit-log-maxbackup=10
  • --audit-log-maxsize=100
  • --audit-log-maxage=7

Ach cha bhith sinn a’ fuireach orra ann am barrachd mionaideachd - gheibh thu a h-uile mion-fhiosrachadh ann sgrìobhainnean kube-apiserver.

Mar a chaidh ainmeachadh roimhe, tha a h-uile paramadair air an suidheachadh anns an fhollaiseach leis an rèiteachadh api-server (gu bunaiteach /etc/kubernetes/manifests/kube-apiserver.yaml), ann an earrann command. Tillidh sinn gu na 3 paramadairean riatanach agus dèan sgrùdadh orra:

  1. audit-policy-file - slighe gu faidhle YAML a’ toirt cunntas air a’ phoileasaidh sgrùdaidh. Tillidh sinn chun na tha ann nas fhaide air adhart, ach airson a-nis bheir mi fa-near gum feum am faidhle a bhith air a leughadh leis a’ phròiseas api-server. Mar sin, feumar a chuir a-steach don ghobhar, airson an urrainn dhut an còd a leanas a chuir ris na h-earrannan iomchaidh den config:
      volumeMounts:
        - mountPath: /etc/kubernetes/policies
          name: policies
          readOnly: true
      volumes:
      - hostPath:
          path: /etc/kubernetes/policies
          type: DirectoryOrCreate
        name: policies
  2. audit-log-path - slighe chun fhaidhle log. Feumaidh an t-slighe a bhith ruigsinneach don phròiseas api-server, agus mar sin bidh sinn a’ toirt cunntas air mar a tha e air a chuir suas san aon dòigh:
      volumeMounts:
        - mountPath: /var/log/kube-audit
          name: logs
          readOnly: false
      volumes:
      - hostPath:
          path: /var/log/kube-audit
          type: DirectoryOrCreate
        name: logs
  3. audit-log-format - cruth log sgrùdaidh. Tha am bun-bheachd json, ach tha an cruth teacsa dìleab ri fhaighinn cuideachd (legacy).

Poileasaidh Sgrùdaidh

A-nis mun fhaidhle a chaidh ainmeachadh a 'toirt cunntas air a' phoileasaidh logaidh. Tha a 'chiad bhun-bheachd poileasaidh sgrùdaidh level, ìre clàraidh. Tha iad mar a leanas:

  • None - na log;
  • Metadata - meata-dàta iarrtas log: neach-cleachdaidh, ùine iarrtas, goireas targaid (pod, namespace, msaa), seòrsa gnìomh (gnìomhair), msaa;
  • Request - log meata-dàta agus buidheann iarrtas;
  • RequestResponse - log meata-dàta, buidheann iarrtas agus buidheann freagairt.

Tha an dà ìre mu dheireadh (Request и RequestResponse) na cuir a-steach iarrtasan nach d’ fhuair cothrom air goireasan (ruigsinneachd air urls neo-ghoireasan ris an canar).

Cuideachd a h-uile iarrtas a 'dol troimhe grunn ìrean:

  • RequestReceived - an ìre nuair a gheibh am pròiseasar an t-iarrtas agus nach deach a chuir a-null thairis air an t-sreath de phròiseasan;
  • ResponseStarted - thèid cinn-cinn freagairt a chuir, ach mus tèid am buidheann freagairt a chuir. Air a chruthachadh airson ceistean fad-ùine (mar eisimpleir, watch);
  • ResponseComplete - chaidh a’ bhuidheann freagairt a chuir, cha tèid tuilleadh fiosrachaidh a chuir;
  • Panic - thèid tachartasan a chruthachadh nuair a lorgar suidheachadh neo-àbhaisteach.

Gus leum air ceumannan sam bith as urrainn dhut a chleachdadh omitStages.

Ann am faidhle poileasaidh, is urrainn dhuinn grunn earrannan a mhìneachadh le diofar ìrean logaidh. Thèid a’ chiad riaghailt maidsidh a lorgar ann an tuairisgeul a’ phoileasaidh a chur an sàs.

Bidh an daemon kubelet a’ cumail sùil air atharrachaidhean san fhollais le rèiteachadh an api-server agus, ma lorgar gin, ath-thòiseachadh an soitheach le api-server. Ach tha mion-fhiosrachadh cudromach ann: cha toir e an aire dha atharrachaidhean san fhaidhle poileasaidh. Às deidh dhut am faidhle poileasaidh atharrachadh, feumaidh tu an api-server ath-thòiseachadh le làimh. Leis gu bheil api-server air a thòiseachadh mar pod stait, sgioba kubectl delete cha toir e ath-thòiseachadh. Feumaidh tu a dhèanamh le làimh docker stop air kube-masters, far a bheil am poileasaidh sgrùdaidh air atharrachadh:

docker stop $(docker ps | grep k8s_kube-apiserver | awk '{print $1}')

Nuair a bhios tu comasach air sgrùdadh a dhèanamh, tha e cudromach cuimhneachadh air sin tha an luchd air kube-apiserver a’ dol am meud. Gu sònraichte, bidh caitheamh cuimhne airson stòradh co-theacsa iarrtas ag àrdachadh. Bidh logadh a’ tòiseachadh dìreach às deidh ceann-cinn an fhreagairt a chuir. Tha an luchd cuideachd an urra ri rèiteachadh poileasaidh sgrùdaidh.

Eisimpleirean de phoileasaidhean

Bheir sinn sùil air structar fhaidhlichean poileasaidh a’ cleachdadh eisimpleirean.

Seo faidhle sìmplidh policygus a h-uile càil a chlàradh aig an ìre Metadata:

apiVersion: audit.k8s.io/v1
kind: Policy
rules:
- level: Metadata

Ann am poileasaidh faodaidh tu liosta de luchd-cleachdaidh a shònrachadh (Users и ServiceAccounts) agus buidhnean luchd-cleachdaidh. Mar eisimpleir, seo mar a bheir sinn an aire do luchd-cleachdaidh an t-siostaim, ach clàraich a h-uile càil eile aig an ìre Request:

apiVersion: audit.k8s.io/v1
kind: Policy
rules:
  - level: None
    userGroups:
      - "system:serviceaccounts"
      - "system:nodes"
    users:
      - "system:anonymous"
      - "system:apiserver"
      - "system:kube-controller-manager"
      - "system:kube-scheduler"
  - level: Request

Tha e comasach cuideachd na targaidean a mhìneachadh:

  • ainmean-àite (namespaces);
  • Gnìomhairean (gnìomhairean: get, update, delete agus feadhainn eile);
  • goireasan (Goireasan, is e sin: pod, configmaps msaa) agus buidhnean ghoireasan (apiGroups).

Thoir aire! Gheibhear goireasan agus buidhnean ghoireasan (buidhnean API, ie apiGroups), a bharrachd air na dreachan aca a chaidh a chuir a-steach sa bhuidheann, a’ cleachdadh nan òrdughan:

kubectl api-resources
kubectl api-versions

Tha am poileasaidh sgrùdaidh a leanas air a thoirt seachad mar dhearbhadh air na cleachdaidhean as fheàrr ann an Sgrìobhainnean Alibaba Cloud:

apiVersion: audit.k8s.io/v1beta1
kind: Policy
# Не логировать стадию RequestReceived
omitStages:
  - "RequestReceived"
rules:
  # Не логировать события, считающиеся малозначительными и не опасными:
  - level: None
    users: ["system:kube-proxy"]
    verbs: ["watch"]
    resources:
      - group: "" # это api group с пустым именем, к которому относятся
                  # базовые ресурсы Kubernetes, называемые “core”
        resources: ["endpoints", "services"]
  - level: None
    users: ["system:unsecured"]
    namespaces: ["kube-system"]
    verbs: ["get"]
    resources:
      - group: "" # core
        resources: ["configmaps"]
  - level: None
    users: ["kubelet"]
    verbs: ["get"]
    resources:
      - group: "" # core
        resources: ["nodes"]
  - level: None
    userGroups: ["system:nodes"]
    verbs: ["get"]
    resources:
      - group: "" # core
        resources: ["nodes"]
  - level: None
    users:
      - system:kube-controller-manager
      - system:kube-scheduler
      - system:serviceaccount:kube-system:endpoint-controller
    verbs: ["get", "update"]
    namespaces: ["kube-system"]
    resources:
      - group: "" # core
        resources: ["endpoints"]
  - level: None
    users: ["system:apiserver"]
    verbs: ["get"]
    resources:
      - group: "" # core
        resources: ["namespaces"]
  # Не логировать обращения к read-only URLs:
  - level: None
    nonResourceURLs:
      - /healthz*
      - /version
      - /swagger*
  # Не логировать сообщения, относящиеся к типу ресурсов “события”:
  - level: None
    resources:
      - group: "" # core
        resources: ["events"]
  # Ресурсы типа Secret, ConfigMap и TokenReview могут содержать  секретные данные,
  # поэтому логируем только метаданные связанных с ними запросов
  - level: Metadata
    resources:
      - group: "" # core
        resources: ["secrets", "configmaps"]
      - group: authentication.k8s.io
        resources: ["tokenreviews"]
  # Действия типа get, list и watch могут быть ресурсоёмкими; не логируем их
  - level: Request
    verbs: ["get", "list", "watch"]
    resources:
      - group: "" # core
      - group: "admissionregistration.k8s.io"
      - group: "apps"
      - group: "authentication.k8s.io"
      - group: "authorization.k8s.io"
      - group: "autoscaling"
      - group: "batch"
      - group: "certificates.k8s.io"
      - group: "extensions"
      - group: "networking.k8s.io"
      - group: "policy"
      - group: "rbac.authorization.k8s.io"
      - group: "settings.k8s.io"
      - group: "storage.k8s.io"
  # Уровень логирования по умолчанию для стандартных ресурсов API
  - level: RequestResponse
    resources:
      - group: "" # core
      - group: "admissionregistration.k8s.io"
      - group: "apps"
      - group: "authentication.k8s.io"
      - group: "authorization.k8s.io"
      - group: "autoscaling"
      - group: "batch"
      - group: "certificates.k8s.io"
      - group: "extensions"
      - group: "networking.k8s.io"
      - group: "policy"
      - group: "rbac.authorization.k8s.io"
      - group: "settings.k8s.io"
      - group: "storage.k8s.io"
  # Уровень логирования по умолчанию для всех остальных запросов
  - level: Metadata

Is e deagh eisimpleir eile de phoileasaidh sgrùdaidh pròifil air a chleachdadh ann an TAG.

Gus dèiligeadh gu sgiobalta ri tachartasan sgrùdaidh, tha e comasach cunntas a thoirt air cnag-lìn. Tha a’ chùis seo air a chòmhdach ann an sgrìobhainnean oifigeil, fàgaidh mi e taobh a-muigh raon an artaigil seo.

Builean

Tha an artaigil a’ toirt sealladh farsaing air dòighean tèarainteachd bunaiteach ann an cruinneachaidhean Kubernetes, a leigeas leat cunntasan cleachdaiche pearsanaichte a chruthachadh, na còraichean aca a sgaradh, agus na gnìomhan aca a chlàradh. Tha mi an dòchas gum bi e feumail dhaibhsan a tha mu choinneamh nan cùisean sin ann an teòiridh no ann an cleachdadh. Tha mi cuideachd a 'moladh gun leugh thu an liosta de stuthan eile air a' chuspair tèarainteachd ann an Kubernetes, a tha air a thoirt seachad ann an "PS" - 's dòcha nam measg gheibh thu am fiosrachadh riatanach mu na duilgheadasan a tha buntainneach dhut.

PS

Leugh cuideachd air ar blog:

Source: www.habr.com

Cuir beachd ann