2016-04-13 2 views
1

Wir haben mehrere Anwendungen auf dem gleichen Server, aber auf einer anderen IP-Adresse (192.168.50.130 : 443 applicationA, 192.168.50.131:443 applicationB und so weiter)Binding Chef-Server 12 an bestimmte IP-Adresse: Verbindung verweigert Verbindung zu https://127.0.0.1/users/, wiederholen 1/5

Wir wollten Chef-Server auf der gleichen Maschine installieren. Standardmäßig ignoriert der Chefserver nginx alle IP-Adressen (0.0.0.0:443 und 0.0.0.0:80). Da wir eine andere Anwendung auf dem gleichen Port 443 hatten, konnte Chef seine Standard-IP-Adresse (0.0.0.0) nicht an den Port 443 binden. Daher haben wir die Kochbücher des Chefs geändert, um sie an eine bestimmte IP-Adresse zu binden. Jetzt, da wir das nginx des Chefservers auf spezifischem IP laufen lassen, 192.168.56.137:443. Nur damit Sie wissen, dass es uns auch gelungen ist, chef.example.ca in einem Browser anzuzeigen, nachdem Sie ihn in eine bestimmte IP-Adresse geändert haben.

Das Problem ist wirklich, wenn wir versuchten, Benutzer mit dem Befehl chef-server-ctl create-user zu erstellen. Wir erhalten den folgenden Fehler.

chef-server-ctl user-create user_name first_name last_name email password --filename FILE_NAME 

Erhalte den Fehler 5 Mal und Nachricht sagen, es gibt auf.

ERROR: Connection refused connecting to https://127.0.0.1/users/, retry 1/5 

Hier ist meine /etc/opscode/chef-server.rb

server_name = "chef.example.ca" 
api_fqdn = server_name 
notification_email = "[email protected]" 

####################### 
# nginx configuration # 
####################### 
nginx['url'] = "https://#{server_name}" 
nginx['server_name'] = server_name 
#nginx['ssl_certificate'] = "/etc/nginx-certs/chef/chef.example.ca.crt" 
#nginx['ssl_certificate_key'] = "/etc/nginx-certs/chef/chef.example.ca.key" 
#nginx['ssl_protocols'] = "TLSv1 TLSv1.1 TLSv1.2" 

/etc/hosts-Datei:

192.168.56.137 chef.example.ca 

Könnten Sie mir bitte helfen zu verstehen, warum immer noch Koch suche nach Verbindung über localhost (127.0.0.1) während die Konfiguration für server_name und api_fqdn "chef.example.ca" ist. Kann diese IP-Adresse auch in 192.168.56.137 geändert werden? Vielen Dank!


Nach dem Ändern des Chefs Nginx Kochbuch. Ich war in der Lage, Chef-Server zu erzwingen, um auf eine bestimmte IP-Adresse zu hören, wie ich wollte.

# default behavior to listen only on v4 
     "listen "+ node['private_chef']['nginx']['server_name'] +":#{listen_port};" 

Aber als ich in die Web-GUI anmelden versucht, bekomme ich folgende Fehler enter image description here


Chef-manage-ctl tail 

