2016-03-25 5 views
21

जो मैं दस्तावेज़ में बता सकता हूं, ReplicaSetDeployment चलाते समय बनाया गया है। ऐसा लगता है कि ReplicationController की स्केल अप/डाउन और ऑटो रीस्टार्ट की कुछ विशेषताओं का समर्थन करना प्रतीत होता है, लेकिन यह स्पष्ट नहीं है कि यह रोलिंग अपग्रेड या ऑटोस्केल का समर्थन करता है या नहीं।प्रतिकृतिसेट और प्रतिकृति नियंत्रक के बीच क्या अंतर है?

v1.1.8 उपयोगकर्ता पुस्तिका

से पता चलता Deploying Applications में तैनाती (जो स्वत: एक ReplicaSet बनाता है) बनाने के लिए कैसे, अभी तक kubectl get replicasets आदेश v1.2.0 तक उपलब्ध नहीं है। मुझे प्रलेखन में ReplicaSet के बारे में कोई अन्य जानकारी नहीं मिल रही है।

ReplicaSet अंततः ReplicationController को प्रतिस्थापित करेगा? मैं ReplicationController के बजाय Deployment और ReplicaSet का उपयोग क्यों करना चाहूंगा?

+1

मुझे इस समय एक ही प्रश्न है। मुझे लगता है कि तैनाती और प्रतिकृति सेट्स प्रतिकृति नियंत्रकों को प्रतिस्थापित करेंगे। बुरी बात यह है कि लगभग सभी वर्तमान दस्तावेज प्रतिकृति नियंत्रकों के बारे में है। –

उत्तर

13

प्रतिकृति सेट अगली पीढ़ी प्रतिकृति नियंत्रक है। प्रतिकृति नियंत्रक थोड़े अनिवार्य है, लेकिन प्रतिकृति सेट यथासंभव घोषणात्मक होने की कोशिश करते हैं।

1. प्रतिकृति सेट और एक प्रतिकृति नियंत्रक के बीच मुख्य अंतर अभी चयनकर्ता समर्थन है।

+--------------------------------------------------+-----------------------------------------------------+ 
|     Replica Set     |    Replication Controller    | 
+--------------------------------------------------+-----------------------------------------------------+ 
| Replica Set supports the new set-based selector. | Replication Controller only supports equality-based | 
| This gives more flexibility. for eg:    | selector. for eg:         | 
|   environment in (production, qa)   |    environment = production    | 
| This selects all resources with key equal to | This selects all resources with key equal to  | 
| environment and value equal to production or qa | environment and value equal to production   | 
+--------------------------------------------------+-----------------------------------------------------+ 

2. दूसरी बात यह है कि फली को अद्यतन करना है।

+-------------------------------------------------------+-----------------------------------------------+ 
|      Replica Set      |   Replication Controller    | 
+-------------------------------------------------------+-----------------------------------------------+ 
| rollout command is used for updating the replica set. | rolling-update command is used for updating | 
| Even though replica set can be used independently, | the replication controller. This replaces the | 
| it is best used along with deployments which   | specified replication controller with a new | 
| makes them declarative.        | replication controller by updating one pod | 
|              | at a time to use the new PodTemplate.   | 
+-------------------------------------------------------+-----------------------------------------------+ 

ये दो चीजें हैं जो आरएस और आरसी को अलग करती हैं। आरएस के साथ तैनाती व्यापक रूप से उपयोग की जाती है क्योंकि यह अधिक घोषणात्मक है।

10

अभी के लिए, अधिकांश मामलों में अंतर महत्वहीन होना चाहिए। प्रतिकृतिसेट में एक सामान्यीकृत लेबल चयनकर्ता है: https://github.com/kubernetes/kubernetes/issues/341#issuecomment-140809259। यह प्रतिकृति नियंत्रक का समर्थन करने वाली सभी सुविधाओं का समर्थन करना चाहिए।

प्रतिकृति सेट अंततः प्रतिकृति नियंत्रक को प्रतिस्थापित करेगा? मैं प्रतिकृति नियंत्रक के बजाय तैनाती और प्रतिकृतिसेट का उपयोग क्यों करना चाहूंगा?

यह रोलिंग अपडेट बनाम तैनाती के लिए उबलता है। अंतर को समझने के लिए तैनाती पर दस्तावेज़ पढ़ें: http://kubernetes.io/docs/user-guide/deployments/। संक्षेप में, यदि आप रोलिंग अपडेट शुरू करते हैं और अपने लैपटॉप को बंद करते हैं, तो आपकी प्रतिकृतियां मध्यवर्ती छवि संस्करणों का कुछ मिश्रण करती हैं। यदि आप एक तैनाती बनाते हैं और अपना लैपटॉप बंद करते हैं, तो तैनाती को या तो एपिसर्वर को सफलतापूर्वक पोस्ट किया जाता है, जिस स्थिति में यह सर्वर की ओर काम करता है, या ऐसा नहीं होता है, इस मामले में, आपकी सभी प्रतिकृतियां अभी भी पुराने संस्करण पर हैं।

बुरी बात यह है कि लगभग सभी वर्तमान दस्तावेज प्रतिकृति नियंत्रकों के बारे में हैं।

सहमत हुए, अधिकांश दस्तावेज़ अपडेट किए जा रहे हैं। दुर्भाग्यवश इंटरनेट पर दस्तावेज़ github पर अपडेट करने के लिए कठिन हैं।

+1

मैं कुबर्नेट्स में नया हूं। जब मैं एक तैनाती (कुबेक्टल रन) बनाता हूं तो वहां एक प्रतिलिपि बनाई गई है। क्या हमें अभी भी प्रतिकृति नियंत्रकों का उपयोग करना है? प्रलेखन ने अब कहा: प्रतिकृति सेट अगली पीढ़ी प्रतिकृति नियंत्रक है। एक प्रतिकृति सेट और एक प्रतिकृति नियंत्रक के बीच एकमात्र अंतर अभी चयनकर्ता समर्थन है। उन्होंने एक नया प्रकार का आरसी क्यों बनाया। – DenCowboy

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