OpenShift DeploymentConfig Definition: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
 
(2 intermediate revisions by the same user not shown)
Line 8: Line 8:
* [[OpenShift_Concepts#Deployment_Configuration|OpenShift Concepts]]
* [[OpenShift_Concepts#Deployment_Configuration|OpenShift Concepts]]
* [[OpenShift_Configuration#Definitions|OpenShift Definitions]]
* [[OpenShift_Configuration#Definitions|OpenShift Definitions]]
* [[OpenShift Pod Definition|OpenShift Pod Definition]]


=Definition=
=Definition=
Line 33: Line 34:
             '''template''':  
             '''template''':  
    
    
                              [ See [[OpenShift Pod Definition#Example|Pod Definition]] ]
                      [ See [[OpenShift Pod Definition#Example|Pod Definition]] ]
   
   
                      '''metadata''':
                              '''<span id='spec.template.metadata.annotations'></span>[[#annotations|annotations]]''':
                                  <font color=SandyBrown>arbitrary-key-1</font>: <font color=SandyBrown>arbitrary-value-1</font>
 
                              '''<span id='spec.template.metadata.labels'></span>[[#labels|labels]]''':
                                  <font color=SandyBrown>pod_selector_label_name_1</font>: <font color=SandyBrown> pod_selector_value_1</font>
                                  <font color=SandyBrown>pod_selector_label_name_2</font>: <font color=SandyBrown> pod_selector_value_2</font>
                      '''[[#template_spec|spec]]''':
                            '''containers''': 
                                        - '''name''': <font color=SandyBrown>blue</font>
                                          '''image''':
                                          '''[[#imagePullPolicy|imagePullPolicy]]''': Always
                                          '''[[#env|env]]''':
                                          - name: TEST_ENV1
                                            value: TEST_VALUE1
                                          '''ports''':
                                                  - '''containerPort''': <font color=SandyBrown>1234</font>
                                                    '''protocol''': TCP
                                          '''volumeMounts''':
                                                  - '''name''': <font color=SandyBrown>data</font>
                                                    '''mountPath''': <font color=SandyBrown>/opt/blue/data</font>
                                                  - '''name''': <font color=SandyBrown>config</font>
                                                    '''mountPath''': <font color=SandyBrown>/etc/blue/conf</font>
                                          '''livenessProbe''': {...}
                                          '''readinessProbe''': {...}
                                          '''terminationMessagePath''': /dev/termination-log
                                          '''resources''': {...}
                            '''dnsPolicy''': ClusterFirst
                            '''restartPolicy''': Always
                            '''securityContext''': {...}
                            '''terminationGracePeriodSeconds''': 30
                            '''volumes''': 
                                    - '''name''': <font color=SandyBrown>data</font>
                                      '''persistentVolumeClaim''':
                                        '''claimName''': <font color=SandyBrown>data-pvc</font>
                                    - '''name''': <font color=SandyBrown>config</font>
                                      '''configMap''':
                                        '''name''': <font color=SandyBrown>config-cm</font>
                                        '''items''':
                                          - '''key''': <font color=SandyBrown>app.ini</font>
                                            '''path''': <font color=SandyBrown>app.ini</font>
             '''triggers''':  
             '''triggers''':  
                       - '''type''': ConfigChange
                       - '''type''': ConfigChange

Latest revision as of 21:06, 28 February 2018

External

Internal

Definition

apiVersion: v1

kind:       DeploymentConfig

metadata: 
            name: blue

            labels: {...}
  
spec: 
            replicas: 1

            selector: 

                      pod_selector_label_name_1:  pod_selector_value_1
                      pod_selector_label_name_2:  pod_selector_value_2

            strategy: 
                      type: Recreate

            template: 
 
                      [ See Pod Definition ]

            triggers: 
                     - type: ConfigChange
                     - type: ImageChange
                       imageChangeParams:
                         from:
                           kind: ImageStreamTag
                           name: gogs:0.11.29

status: {...}

Elements

spec

selector

Represents a query that applied over pods, returns the number of pods which should match the "replica" count. This is the query used by the replication controller to figure out whether it has to spin up or shut down pods. The labels specified in the "spec.selector" map must match the labels applied to the pods created by this deployment configuration, which are the "spec.template.metadata.labels". More details: https://docs.openshift.com/container-platform/latest/rest_api/openshift_v1.html#v1-deploymentconfigspec

template

Pod Defintion