2016-04-14_14:07:36.98112 I, [2016-04-14T11:07:36.974593 #51397] INFO -- : Started GET "/login" for 127.0.0.1 at 2016-04-14 11:07:36 -0300 
2016-04-14_14:07:37.07912 I, [2016-04-14T11:07:37.077410 #51397] INFO -- : Processing by SessionsController#new as HTML 
2016-04-14_14:07:37.40107 I, [2016-04-14T11:07:37.397369 #51397] INFO -- : Rendered sessions/new.html.erb within layouts/outside (171.2ms) 
2016-04-14_14:07:37.43189 I, [2016-04-14T11:07:37.428147 #51397] INFO -- : Rendered shared/_header.html.erb (2.4ms) 
2016-04-14_14:07:37.44882 I, [2016-04-14T11:07:37.447813 #51397] INFO -- : Rendered shared/_footer.html.haml (4.6ms) 
2016-04-14_14:07:37.47773 I, [2016-04-14T11:07:37.476979 #51397] INFO -- : Rendered layouts/_client_config.html.erb (2.1ms) 
2016-04-14_14:07:37.47985 I, [2016-04-14T11:07:37.479065 #51397] INFO -- : Rendered shared/_js.html.erb (0.9ms) 
2016-04-14_14:07:37.48226 I, [2016-04-14T11:07:37.480695 #51397] INFO -- : Rendered shared/_marketo.html.erb (0.5ms) 
2016-04-14_14:07:37.48230 I, [2016-04-14T11:07:37.481110 #51397] INFO -- : Completed 200 OK in 404ms (Views: 397.9ms) 
2016-04-14_14:07:43.69537 I, [2016-04-14T11:07:43.691233 #51397] INFO -- : Started POST "/login" for 127.0.0.1 at 2016-04-14 11:07:43 -0300 
2016-04-14_14:07:43.69540 I, [2016-04-14T11:07:43.692915 #51397] INFO -- : Processing by SessionsController#create as HTML 
2016-04-14_14:07:43.69541 I, [2016-04-14T11:07:43.692999 #51397] INFO -- : Parameters: {"utf8"=>"✓", "authenticity_token"=>"ZF7NM8/Rtr+ObtRxdUZcIQfSohbaKYtGi751bHbm/HkHfGejnQ1peCG+lFXuHYsFS5e/OS6HtxZnU+rC5d+qgw==", "to"=>"", "username"=>"srinivd1", "password"=>"[FILTERED]", "commit"=>"Sign In"} 
2016-04-14_14:07:43.95797 E, [2016-04-14T11:07:43.956971 #51397] ERROR -- : Connection refused - Connection refused connecting to https://localhost:444/authenticate_user, giving up 
2016-04-14_14:07:43.95799 E, [2016-04-14T11:07:43.957083 #51397] ERROR -- : /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/chef-11.16.2/lib/chef/http.rb:305:in `rescue in retrying_http_errors' 
2016-04-14_14:07:43.95799 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/chef-11.16.2/lib/chef/http.rb:291:in `retrying_http_errors' 
2016-04-14_14:07:43.95800 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/chef-11.16.2/lib/chef/http.rb:256:in `send_http_request' 
2016-04-14_14:07:43.95800 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/chef-11.16.2/lib/chef/http.rb:143:in `request' 
2016-04-14_14:07:43.95800 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/chef-11.16.2/lib/chef/http.rb:126:in `post' 
2016-04-14_14:07:43.95800 /opt/chef-manage/embedded/service/chef-manage/app/controllers/sessions_controller.rb:86:in `authenticate' 
2016-04-14_14:07:43.95800 /opt/chef-manage/embedded/service/chef-manage/app/controllers/sessions_controller.rb:27:in `create' 
2016-04-14_14:07:43.95800 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal/implicit_render.rb:4:in `send_action' 
2016-04-14_14:07:43.95801 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/abstract_controller/base.rb:198:in `process_action' 
2016-04-14_14:07:43.95801 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal/rendering.rb:10:in `process_action' 
2016-04-14_14:07:43.95801 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/abstract_controller/callbacks.rb:20:in `block in process_action' 
2016-04-14_14:07:43.95802 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:117:in `call' 
2016-04-14_14:07:43.95802 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:117:in `call' 
2016-04-14_14:07:43.95802 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:555:in `block (2 levels) in compile' 
2016-04-14_14:07:43.95802 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:505:in `call' 
2016-04-14_14:07:43.95802 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:505:in `call' 
2016-04-14_14:07:43.95803 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:92:in `__run_callbacks__' 
2016-04-14_14:07:43.95804 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks' 
2016-04-14_14:07:43.95804 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:81:in `run_callbacks' 
2016-04-14_14:07:43.95804 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/abstract_controller/callbacks.rb:19:in `process_action' 
2016-04-14_14:07:43.95804 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal/rescue.rb:29:in `process_action' 
2016-04-14_14:07:43.95804 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action' 
2016-04-14_14:07:43.95805 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/notifications.rb:164:in `block in instrument' 
2016-04-14_14:07:43.95805 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/notifications/instrumenter.rb:20:in `instrument' 
2016-04-14_14:07:43.95805 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/notifications.rb:164:in `instrument' 
2016-04-14_14:07:43.95805 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal/instrumentation.rb:30:in `process_action' 
2016-04-14_14:07:43.95806 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal/params_wrapper.rb:250:in `process_action' 
2016-04-14_14:07:43.95806 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/abstract_controller/base.rb:137:in `process' 
2016-04-14_14:07:43.95806 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionview-4.2.5.2/lib/action_view/rendering.rb:30:in `process' 
2016-04-14_14:07:43.95806 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal.rb:196:in `dispatch' 
2016-04-14_14:07:43.95806 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch' 
2016-04-14_14:07:43.95807 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_controller/metal.rb:237:in `block in action' 
2016-04-14_14:07:43.95807 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/routing/route_set.rb:74:in `call' 
2016-04-14_14:07:43.95807 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/routing/route_set.rb:74:in `dispatch' 
2016-04-14_14:07:43.95807 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/routing/route_set.rb:43:in `serve' 
2016-04-14_14:07:43.95807 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/journey/router.rb:43:in `block in serve' 
2016-04-14_14:07:43.95807 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/journey/router.rb:30:in `each' 
2016-04-14_14:07:43.95808 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/journey/router.rb:30:in `serve' 
2016-04-14_14:07:43.95808 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/routing/route_set.rb:815:in `call' 
2016-04-14_14:07:43.95808 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/rack-1.6.4/lib/rack/etag.rb:24:in `call' 
2016-04-14_14:07:43.95808 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/rack-1.6.4/lib/rack/conditionalget.rb:38:in `call' 
2016-04-14_14:07:43.95809 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/rack-1.6.4/lib/rack/head.rb:13:in `call' 
2016-04-14_14:07:43.95809 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/params_parser.rb:27:in `call' 
2016-04-14_14:07:43.95809 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/flash.rb:260:in `call' 
2016-04-14_14:07:43.95809 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:225:in `context' 
2016-04-14_14:07:43.95809 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:220:in `call' 
2016-04-14_14:07:43.95810 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/cookies.rb:560:in `call' 
2016-04-14_14:07:43.95810 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call' 
2016-04-14_14:07:43.95810 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:88:in `__run_callbacks__' 
2016-04-14_14:07:43.95810 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:778:in `_run_call_callbacks' 
2016-04-14_14:07:43.95811 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/callbacks.rb:81:in `run_callbacks' 
2016-04-14_14:07:43.95811 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/callbacks.rb:27:in `call' 
2016-04-14_14:07:43.95811 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/remote_ip.rb:78:in `call' 
2016-04-14_14:07:43.95811 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call' 
2016-04-14_14:07:43.95811 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' 
2016-04-14_14:07:43.95812 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/railties-4.2.5.2/lib/rails/rack/logger.rb:38:in `call_app' 
2016-04-14_14:07:43.95812 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/railties-4.2.5.2/lib/rails/rack/logger.rb:22:in `call' 
2016-04-14_14:07:43.95812 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/request_id.rb:21:in `call' 
2016-04-14_14:07:43.95812 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in `call' 
2016-04-14_14:07:43.95812 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/rack-1.6.4/lib/rack/runtime.rb:18:in `call' 
2016-04-14_14:07:43.95812 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/activesupport-4.2.5.2/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call' 
2016-04-14_14:07:43.95813 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/static.rb:116:in `call' 
2016-04-14_14:07:43.95813 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/rack-1.6.4/lib/rack/sendfile.rb:113:in `call' 
2016-04-14_14:07:43.95813 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/actionpack-4.2.5.2/lib/action_dispatch/middleware/ssl.rb:24:in `call' 
2016-04-14_14:07:43.95813 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/sentry-raven-0.15.1/lib/raven/integrations/rack.rb:54:in `call' 
2016-04-14_14:07:43.95814 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/railties-4.2.5.2/lib/rails/engine.rb:518:in `call' 
2016-04-14_14:07:43.95814 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/railties-4.2.5.2/lib/rails/application.rb:165:in `call' 
2016-04-14_14:07:43.95814 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/railties-4.2.5.2/lib/rails/railtie.rb:194:in `public_send' 
2016-04-14_14:07:43.95814 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/railties-4.2.5.2/lib/rails/railtie.rb:194:in `method_missing' 
2016-04-14_14:07:43.95814 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:580:in `process_client' 
2016-04-14_14:07:43.95814 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/unicorn-worker-killer-0.4.3/lib/unicorn/worker_killer.rb:52:in `process_client' 
2016-04-14_14:07:43.95815 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/unicorn-worker-killer-0.4.3/lib/unicorn/worker_killer.rb:92:in `process_client' 
2016-04-14_14:07:43.95815 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:674:in `worker_loop' 
2016-04-14_14:07:43.95815 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:529:in `spawn_missing_workers' 
2016-04-14_14:07:43.95816 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/unicorn-4.9.0/lib/unicorn/http_server.rb:140:in `start' 
2016-04-14_14:07:43.95816 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/gems/unicorn-4.9.0/bin/unicorn:126:in `<top (required)>' 
2016-04-14_14:07:43.95816 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/bin/unicorn:23:in `load' 
2016-04-14_14:07:43.95816 /opt/chef-manage/embedded/service/gem/ruby/2.2.0/bin/unicorn:23:in `<main>' 
2016-04-14_14:07:44.02026 I, [2016-04-14T11:07:44.016528 #51397] INFO -- : Rendered errors/error_500.haml within layouts/outside (2.0ms) 
2016-04-14_14:07:44.02028 I, [2016-04-14T11:07:44.018118 #51397] INFO -- : Rendered shared/_header.html.erb (0.4ms) 
2016-04-14_14:07:44.02029 I, [2016-04-14T11:07:44.018601 #51397] INFO -- : Rendered shared/_footer.html.haml (0.3ms) 
2016-04-14_14:07:44.02029 I, [2016-04-14T11:07:44.019163 #51397] INFO -- : Rendered layouts/_client_config.html.erb (0.4ms) 
2016-04-14_14:07:44.02029 I, [2016-04-14T11:07:44.019458 #51397] INFO -- : Rendered shared/_js.html.erb (0.1ms) 
2016-04-14_14:07:44.02029 I, [2016-04-14T11:07:44.019674 #51397] INFO -- : Rendered shared/_marketo.html.erb (0.1ms) 
2016-04-14_14:07:44.02029 I, [2016-04-14T11:07:44.019874 #51397] INFO -- : Completed 500 Internal Server Error in 327ms (Views: 5.9ms) 
+0

Sie sollten ** nicht ** das interne Kochbuch Koch ändern, gibt es eine Konfigurationsdatei Name 'Koch-server.rb' zur Feinabstimmung Koch-Server installieren und entsprechend Werkzeuge neu konfigurieren. [Dokumentation hier] (https://docs.chef.io/server_tuning.html) – Tensibai

+0

Ja, ich habe diese Dokumentation gesehen. Leider gibt es keine Konfiguration, um den hörenden Port von nginx 443 und 80 abzustimmen! – Dinesh

+0

Überprüfen Sie die Datei chef-server-running.json in/etc/opscode, um die richtigen Werte zu finden. Du hast nicht gesagt, dass du nach dem Ändern der chef-server-ctl reconfigure ausgeführt hast. Rb-Datei (Entschuldigung für die Formatierung, Eingabe am Telefon) – Tensibai

Antwort

1

Ok, also gibt es nach einigen Grabungen und Überprüfungen keine native Möglichkeit, die IP einzuschränken, auf der nginx hört, also wäre es am besten, einen anderen Port zu verwenden.

wie Ihr ursprüngliches Problem ist die SSL-Port, ein getragener Weise Koch zu haben neben einem anderen Web-Server 443 verwendet, ist nginx ssl-Port (von The documentation mit dieser Art von Koch-server.rb Konfiguration zu ändern:

nginx['ssl_port']=444 

Dann müssen Sie Ihre Clients entsprechend konfigurieren, um den richtigen Port zu verwenden, wenn Sie ihnen die Chef-Server-URL geben.

Erinnerung: nach jeder Änderung in chef-server.rb Sie haben chef-server-ctl reconfigure laufen Dienste Konfiguration und Kommandozeilen-Tools zu aktualisieren.


Wenn Sie sich fragen, warum eine bestimmte IP-restrincting nicht unterstützt wird, ist hier die Ergebnisse meiner Graben in den Code mit einem Koch-server.rb geändert, die am Ende ich diese Anwendung arbeiten sollte sehr entmutigen, es wird bei jedem Update brach es sei denn, eine Pull-Anforderung gemacht wird, dieses Verhalten zu ändern:

die Ursache ist this line im nginx erb Helfern durch die nginx_chef_api_lb.conf.erb Vorlage verwendet.

# default behavior to listen only on v4 
    "listen #{listen_port};" 

So müssen Sie den privaten Koch Kochbuch ändern, um es auf eine bestimmte IP hören zu machen, es kann ein PR lohnt sich die lb['vip'] als Teil der Vorlage aufzunehmen. (Randnotiz: Ich hatte geschworen, dass es schon so benutzt wurde)

Dann sollte nginx nun, was von außen funktioniert, nun was der Server ist, mit api_fqdn sollte genug sein, da alle anderen Attribute diesen Wert annehmen, wenn sie ist nicht gesetzt (Auszug aus here.

def gen_api_fqdn_default 
    PrivateChef["lb"]["api_fqdn"] ||= PrivateChef['api_fqdn'] 
    PrivateChef["lb"]["web_ui_fqdn"] ||= PrivateChef['api_fqdn'] 
    PrivateChef["nginx"]["server_name"] ||= PrivateChef['api_fqdn'] 
    PrivateChef["nginx"]["url"] ||= "https://#{PrivateChef['api_fqdn']}" 
end 

aber dann gibt es die chef-server-ctl Konfiguration (nämlich pivotal.rb), die den lb['vip'] Wert annimmt und nicht den api_fqdn Wert

So eine Arbeits chef-server.rb Datei sein kann:

api_fqdn = "chef.example.ca" 
lb['vip'] = server_name 
notification_email = "[email protected]" 
+0

@dinesh gibt es auch ein nginx ['non_ssl_port'], aber Sie können einfach den non_ssl-Port deaktivieren, sehen Sie sich den Dokumentationslink an und sehen Sie sich alle nginx-Parameter an, Sie werden sie finden – Tensibai

+0

Hey, ein Chef, der auf einem anderen SSL-Port (444) läuft, verhindert den Konflikt mit anderen Anwendungen. und ich musste auch den non_ssl-Port ändern. Und ich habe auch die nicht empfohlene Methode ausprobiert. Ich habe die folgende Zeile im Kochbuch des Kochs geändert, damit der Koch eine bestimmte IP-Adresse abhört. ' # Standardverhalten nur auf v4 zu hören " listen "+ Knoten ['private_chef'] ['nginx'] ['server_name'] +": # {listen_port}; " ' Aber nachdem ich dies geändert habe, kann ich mich nicht in der Chef-Verwaltungskonsole vom Browser aus einloggen. Ich erhalte den folgenden Fehler. ' Riechen etwas brennend? ' – Dinesh

+0

@Dinesh Ich bin mir nicht sicher, ich bekomme dich, ist Ihr ursprüngliches Problem gelöst, indem Sie beide Ports ändern? Der andere Weg ist ein hässlicher Hack, ich habe nicht alle Versionen von Chefservern zu testen, also kann es irgendwo etwas kaputt machen. – Tensibai

1

Ich denke einstellen wollen Sie lb['vip'] = 'whatever' ist. Das heißt, Chef Server ist eine Appliance und erwartet, die Box vollständig zu kontrollieren. Sie sollten es nicht auf demselben Computer wie andere Dienste ausführen. Entweder legen Sie es in eine eigene VM oder verwenden Sie etwas wie LXC/D, um es in einem Container zu sperren.

+0

Ändern von lbs vip hat nicht funktioniert. Ja, ich verstehe, Chef empfiehlt, auf einer frischen/separaten Maschine zu installieren. Aber wir wollten versuchen, ob wir es auf der vorhandenen Maschine installieren können. Eine neue Maschine zu bekommen ist ein bisschen mühsam. – Dinesh

+0

Sie benötigen keine neue Maschine, um LXC zu verwenden. – coderanger

+0

Auch was meinst du mit "hat nicht funktioniert"? Diese Konfigurationsoption wird verwendet, um die Konfigurationsdatei '/ etc/opscode/pivotal.rb' zu erzeugen, überprüfen Sie, ob sie dort richtig aussieht. Diese Konfigurationsdatei wird wiederum von 'chef-server-ctl' verwendet. – coderanger