നിയമങ്ങൾ കോഡായി: ഒപിഎ, കൈവേർനോ, ബിൽറ്റ് ഇൻ പോളിസികൾ
വിക്കിയിൽ ഇനി "ദയവായി ഏറ്റവും പുതിയ ടാഗ് ഉപയോഗിക്കരുത്" എന്നൊന്നും വേണ്ട. അത് ഓട്ടോമാറ്റിക്കായി നടപ്പാക്കുക.
വിക്കിയിൽ ഇനി "ദയവായി ഏറ്റവും പുതിയ ടാഗ് ഉപയോഗിക്കരുത്" എന്നൊന്നും വേണ്ട. അത് ഓട്ടോമാറ്റിക്കായി നടപ്പാക്കുക.

എല്ലാ സംഘടനയ്ക്കും നിയമങ്ങളുണ്ട്. കണ്ടെയ്നറുകൾ റൂട്ട് ആയി പ്രവർത്തിക്കരുത്. ഓരോ വിന്യാസത്തിനും ഒരു ഉടമ ലേബല് വേണം. നമ്മുടെ രജിസ്ട്രിയിൽ നിന്നായിരിക്കണം ചിത്രങ്ങള് വന്നത്. കുറഞ്ഞത് രണ്ട് പകർപ്പുകളെങ്കിലും വേണം. സാധാരണയായി ഈ നിയമങ്ങൾ വിക്കി പേജിൽ ഉണ്ടാകും, അവ വിക്കിപേജുകൾ വായിക്കുന്നതുപോലെ കൃത്യമായി പിന്തുടരും.
കോഡായിട്ടുള്ള നയം ആ നിയമങ്ങളെ കമ്പ്യൂട്ടർ നടപ്പിലാക്കുന്ന ഒന്നാക്കി മാറ്റുന്നു, ഓരോ മാറ്റത്തിലും, ആരും അവരെ ഓർക്കാതെ.
കുബർനെറ്റിന് പ്രവേശന നിയന്ത്രണം: ഓരോ സൃഷ്ടിക്കൽ അല്ലെങ്കിൽ അപ്ഡേറ്റ് അഭ്യർത്ഥനയും സൂക്ഷിക്കുന്നതിനുമുമ്പ് പരിശോധിക്കാം (സാധുവാക്കാം) അല്ലെങ്കിൽ പരിഷ്ക്കരിക്കാം (മ്യൂട്ടേറ്റ് ചെയ്യാം). പോളിസി എഞ്ചിനുകൾ അവിടെ പ്ലഗ് ഇൻ ചെയ്യുന്നു.
കിവെർനോ, ഒരു സി. എൻ. സി. എഫ്. പ്രോജക്ട്, നിങ്ങളെ കുബർനെറ്റസ് റിസോഴ്സുകളായി നയങ്ങൾ എഴുതാൻ അനുവദിക്കുന്നു. നിങ്ങള് ക്ക് ഒരു വിന്യാസം വായിക്കാൻ കഴിയുമെങ്കില് , നിങ്ങള് ക്ക് ഒരു കൈവെര് നോ നയവും വായിക്കാം:
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: disallow-latest-tag
spec:
validationFailureAction: Enforce
rules:
- name: require-image-tag
match:
any:
- resources:
kinds: ["Pod"]
validate:
message: "Images must use a specific version tag, not 'latest'."
pattern:
spec:
containers:
- image: "!*:latest"
കിവര് നോക്കും കഴിയും. മാറ്റം (സ്ഥിരസ്ഥിതി ലേബലുകളോ സുരക്ഷാ ക്രമീകരണങ്ങളോ ചേർക്കുക) സൃഷ്ടിക്കുക വിഭവങ്ങള് (ഓരോ പുതിയ നാമമേഖലയിലും ഒരു സ്ഥിരസ്ഥിതി നെറ്റ്വർക്ക് പോളിസി സൃഷ്ടിക്കുക), ഒപ്പം ചിത്രത്തിന്റെ ഒപ്പ് പരിശോധിക്കുക.
ഓപ്പൺ പോളിസി ഏജന്റ് (ഒപിഎ), സിഎൻസിഎഫ് പദ്ധതിയുമാണ്, പൊതുവായ ഉദ്ദേശ്യം ഉള്ള ഒരു പോളിസി എഞ്ചിനാണ്. റെഗോ. ഗേറ്റ് കീപ്പർ അത് കുബർനെറ്റസുമായി സംയോജിപ്പിക്കുന്നു. റെഗോ വളരെ ശക്തമാണ്, കുബർനെറ്റസിനെക്കാൾ വളരെ അപ്പുറമാണ് പ്രവർത്തിക്കുന്നത് (എപിഐകൾ, ടെറാഫോർം പ്ലാനുകൾ, സിഐ പൈപ്പ്ലൈനുകൾ), പക്ഷേ ഇതിന് ഒരു പഠന വക്രമുണ്ട്.
package k8srequiredlabels
violation[{"msg": msg}] {
required := {"owner", "app"}
provided := {label | input.review.object.metadata.labels[label]}
missing := required - provided
count(missing) > 0
msg := sprintf("Missing required labels: %v", [missing])
}
കുബർനെറ്റിന് ഇപ്പോൾ സ്വന്തം നയ സംവിധാനമുണ്ട്. പ്രവേശന നയം സാധൂകരിക്കുന്നുപതിപ്പ് 1.30 മുതൽ സ്ഥിരതയുള്ളതാണ്. നിയമങ്ങൾ എഴുതിയിരിക്കുന്നത് സി. ഇ. എൽ (Common Expression Language) കൂടാതെ API സെർവറിനുള്ളിൽ പ്രവർത്തിപ്പിക്കുകയും ചെയ്യുന്നു, ഇൻസ്റ്റാൾ ചെയ്യാൻ അധിക ഘടകങ്ങളൊന്നുമില്ലാതെഃ
apiVersion: admissionregistration.k8s.io/v1
kind: ValidatingAdmissionPolicy
metadata:
name: require-replicas-in-prod
spec:
matchConstraints:
resourceRules:
- apiGroups: ["apps"]
apiVersions: ["v1"]
operations: ["CREATE", "UPDATE"]
resources: ["deployments"]
validations:
- expression: "object.spec.replicas >= 2"
message: "Production deployments need at least 2 replicas."
(A ValidatingAdmissionPolicyBinding പിന്നീട് അത് പ്രത്യേക നാമമേഖലകളിലേക്ക് പ്രയോഗിക്കുന്നു.
ലളിതമായ പരിശോധനാ നിയമങ്ങൾക്കാണ് ഇത് അനുയോജ്യം. മ്യൂട്ടേഷന് , ജനറേഷൻ, ഇമേജ് പരിശോധന, റിപ്പോർട്ടിംഗ് എന്നിവയ്ക്കായി, കെയ്വർനോ അല്ലെങ്കിൽ ഗേറ്റ്കീപ്പർ ഇനിയും കൂടുതൽ വാഗ്ദാനം ചെയ്യുന്നു. രണ്ട് എഞ്ചിനുകളും CEL സ്വീകരിക്കുന്നു.
വിക്കിയിലെ ഒരു നിയമം ഒരു നിർദ്ദേശമാണ്. പ്രവേശന നയത്തിലെ ഒരു നിയമം ഒരു ഗ്യാരണ്ടിയാണ്.
മിക്ക ക്ലസ്റ്ററുകളിലും നല്ലൊരു സ്റ്റാർട്ടർ സെറ്റ്:
latest ചിത്ര ടാഗുകൾ.owner, app, ചിലപ്പോൾ cost-center.ഇവയിൽ പലതും കൈവേർനോ നയശാലയിലും ഗേറ്റ്കീപ്പർ ലൈബ്രറിയിലും ലഭ്യമാണ്.
ശത്രുക്കളെ ഉണ്ടാക്കാനുള്ള ഏറ്റവും വേഗതയേറിയ വഴി വെള്ളിയാഴ്ചകളിൽ 20 പോളിസികൾ നിർബന്ധിതമായി ഓണാക്കുക എന്നതാണ്. പകരം:
Auditഗേറ്റ്കീപ്പറുടെ dryrun അല്ലെങ്കില് warn, അല്ലെങ്കിൽ Warn/Audit പ്രവേശന നയം സാധൂകരിക്കാനുള്ള നടപടികൾ. ലംഘനങ്ങൾ റിപ്പോർട്ട് ചെയ്യപ്പെടുന്നു, ഒന്നും തടയപ്പെടുന്നില്ല.kyverno test) നയങ്ങൾ നടപ്പിലാക്കുന്നതിനായി സാമ്പിൾ റിസോഴ്സുകൾ ഉപയോഗിച്ച്.opa test റെഗോ യൂണിറ്റ് ടെസ്റ്റുകള് ക്ക് വേണ്ടി.മിക്ക ടീമുകളും തുടങ്ങുന്ന സമയത്ത്, കിവെര് നോ ഏറ്റവും എളുപ്പമുള്ളത്: YAML നയങ്ങൾ, വലിയ ലൈബ്രറി, മ്യൂട്ടേഷനും ഇമേജ് പരിശോധനയും ഉൾപ്പെടുത്തിയിട്ടുണ്ട്. ഉപയോഗം പ്രവേശന നയം സാധൂകരിക്കുന്നു മറ്റൊരു ഘടകം ആവശ്യമില്ലാത്ത ലളിതമായ നിയമങ്ങൾക്കായി. തിരഞ്ഞെടുക്കുക ഒപിഎ കുബർനെറ്റസ്, ടെറാഫോർം, എപിഐ എന്നിവയിലുടനീളം ഒരു നയ ഭാഷ വേണമെങ്കിൽ.
എന്റെ അഭിപ്രായം: ഒരു തവണ കോഡിൽ നിയമങ്ങൾ എഴുതി, ക്ലസ്റ്ററിന് അവ ഓർമ്മിക്കാൻ അനുവദിക്കുക.
ഡെസ്ലി