2016-12-25 6 views
28

मैं type:deployment साथ फली बनाने की है लेकिन मुझे लगता है कि कुछ प्रलेखन type:pod, और अधिक विशेष the documentation for multi-container pods का उपयोग करता देखें:कुबर्नेट्स में एक फली और तैनाती के बीच क्या अंतर है?

apiVersion: extensions/v1beta1 
kind: Deployment 
metadata: 
    name: "" 
spec: 
    replicas: 3 
    template: 
    metadata: 
     labels: 
     app: "" 
    spec: 
     containers: 
     etc 

मैं फली देखा:

apiVersion: v1 
kind: Pod 
metadata: 
    name: "" 
    labels: 
    name: "" 
    namespace: "" 
    annotations: [] 
    generateName: "" 
spec: 
    ? "// See 'The spec schema' for details." 
    : ~ 

लेकिन फली बनाने के लिए मैं सिर्फ a deployment type उपयोग कर सकते हैं प्रलेखन कहता है:

निर्माण कमांड का उपयोग सीधे पॉड बनाने के लिए किया जा सकता है, या यह परिनियोजन के माध्यम से एक पॉड या फली बना सकता है। इसकी अत्यधिक अनुशंसा की जाती है कि आप अपने फली बनाने के लिए तैनाती का उपयोग करते हैं। यह असफल फोड के लिए देखता है और निर्दिष्ट संख्या को बनाए रखने के लिए आवश्यक नए फोड शुरू करेगा। यदि आप अपने पॉड की निगरानी करने के लिए तैनाती नहीं चाहते हैं (उदाहरण के लिए आपका पॉड गैर-लगातार डेटा लिख ​​रहा है जो पुनरारंभ नहीं होगा, या आपका पॉड बहुत छोटा रहता है), तो आप एक पॉड बना सकते हैं सीधे कमांड कमांड के साथ।

नोट: हम फोड बनाने के लिए एक परिनियोजन का उपयोग करने की सलाह देते हैं। यदि आप तैनाती नहीं बनाना चाहते हैं तो आपको केवल नीचे दिए गए निर्देशों को का उपयोग करना चाहिए।

लेकिन यह सवाल उठाता है कि kind:pod क्या है? क्या आप किसी भी तरह तैनाती में फली का संदर्भ दे सकते हैं? मुझे कोई रास्ता नहीं मिला। ऐसा लगता है कि आपको पॉड्स के साथ क्या मिलता है कुछ अतिरिक्त मेटाडाटा है लेकिन replica या पुनरारंभ नीति जैसे कोई भी तैनाती विकल्प नहीं है। एक पॉड कितना अच्छा है जो डेटा को जारी नहीं रखता है, फिर से शुरू होता है? मुझे लगता है कि मैं एक तैनाती के साथ एक बहु कंटेनर फली भी बनाने में सक्षम हो जाएगा।

उत्तर

32

दोनों पोड और परिनियोजन कुबेरनेट एपीआई में पूर्ण वस्तुएं हैं। परिनियोजन ReplicaSets के माध्यम से Pods बनाने का प्रबंधन करता है। यह क्या उबालता है कि तैनाती टेम्पलेट से ली गई spec के साथ Pods बना देगा। यह असंभव है कि आपको कभी भी उत्पादन के उपयोग के लिए सीधे पॉड्स बनाने की आवश्यकता होगी।

+0

धन्यवाद में था, लेकिन जब आप कभी भी सीधे फली बनाएंगे? –

+2

एक कस्टम नियंत्रक होने के कारण एक ऐसा मामला है जहां आप शायद उच्च स्तर के अबास्ट्रक्शन में से किसी एक का उपयोग करने के बजाय सीधे पॉड्स बनाना और प्रबंधित करना चाहते हैं। –

+3

@BjornTipling मैं तैनाती के बिना फली बना देता हूं जब मुझे हटाए जाने पर फली बनाने के लिए कुबर्नेट की आवश्यकता नहीं होती है। एक उपयोग मामला पहले एक फली बनाकर चीजों का परीक्षण करना है। – user2526795

15

राडेक का जवाब बहुत अच्छा है, लेकिन मैं अपने अनुभव से में पिच चाहते हैं, तो आप तरहफली के साथ एक वस्तु का उपयोग लगभग कभी नहीं होगा, क्योंकि वह व्यवहार में कोई मतलब नहीं है।

चूंकि आपने एक तैनाती वस्तु की जरूरत है - या अन्य Kubernetes एपीआई वस्तुओं एक प्रतिकृति नियंत्रक या replicaset तरह - प्रतिकृतियां (फली) को जीवित रखने की जरूरत है (कि Kubernetes का उपयोग कर के बिंदु की तरह है)।

आप क्या कर आवेदन के लिए व्यवहार में उपयोग करेगा कर रहे हैं:

  1. तैनाती वस्तु कि कुछ अन्य विनिर्देशों के साथ अपने ऐप्लिकेशन कंटेनर की मेजबानी करेगा (यदि आप अपने एप्लिकेशन कंटेनर/कंटेनर निर्दिष्ट करेगा जहां)।

  2. सेवा वस्तु (है कि एक समूहीकरण वस्तु की तरह है और यह फली एक निश्चित लेबल वाली के लिए एक तथाकथित आभासी आईपी (क्लस्टर आईपी) देता है - और उन फली मूल रूप से ऐप्लिकेशन कंटेनर है कि आप के साथ तैनात हैं पूर्व तैनाती ऑब्जेक्ट)।

आप सेवा वस्तु है, क्योंकि तैनाती वस्तु से फली, मारा जा सकता है के लिए बढ़ाया गया है और नीचे आप उनके IP पते पर भरोसा नहीं कर सकते हैं की जरूरत है, और है, क्योंकि वे लगातार नहीं होगा ।

तो आपको सेवा जैसी किसी ऑब्जेक्ट की आवश्यकता है, जो उन फोड को एक स्थिर आईपी देता है।

बस आपको फली के आसपास कुछ संदर्भ देना चाहता था, ताकि आप जान सकें कि चीजें कैसे काम करती हैं।

आशा है कि आप के लिए कुछ चीजें साफ करता है, नहीं बहुत पहले मैं अपने जूते :)

+0

अच्छा जवाब, क्या हमें एक प्रतिकृति सेट या एक प्रतिकृति नियंत्रक की आवश्यकता है क्योंकि मैंने तैनाती ऑब्जेक्ट को प्रतिलिपि को नियंत्रित करने वाली इन वस्तुओं को लपेट लिया है? –

+0

हां, परिनियोजन ऑब्जेक्ट प्रतिकृति को संभालता है, लेकिन आप इस तरह के ऑब्जेक्ट का उपयोग भी कर सकते हैं: प्रतिकृति नियंत्रक या प्रकार: अगर आप वास्तव में चाहते थे तो प्रतिकृति सेट करें, लेकिन मैंने अभ्यास में बहुत कुछ नहीं देखा है ... –

संबंधित मुद्दे