2016-10-22 5 views
0

Beginnend mit Chef und haben Schwierigkeiten, Rollen/Umgebung Setup gehen zu lassen. Unfähig herauszufinden, was mir fehlt.Chef - Rollen und Umgebungen

 Cookbooks: nginx_webserver 
      recipes: default.rb, config_test, config_dev 

    Roles: 
      webserver 
    Environment: 
      dev, qa 

Hier ist meine Rolle Datei:

 chef_type:   role 
    default_attributes: 
    description:   Nginx webserver 
    env_run_lists: 
     dev: recipe[nginx_webserver::config_dev] 
     qa: recipe[nginx_webserver::config_qa] 
     json_class:   Chef::Role 
     name:    webserver 
     override_attributes: 
     run_list:   recipe[nginx_webserver] 

Hier ist meine env Liste

 chef_type:   environment 
     cookbook_versions: 
      nginx_webserver: = 0.1.2 
     default_attributes: 
     description:   development environment 
     json_class:   Chef::Environment 
     name:    dev 
     override_attributes: 
       nginx: 
     site_dir: dev.mysite.com # This value changes between envs 

Hier mein node_list ist:

 { 
      "name": "chef-node1", 
      "chef_environment": "dev", 
      "normal": { 
      "tags": [ 

       ] 
      }, 
      "policy_name": null, 
      "policy_group": null, 
      "run_list": [ 
      "role[webserver]" 
      ] 

     } 

Mein Koch-Client-Ausgabe/Fehler:

 54.149.131.42 Recipe Compile Error 
     54.149.131.42 

     ==================================================================== 
     54.149.131.42 
     54.149.131.42 Chef::Exceptions::RecipeNotFound 
     54.149.131.42 -------------------------------- 
     54.149.131.42 could not find recipe config_dev for cookbook  
     nginx_webserver 
     54.149.131.42 

Ich bin mir nicht sicher, wie ich meine Rezepte config_dev und config_qa auf dem Chef-Server an Ort und Stelle bekomme. Ich habe beide zu meinem default.rb Rezept hinzugefügt, aber ich bekomme immer noch diesen Fehler. Mein Ziel ist es, confg_dev Rezept zu nennen, wenn seine Entwicklungsumgebung und config_qa wenn seine qa ist. Alle Hinweise bitte

Edit: 1

Ouput vom Kochbuch Befehl show

Name: nginx_webserver-0.1.2 Anbieter: Rezepte: Prüfsumme: 23978bdef70ea9a852e27d9489acdda1 Name: default.rb Pfad: Rezepte /default.rb Spezifität: default url: https://s3-external-1.amazonaws.com:443/opscode-platform-production-data/organization-0ffe55465085b0ed5ec6cc4dc383888e/checksum-23978bdef70ea9a852e27d9489acdda1?AWSAccessKeyId=AKIAIQKPG2CTSTRVDO4Q&Expires=1477168767&Signature=8EUWtT1RJq1S6/N0nF00XV879fg%3D Ressourcen: root_files: Prüfsumme: d5324dd6a872900fd6ee12c96 28d9595 Name: README.md Pfad: README.md Spezifität: default url: https://s3-external-1.amazonaws.com:443/opscode-platform-production-data/organization-0ffe55465085b0ed5ec6cc4dc383888e/checksum-d5324dd6a872900fd6ee12c9628d9595?AWSAccessKeyId=AKIAIQKPG2CTSTRVDO4Q&Expires=1477168767&Signature=KuzF07t3/Xnw3BA30PkcNbsnQf0%3D

Prüfsumme: d14d45c195dccbfe56b358b71d2a6a6b Name: chefignore Pfad: chefignore Spezifität: default url: https://s3-external-1.amazonaws.com:443/opscode-platform-production-data/organization-0ffe55465085b0ed5ec6cc4dc383888e/checksum-d14d45c195dccbfe56b358b71d2a6a6b?AWSAccessKeyId=AKIAIQKPG2CTSTRVDO4Q&Expires=1477168767&Signature=8nlPR7LBWOQbn6C7CfCaNTieaqM%3D

Prüfsumme: 6528f8499102744b7616913a6cb225de Name: Berksfile Pfad: Berksfile Spezifität: Standard url: https://s3-external-1.amazonaws.com:443/opscode-platform-production-data/organization-0ffe55465085b0ed5ec6cc4dc383888e/checksum-6528f8499102744b7616913a6cb225de?AWSAccessKeyId=AKIAIQKPG2CTSTRVDO4Q&Expires=1477168767&Signature=0KRkWnrxasYQFhKaM0Kdqh79ltk%3D


EDIT - 2:

Kochbuch/default.rb

 include_recipe 'selinux::permissive' 
    include_recipe 'nginx_webserver::config_dev' 
    include_recipe 'nginx_webserver::config_qa' 

Aktualisiert metadata.rb zu = 0.1.3

knife cookbook upload nginx_webserver 
Uploading nginx_webserver [0.1.3] 
Uploaded 1 cookbook. 

gleichen Fehler. Muss ich auch meine config_dev und config_qa in meine default.rb aufnehmen? Sollte der Koch diese Rezepte nicht automatisch basierend auf env_run_lists aufnehmen?

+0

Was zeigt 'knife cookbook show nginx_webserver 0.1.2' für Sie? – Ivan

+0

zeigt eine Menge Zeug. Hauptsächlich über meine zwei Rezepte - selinux und nginx. Gibt es etwas bestimmtes, das Sie suchen –

+0

ideal die gesamte Ausgabe, so dass wir alle hier verstehen können, was hier passiert, minimal, wenn das 'config_dev' Rezept in dieser Version – Ivan

Antwort

0

Ihre Umgebung die Version verwendet, die nicht die Rezepte hat (da man sie in 0.1.3 wie pro Ihre Log hochgeladen haben):

chef_type:   environment 
    cookbook_versions: 
     nginx_webserver: = 0.1.2 

Bitte knife environment edit verwenden, setzen 0.1.3 dort und versuchen, den Knoten wieder zusammenlauf .

+0

Ich habe aber trotzdem die gleichen Ergebnisse. Muss ich nicht standardmäßige Rezepte in das Standardrezept aufnehmen? Eine andere Sache, die ich bemerkte, ist, dass die Version des Kochbuchs, die in Chef-Server (UI - Attribute) gezeigt wird, noch alt ist. Ich habe ein Kochbuch hochgeladen und auch Berks hochgeladen. Außerdem zeigt die Benutzeroberfläche die richtige Umgebung und das zugehörige Rezept an. –

+0

@ f-z-N bitte Screenshots davon anhängen – Ivan

Verwandte Themen