• బేసిక్స్ నుండి కంటైనర్లు మరియు కుబెర్నెట్లతో ప్రారంభించండి: టాపిక్ తెలుసుకోవడానికి ప్రత్యేక అనుభవం అవసరం లేదు. • మీ స్వంత క్లస్టర్లను అమలు చేయండి లేదా Amazon, Google మొదలైన వాటి నుండి నిర్వహించబడే Kubernetes సేవను ఎంచుకోండి. • కంటైనర్ జీవితచక్రం మరియు వనరుల వినియోగాన్ని నిర్వహించడానికి Kubernetesని ఉపయోగించండి. • ఖర్చు, పనితీరు, స్థితిస్థాపకత, శక్తి మరియు స్కేలబిలిటీ ఆధారంగా క్లస్టర్లను ఆప్టిమైజ్ చేయండి. • మీ అప్లికేషన్లను అభివృద్ధి చేయడానికి, పరీక్షించడానికి మరియు అమలు చేయడానికి ఉత్తమ సాధనాలను తెలుసుకోండి. • భద్రత మరియు నియంత్రణను నిర్ధారించడానికి ప్రస్తుత పరిశ్రమ పద్ధతులను ప్రభావితం చేయండి. • మీ కంపెనీ అంతటా DevOps సూత్రాలను అమలు చేయండి, తద్వారా డెవలప్మెంట్ బృందాలు మరింత సరళంగా, త్వరగా మరియు సమర్ధవంతంగా పని చేస్తాయి.
పుస్తకం ఎవరి కోసం?
సర్వర్లు, అప్లికేషన్లు మరియు సేవలకు బాధ్యత వహించే అడ్మినిస్ట్రేషన్ డిపార్ట్మెంట్ల ఉద్యోగులకు, అలాగే కొత్త క్లౌడ్ సేవలను నిర్మించడంలో లేదా ఇప్పటికే ఉన్న అప్లికేషన్లను కుబెర్నెట్స్ మరియు క్లౌడ్కి తరలించడంలో పాల్గొనే డెవలపర్లకు ఈ పుస్తకం చాలా సందర్భోచితంగా ఉంటుంది. చింతించకండి, కుబెర్నెట్స్ లేదా కంటైనర్లతో ఎలా పని చేయాలో మీరు తెలుసుకోవలసిన అవసరం లేదు - మేము మీకు ప్రతిదీ నేర్పుతాము.
అనుభవజ్ఞులైన కుబెర్నెటెస్ వినియోగదారులు కూడా RBAC, నిరంతర విస్తరణ, సున్నితమైన డేటా నిర్వహణ మరియు పరిశీలన వంటి అంశాల లోతైన కవరేజీతో చాలా విలువను కనుగొంటారు. మీ నైపుణ్యాలు మరియు అనుభవంతో సంబంధం లేకుండా పుస్తకం యొక్క పేజీలు ఖచ్చితంగా మీ కోసం ఆసక్తికరమైన విషయాలను కలిగి ఉంటాయని మేము ఆశిస్తున్నాము.
పుస్తకం ఏ ప్రశ్నలకు సమాధానమిస్తుంది?
పుస్తకాన్ని ప్లాన్ చేస్తున్నప్పుడు మరియు వ్రాసేటప్పుడు, మేము వందలాది మంది వ్యక్తులతో క్లౌడ్ టెక్నాలజీ మరియు కుబెర్నెట్స్ గురించి చర్చించాము, పరిశ్రమ నాయకులు మరియు నిపుణులతో పాటు పూర్తి అనుభవం లేని వారితో మాట్లాడాము. ఈ పబ్లికేషన్లో వారు సమాధానాలు చూడాలనుకునే ఎంచుకున్న ప్రశ్నలు క్రింద ఉన్నాయి.
- “మీరు ఈ సాంకేతికతపై ఎందుకు సమయాన్ని వెచ్చించాలనే దానిపై నాకు ఆసక్తి ఉంది. ఇది నాకు మరియు నా బృందం ఏ సమస్యలను పరిష్కరించడంలో సహాయపడుతుంది?
- "కుబెర్నెటెస్ ఆసక్తికరంగా ఉంది, కానీ ప్రవేశానికి చాలా ఎక్కువ అవరోధం ఉంది. ఒక సాధారణ ఉదాహరణను సిద్ధం చేయడం కష్టం కాదు, అయితే తదుపరి నిర్వహణ మరియు డీబగ్గింగ్ చాలా కష్టం. వాస్తవ ప్రపంచంలో ప్రజలు కుబెర్నెట్స్ క్లస్టర్లను ఎలా నిర్వహిస్తారు మరియు మనం ఎలాంటి సమస్యలను ఎదుర్కొనే అవకాశం ఉంది అనే దానిపై మేము విశ్వసనీయమైన సలహాను పొందాలనుకుంటున్నాము."
- “ఆత్మాశ్రయ సలహా ఉపయోగకరంగా ఉంటుంది. Kubernetes పర్యావరణ వ్యవస్థ కొత్త బృందాలకు ఎంచుకోవడానికి చాలా ఎంపికలను అందిస్తుంది. ఒకే పనిని చేయడానికి అనేక మార్గాలు ఉన్నప్పుడు, ఏది ఉత్తమమో మీకు ఎలా తెలుస్తుంది? ఎలా ఎంపిక చేసుకోవాలి?
మరియు బహుశా అన్ని ప్రశ్నలలో అతి ముఖ్యమైనది:
- "నా కంపెనీకి అంతరాయం కలిగించకుండా నేను కుబెర్నెట్స్ని ఎలా ఉపయోగించగలను?"
సారాంశం. కాన్ఫిగరేషన్ మరియు రహస్య వస్తువులు
కుబెర్నెట్స్ అప్లికేషన్ యొక్క లాజిక్ను దాని కాన్ఫిగరేషన్ నుండి వేరు చేయగల సామర్థ్యం (అంటే, కాలక్రమేణా మారే ఏదైనా విలువలు లేదా సెట్టింగ్ల నుండి) చాలా ఉపయోగకరంగా ఉంటుంది. కాన్ఫిగరేషన్ విలువలు సాధారణంగా పర్యావరణ-నిర్దిష్ట సెట్టింగ్లు, మూడవ పక్ష సేవ DNS చిరునామాలు మరియు ప్రమాణీకరణ ఆధారాలను కలిగి ఉంటాయి.
వాస్తవానికి, ఇవన్నీ నేరుగా కోడ్లో ఉంచబడతాయి, కానీ ఈ విధానం తగినంతగా అనువైనది కాదు. ఉదాహరణకు, కాన్ఫిగరేషన్ విలువను మార్చడం వలన మీరు మీ కోడ్ని మళ్లీ నిర్మించి, అమలు చేయాల్సి ఉంటుంది. కాన్ఫిగరేషన్ను కోడ్ నుండి వేరు చేసి ఫైల్ లేదా ఎన్విరాన్మెంట్ వేరియబుల్స్ నుండి చదవడం మరింత మెరుగైన పరిష్కారం.
Kubernetes కాన్ఫిగరేషన్ని నిర్వహించడానికి అనేక విభిన్న మార్గాలను అందిస్తుంది. ముందుగా, మీరు పాడ్ రేపర్ స్పెసిఫికేషన్లో పేర్కొన్న ఎన్విరాన్మెంట్ వేరియబుల్స్ ద్వారా అప్లికేషన్కు విలువలను పంపవచ్చు (పేజీ 192లో “ఎన్విరాన్మెంట్ వేరియబుల్స్” చూడండి). రెండవది, కాన్ఫిగరేషన్ డేటా నేరుగా కుబెర్నెట్స్లో కాన్ఫిగ్మ్యాప్ మరియు సీక్రెట్ ఆబ్జెక్ట్లను ఉపయోగించి నిల్వ చేయబడుతుంది.
ఈ అధ్యాయంలో, మేము ఈ వస్తువులను వివరంగా విశ్లేషిస్తాము మరియు డెమో అప్లికేషన్ని ఉపయోగించి కాన్ఫిగరేషన్ మరియు సున్నితమైన డేటాను నిర్వహించడానికి కొన్ని ఆచరణాత్మక విధానాలను పరిశీలిస్తాము.
కాన్ఫిగరేషన్ మారినప్పుడు పాడ్ షెల్లను నవీకరిస్తోంది
మీరు మీ క్లస్టర్లో విస్తరణను కలిగి ఉన్నారని మరియు మీరు దాని కాన్ఫిగ్మ్యాప్లో కొన్ని విలువలను మార్చాలనుకుంటున్నారని ఊహించుకోండి. మీరు హెల్మ్ చార్ట్ని ఉపయోగిస్తే (పేజీ 102లో “హెల్మ్: కుబెర్నెట్స్ కోసం ప్యాకేజీ మేనేజర్” చూడండి), మీరు స్వయంచాలకంగా కాన్ఫిగరేషన్ మార్పును గుర్తించి, మీ పాడ్ షెల్లను ఒక చక్కని ట్రిక్లో రీలోడ్ చేయవచ్చు. మీ విస్తరణ స్పెసిఫికేషన్కు కింది ఉల్లేఖనాన్ని జోడించండి:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") .
| sha256sum }}
డిప్లాయ్మెంట్ టెంప్లేట్ ఇప్పుడు కాన్ఫిగరేషన్ పారామితుల చెక్సమ్ని కలిగి ఉంది: పారామితులు మార్చబడితే, మొత్తం నవీకరించబడుతుంది. మీరు హెల్మ్ అప్గ్రేడ్ని అమలు చేస్తే, హెల్మ్ డిప్లాయ్మెంట్ స్పెసిఫికేషన్ మారిందని మరియు అన్ని పాడ్ షెల్లను రీస్టార్ట్ చేస్తుంది.
కుబెర్నెట్స్లో సున్నితమైన డేటా
కాన్ఫిగరేషన్ డేటాను క్లస్టర్లో నిల్వ చేయడానికి మరియు యాక్సెస్ చేయడానికి కాన్ఫిగమ్యాప్ ఆబ్జెక్ట్ అనువైన యంత్రాంగాన్ని అందిస్తుందని మాకు ఇప్పటికే తెలుసు. అయినప్పటికీ, చాలా అప్లికేషన్లు పాస్వర్డ్లు లేదా API కీల వంటి సున్నితమైన మరియు సున్నితమైన సమాచారాన్ని కలిగి ఉంటాయి. ఇది కాన్ఫిగ్మ్యాప్లో కూడా నిల్వ చేయబడుతుంది, అయితే ఈ పరిష్కారం సరైనది కాదు.
బదులుగా, కుబెర్నెటెస్ సున్నితమైన డేటాను నిల్వ చేయడానికి రూపొందించిన ప్రత్యేక రకమైన వస్తువును అందిస్తుంది: సీక్రెట్. తరువాత, ఈ వస్తువును మా డెమో అప్లికేషన్లో ఎలా ఉపయోగించవచ్చో ఉదాహరణగా చూద్దాం.
ప్రారంభించడానికి, సీక్రెట్ ఆబ్జెక్ట్ కోసం కుబెర్నెట్స్ మానిఫెస్ట్ను చూడండి (hello-secret-env/k8s/secret.yaml చూడండి):
apiVersion: v1
kind: Secret
metadata:
name: demo-secret
stringData:
magicWord: xyzzy
ఈ ఉదాహరణలో, magicWord ప్రైవేట్ కీ xyzzy (en.wikipedia.org/wiki/Xyzzy_(కంప్యూటింగ్)). xyzzy అనే పదం సాధారణంగా కంప్యూటర్ల ప్రపంచంలో చాలా ఉపయోగకరంగా ఉంటుంది. కాన్ఫిగ్మ్యాప్ మాదిరిగానే, మీరు రహస్య వస్తువులో బహుళ కీలు మరియు విలువలను నిల్వ చేయవచ్చు. ఇక్కడ, సరళత కోసం, మేము ఒక కీ-విలువ జతని మాత్రమే ఉపయోగిస్తాము.
సీక్రెట్ ఆబ్జెక్ట్లను ఎన్విరాన్మెంట్ వేరియబుల్స్గా ఉపయోగించడం
ConfigMap వలె, సీక్రెట్ ఆబ్జెక్ట్ను కంటైనర్లో ఎన్విరాన్మెంట్ వేరియబుల్స్గా లేదా దాని డిస్క్లో ఫైల్గా అందుబాటులో ఉంచవచ్చు. కింది ఉదాహరణలో, మేము సీక్రెట్ నుండి విలువకు పర్యావరణ వేరియబుల్ను కేటాయిస్తాము:
spec:
containers:
- name: demo
image: cloudnatived/demo:hello-secret-env
ports:
- containerPort: 8888
env:
- name: GREETING
valueFrom:
secretKeyRef:
name: demo-secret
key: magicWord
మానిఫెస్ట్లను వర్తింపజేయడానికి డెమో రిపోజిటరీలో కింది ఆదేశాన్ని అమలు చేయండి:
kubectl apply -f hello-secret-env/k8s/
deployment.extensions "demo" configured
secret "demo-secret" created
మునుపటిలాగా, మీ బ్రౌజర్లో ఫలితాన్ని చూడటానికి స్థానిక పోర్ట్ని విస్తరణకు ఫార్వార్డ్ చేయండి:
kubectl port-forward deploy/demo 9999:8888
Forwarding from 127.0.0.1:9999 -> 8888
Forwarding from [::1]:9999 -> 8888
చిరునామాను తెరిచేటప్పుడు
The magic word is "xyzzy"
ఫైల్లకు రహస్య వస్తువులను వ్రాయడం
ఈ ఉదాహరణలో, మేము సీక్రెట్ ఆబ్జెక్ట్ను కంటైనర్కు ఫైల్గా అటాచ్ చేస్తాము. కోడ్ డెమో రిపోజిటరీ యొక్క హలో-సీక్రెట్-ఫైల్ ఫోల్డర్లో ఉంది.
సీక్రెట్ని ఫైల్గా కనెక్ట్ చేయడానికి, మేము ఈ క్రింది విస్తరణను ఉపయోగిస్తాము:
spec:
containers:
- name: demo
image: cloudnatived/demo:hello-secret-file
ports:
- containerPort: 8888
volumeMounts:
- name: demo-secret-volume
mountPath: "/secrets/"
readOnly: true
volumes:
- name: demo-secret-volume
secret:
secretName: demo-secret
pలో "కాన్ఫిగమ్యాప్ ఆబ్జెక్ట్ల నుండి కాన్ఫిగరేషన్ ఫైల్లను సృష్టించడం" అనే ఉపవిభాగంలో వలె. 240, మేము ఒక వాల్యూమ్ను (ఈ సందర్భంలో డెమో-సీక్రెట్-వాల్యూమ్) సృష్టిస్తాము మరియు స్పెసిఫికేషన్లోని వాల్యూమ్మౌంట్ల విభాగంలోని కంటైనర్కు మౌంట్ చేస్తాము. మౌంట్పాత్ ఫీల్డ్ /రహస్యాలు, కాబట్టి సీక్రెట్ ఆబ్జెక్ట్లో నిర్వచించిన ప్రతి కీ/విలువ జత కోసం కుబెర్నెట్స్ ఈ ఫోల్డర్లో ఒక ఫైల్ను సృష్టిస్తుంది.
మా ఉదాహరణలో, మేము magicWord అని పిలువబడే ఒక కీ-విలువ జతని మాత్రమే నిర్వచించాము, కాబట్టి మానిఫెస్ట్ కంటైనర్లోని సున్నితమైన డేటాతో ఒకే రీడ్-ఓన్లీ ఫైల్ /secrets/magicWordని సృష్టిస్తుంది.
మీరు ఈ మానిఫెస్ట్ని మునుపటి ఉదాహరణ వలె వర్తింపజేస్తే, మీరు అదే ఫలితాన్ని పొందాలి:
The magic word is "xyzzy"
సీక్రెట్ ఆబ్జెక్ట్స్ చదవడం
మునుపటి విభాగంలో, మేము ConfigMap యొక్క కంటెంట్లను ప్రదర్శించడానికి kubectl description ఆదేశాన్ని ఉపయోగించాము. సీక్రెట్తో కూడా అదే చేయవచ్చా?
kubectl describe secret/demo-secret
Name: demo-secret
Namespace: default
Labels: <none>
Annotations:
Type: Opaque
Data
====
magicWord: 5 bytes
డేటా స్వయంగా ప్రదర్శించబడదని దయచేసి గమనించండి. కుబెర్నెటెస్లోని రహస్య వస్తువులు అపారదర్శక రకం, అంటే వాటి కంటెంట్లు kubectl వర్ణించే అవుట్పుట్, లాగ్ ఎంట్రీలు లేదా టెర్మినల్లో చూపబడవు, అనుకోకుండా సున్నితమైన సమాచారాన్ని బహిర్గతం చేయడం అసాధ్యం.
సున్నితమైన డేటా యొక్క ఎన్కోడ్ చేసిన YAML సంస్కరణను వీక్షించడానికి, kubectl get ఆదేశాన్ని ఉపయోగించండి:
kubectl get secret/demo-secret -o yaml
apiVersion: v1
data:
magicWord: eHl6enk=
kind: Secret
metadata:
...
type: Opaque
base64
eHl6enk= అంటే ఏమిటి, మా అసలు విలువ నుండి పూర్తిగా భిన్నమైనది? ఇది నిజానికి ఒక రహస్య వస్తువు, ఇది బేస్64 ఎన్కోడింగ్లో సూచించబడుతుంది. Base64 అనేది ఏకపక్ష బైనరీ డేటాను అక్షరాల స్ట్రింగ్గా ఎన్కోడింగ్ చేయడానికి ఒక పథకం.
సున్నితమైన సమాచారం బైనరీ కావచ్చు మరియు అవుట్పుట్ కాకపోవచ్చు (TLS ఎన్క్రిప్షన్ కీ మాదిరిగానే), రహస్య వస్తువులు ఎల్లప్పుడూ బేస్ 64 ఆకృతిలో నిల్వ చేయబడతాయి.
టెక్స్ట్ beHl6enk= అనేది మా రహస్య పదం xyzzy యొక్క బేస్64 ఎన్కోడ్ వెర్షన్. టెర్మినల్లో base64 —decode ఆదేశాన్ని అమలు చేయడం ద్వారా మీరు దీన్ని ధృవీకరించవచ్చు:
echo "eHl6enk=" | base64 --decode
xyzzy
కాబట్టి, టెర్మినల్ లేదా లాగ్ ఫైల్లలో సున్నితమైన డేటాను అనుకోకుండా అవుట్పుట్ చేయకుండా Kubernetes మిమ్మల్ని రక్షిస్తున్నప్పుడు, మీరు ఒక నిర్దిష్ట నేమ్స్పేస్లో సీక్రెట్ ఆబ్జెక్ట్లపై అనుమతులను చదివి ఉంటే, ఆ డేటా బేస్64 చేయబడి, ఆపై డీకోడ్ చేయబడుతుంది.
మీరు బేస్64 కొంత వచనాన్ని ఎన్కోడ్ చేయవలసి వస్తే (ఉదాహరణకు, దానిని రహస్యంగా ఉంచడానికి), వాదనలు లేకుండా బేస్ 64 ఆదేశాన్ని ఉపయోగించండి:
echo xyzzy | base64
eHl6enkK
రహస్య వస్తువులను యాక్సెస్ చేస్తోంది
రహస్య వస్తువులను ఎవరు చదవగలరు మరియు సవరించగలరు? ఇది RBAC, యాక్సెస్ కంట్రోల్ మెకానిజం ద్వారా నిర్ణయించబడుతుంది (మేము దీనిని 258వ పేజీలోని "పాత్ర-ఆధారిత యాక్సెస్ నియంత్రణకు పరిచయం" అనే ఉపవిభాగంలో వివరంగా చర్చిస్తాము). మీరు RBAC లేని లేదా ప్రారంభించబడని క్లస్టర్ను నడుపుతున్నట్లయితే, మీ రహస్య వస్తువులు అన్ని ఏ వినియోగదారులు మరియు కంటైనర్లకు అందుబాటులో ఉంటాయి (మీకు RBAC లేకుండా ఉత్పత్తి క్లస్టర్లు ఉండకూడదని మేము తర్వాత వివరిస్తాము).
నిష్క్రియ డేటా గుప్తీకరణ
కుబెర్నెటెస్ మొత్తం సమాచారాన్ని నిల్వ చేసే etcd డేటాబేస్కు యాక్సెస్ ఉన్న వారి గురించి ఏమిటి? API ద్వారా రహస్య వస్తువులను చదవడానికి అనుమతి లేకుండా వారు సున్నితమైన డేటాను చదవగలరా?
వెర్షన్ 1.7 నుండి, Kubernetes నిష్క్రియ డేటా గుప్తీకరణకు మద్దతు ఇస్తుంది. దీనర్థం etcd లోపల ఉన్న సున్నితమైన సమాచారం డిస్క్లో గుప్తీకరించబడి నిల్వ చేయబడుతుంది మరియు డేటాబేస్కు ప్రత్యక్ష ప్రాప్యత ఉన్నవారు కూడా చదవలేరు. దీన్ని డీక్రిప్ట్ చేయడానికి, మీకు కుబెర్నెట్స్ API సర్వర్ మాత్రమే ఉన్న కీ అవసరం. సరిగ్గా కాన్ఫిగర్ చేయబడిన క్లస్టర్లో, నిష్క్రియ ఎన్క్రిప్షన్ ప్రారంభించబడాలి.
మీ క్లస్టర్లో నిష్క్రియ గుప్తీకరణ పని చేస్తుందో లేదో మీరు ఈ విధంగా తనిఖీ చేయవచ్చు:
kubectl describe pod -n kube-system -l component=kube-apiserver |grep encryption
--experimental-encryption-provider-config=...
మీకు ప్రయోగాత్మక-ఎన్క్రిప్షన్-ప్రొవైడర్-కాన్ఫిగరేషన్ ఫ్లాగ్ కనిపించకపోతే, నిష్క్రియ గుప్తీకరణ ప్రారంభించబడదు. Google Kubernetes ఇంజిన్ లేదా ఇతర Kubernetes నిర్వహణ సేవలను ఉపయోగిస్తున్నప్పుడు, మీ డేటా వేరే మెకానిజం ఉపయోగించి గుప్తీకరించబడుతుంది, కాబట్టి ఫ్లాగ్ ఉండదు. etcd కంటెంట్ ఎన్క్రిప్ట్ చేయబడిందో లేదో తెలుసుకోవడానికి మీ కుబెర్నెట్స్ విక్రేతతో తనిఖీ చేయండి.
గోప్యమైన డేటాను నిల్వ చేస్తోంది
అత్యంత సున్నితమైన రహస్య వస్తువులు వంటి క్లస్టర్ నుండి ఎప్పటికీ తీసివేయకూడని కొన్ని కుబెర్నెట్స్ వనరులు ఉన్నాయి. హెల్మ్ మేనేజర్ అందించిన ఉల్లేఖనాన్ని ఉపయోగించి మీరు వనరును తొలగించకుండా రక్షించవచ్చు:
kind: Secret
metadata:
annotations:
"helm.sh/resource-policy": keep
సీక్రెట్ ఆబ్జెక్ట్ మేనేజ్మెంట్ స్ట్రాటజీస్
మునుపటి విభాగంలోని ఉదాహరణలో, క్లస్టర్లో నిల్వ చేయబడిన వెంటనే అనధికారిక యాక్సెస్ నుండి సున్నితమైన డేటా రక్షించబడుతుంది. కానీ మానిఫెస్ట్ ఫైల్లలో అవి సాదా వచనంగా నిల్వ చేయబడ్డాయి.
సంస్కరణ నియంత్రణలో ఉన్న ఫైల్లలో మీరు ఎప్పుడూ రహస్య సమాచారాన్ని ఉంచకూడదు. ఈ సమాచారాన్ని మీ కుబెర్నెట్స్ క్లస్టర్కి వర్తింపజేయడానికి ముందు మీరు సురక్షితంగా ఎలా నిర్వహించగలరు మరియు నిల్వ చేయవచ్చు?
మీరు మీ అప్లికేషన్లలో సున్నితమైన డేటాను నిర్వహించడానికి ఏవైనా సాధనాలు లేదా వ్యూహాలను ఎంచుకోవచ్చు, కానీ మీరు ఇప్పటికీ కనీసం క్రింది ప్రశ్నలకు సమాధానం ఇవ్వాలి.
- సెన్సిటివ్ డేటాను ఎక్కడ నిల్వ చేయాలి, తద్వారా అది అత్యంత యాక్సెస్ చేయగలదు?
- మీ యాక్టివ్ అప్లికేషన్లకు సెన్సిటివ్ డేటాను యాక్సెస్ చేయడం ఎలా?
- మీరు సున్నితమైన డేటాను భర్తీ చేసినప్పుడు లేదా సవరించినప్పుడు మీ అప్లికేషన్లకు ఏమి జరుగుతుంది?
రచయితల గురించి
జాన్ అరుండెల్ కంప్యూటర్ పరిశ్రమలో 30 సంవత్సరాల అనుభవం ఉన్న కన్సల్టెంట్. అతను క్లౌడ్-నేటివ్ ఇన్ఫ్రాస్ట్రక్చర్ మరియు కుబెర్నెట్స్పై సలహాలు ఇస్తూ, వివిధ దేశాల నుండి అనేక కంపెనీలతో కలిసి అనేక పుస్తకాలు వ్రాసాడు మరియు పని చేశాడు. తన ఖాళీ సమయంలో, అతను సర్ఫింగ్ను ఆస్వాదిస్తాడు, మంచి పిస్టల్ షూటర్, మరియు ఔత్సాహికుడిగా పియానో వాయించేవాడు. ఇంగ్లాండ్లోని కార్న్వాల్లోని ఒక అద్భుత కాటేజీలో నివసిస్తున్నారు.
జస్టిన్ డొమింగస్ — కుబెర్నెట్స్ మరియు క్లౌడ్ టెక్నాలజీలతో DevOps వాతావరణంలో పనిచేస్తున్న సిస్టమ్స్ అడ్మినిస్ట్రేషన్ ఇంజనీర్. అతను ఆరుబయట సమయం గడపడం, కాఫీ తాగడం, పీతలు తినడం మరియు కంప్యూటర్ వద్ద కూర్చోవడం ఆనందిస్తాడు. వాషింగ్టన్లోని సీటెల్లో అద్భుతమైన పిల్లి మరియు మరింత అద్భుతమైన భార్య మరియు బెస్ట్ ఫ్రెండ్ అడ్రియన్తో నివసిస్తున్నారు.
» పుస్తకం గురించి మరిన్ని వివరాలను ఇక్కడ చూడవచ్చు
»
»
Khabrozhiteley కోసం కూపన్ ఉపయోగించి 25% తగ్గింపు - Kubernetes
పుస్తకం యొక్క పేపర్ వెర్షన్ చెల్లించిన తర్వాత, ఎలక్ట్రానిక్ పుస్తకం ఇ-మెయిల్ ద్వారా పంపబడుతుంది.
మూలం: www.habr.com