Commit Graph

51 Commits

Author SHA1 Message Date
Andreas Jaeger e61cc055ab Retire repository
Fuel (from openstack namespace) and fuel-ccp (in x namespace)
repositories are unused and ready to retire.

This change removes all content from the repository and adds the usual
README file to point out that the repository is retired following the
process from
https://docs.openstack.org/infra/manual/drivers.html#retiring-a-project

See also
http://lists.openstack.org/pipermail/openstack-discuss/2019-December/011647.html

Depends-On: https://review.opendev.org/699362
Change-Id: I10917e42829b459c41ca46514faa72fc46abf7be
2019-12-18 09:52:23 +01:00
Alexander Kislitsky 4fa861fa8a Distributed serialization implementation
Distributed serialization is implemented with python distributed
library. We have scheduler for jobs management and workers for
jobs processing. Scheduler is started on the master node as well
as set of workers on it. Also workers are started on all nodes.
In the cluster settings we can select the type of serialization
and nodes statuses that allows serialization on it. By default
nodes with status 'ready' are excluded from the workers list.

For data serialization we are using only nodes from the cluster
where serialization is performing.

Before the computation fresh nailgun code is sent to the workers
as zip file and it will be imported for job execution. So we always
have fresh nailgun code on the workers.

In one job we are processing chunks of tasks on the workers. This
approach significantly boosts performance. The tasks chunk size
is defined as settings.LCM_DS_TASKS_PER_JOB parameter.

For limiting memory consumption on the master node we use parameter
settings.LCM_DS_NODE_LOAD_COEFF for calculation max number of jobs
in the processing queue.

Synthetic tests of distributed serialization for 500 nodes with
nubmer of ifaces >= 5 performed on 40 cores (4 different machines)
took 6-7 minutes on average.

Change-Id: Id8ff8fada2f1ab036775fc01c78d91befdda9ea2
Implements: blueprint distributed-serialization
2017-03-24 15:15:30 +00:00
Vladimir Kozhukalov 1a8801a870 Deprecate version.yaml
At the moment feature_groups are defined during
ISO build in version.yaml file. We need to avoid
using build time defined parameters because
we are moving to the package based delivery approach.

Depends-On: I05e841d4279bc61645cefb68f411a93b67e57189
Related-Bug: #1513737
Related-Bug: #1515517
Change-Id: I4f96fec73f991094bca65de5f1d1014662fbb2b4
2015-11-17 01:05:39 +03:00
Maksim Malchuk 22a5a52201 Controlled logging from nailgun
This commit adds functionality to control logging from nailgun
by APP_LOGLEVEL value in the '/etc/nailgun/settings.yaml'

Also it reduces log level of notices indicating hardware_info_locked
when trying to fetch metadata to debug because they are much
too frequent.

Change-Id: I9d2ff84df1d663be363d2f1f7dc7d5e141bfdf27
Closes-Bug: #1510151
2015-11-10 10:07:47 +00:00
Dima Shulyak fa20798b64 Separate configuration based on test environment
Added:
- ARTIFACTS variable to store all test artifacts
  under single directory
- yaml config generation based on environment variables
- NAILGUN_CONFIG variable in run_tests.sh and settings.py

Commands used for testing:
  TEST_NAILGUN_DB=nailgun1 ARTIFACTS=/tmp/test_runs/1 \
  UI_SERVER_PORT=8011 FUELCLIENT_SERVER_PORT=8021 ./run_tests.sh

  TEST_NAILGUN_DB=nailgun2 ARTIFACTS=/tmp/test_runs/2 \
  UI_SERVER_PORT=8012 FUELCLIENT_SERVER_PORT=8022 ./run_tests.sh

Change-Id: If03dddee9a8259a80b526a53fe61a79c544c72a4
Closes-Bug: #1282565
Closes-Bug: #1334180
2014-07-17 10:15:30 +03:00
Aleksey Kasatkin 745ca3b212 Search for version.yaml using path order
Now nailgun searches for version.yaml in this order of priority:
/etc/fuel/version.yaml
/etc/fuel/nailgun/version.yaml
/etc/nailgun/version.yaml

This reflects the modifications made to Fuel library for parsing version file in https://review.openstack.org/85296

Closes-Bug: #1313303

Change-Id: I9005909f0852527d4df422ace80764841ae0fb0e
2014-05-06 12:32:06 +03:00
Evgeniy L e064fb9986 Improved logging in nailgun to simplify debugging process
We have several log files for nailgun app.log and api.log.
Also we have several threads. It was very difficult to find
out which part of log was written by rpc thread and
which by keep alive or web.py thread. Now we can use
standard bash utils to merge two log files and find specific
thread.

* move logs configuration in one place.
  Use single format of time and log format
  for api log and nailgun log.
* add thread logging
* add logging of milliseconds

Implements: blueprint nailgun-improve-logging-for-multithreading-app
Change-Id: I1d8816ad01c39de9602acdba8e99859d0fcd7a57
2013-11-28 17:09:31 +04:00
Alexandr Notchenko 1905b842a3 All flake8 warnings fixed, except for H302 (should be ignored) 2013-08-30 18:08:53 +04:00
Mike Scherbakov 7427d7aaff coding utf8 line must be ahead of License info 2013-06-25 10:56:14 +00:00
Mike Scherbakov dce46c7030 License information added 2013-06-25 07:49:11 +00:00
Evgeniy L 62a3fe053e Write all logs to stdout 2013-06-10 12:20:43 +00:00
Nikolay Markov 7c5bb787ad logging fix 2013-03-15 14:13:43 +00:00
Vladimir Kozhukalov 704ea329a7 Added /etc/nailgun/version.yaml 2013-01-29 20:42:14 +00:00
Nikolay Markov 77b526a55d hacked logger for web.py 2013-01-18 08:29:59 +00:00
Nikolay Markov ea9fefc233 orm restored 2013-01-17 13:52:23 +00:00
Nikolay Markov d9d2050270 settings.yaml.erb updated 2013-01-16 13:27:25 +00:00
Nikolay Markov b78c4e3144 restored patch for TEMPLATE_DIR - 2 2013-01-10 15:42:13 +00:00
Nikolay Markov 8d800a90d6 restored patch for TEMPLATE_DIR 2013-01-10 15:42:13 +00:00
Nikolay Markov 51962c12dd database in settings and stuff 2013-01-10 15:42:13 +00:00
Nikolay Markov c1a63095a1 --config option and dump_settings 2013-01-10 15:42:13 +00:00
Nikolay Markov 33770f416e define True=False - happy debugging 2012-11-02 09:30:54 +00:00
Nikolay Markov 652ab7e33c nailgun logging fixed for python 2.6 2012-11-02 09:30:54 +00:00
Nikolay Markov 7f62eb7082 test 415 removed 2012-11-01 13:27:11 +04:00
Nikolay Markov 414b3fc49e separate CUSTOM_LOG and ACCESS_LOG 2012-11-01 13:27:11 +04:00
Vladimir Kozhukalov be5dd3ca49 [nailgun] Fixed pep8 2012-10-24 09:23:03 +00:00
Vladimir Kozhukalov 58858c7f0f [puppet] Added nailgun module 2012-10-24 09:23:03 +00:00
Vladimir Kozhukalov 40a310049b [nailgun] Added update method into settings.py 2012-10-18 17:39:45 +04:00
Vladimir Kozhukalov f24de35838 [nailgun] Added passing exception into settings.py 2012-10-17 16:05:22 +04:00
Vladimir Kozhukalov 139cc45fa0 [nailgun] Created nailgun package 2012-10-17 15:45:22 +04:00
Nikolay Markov 6b2e54eae6 nailgun reborn 2012-09-05 18:35:56 +04:00
Vladimir Kozhukalov 21e27f3ba8 [attribute_generation] All in one commit 2012-08-17 21:14:40 +04:00
Mike Scherbakov f66db19840 Moved CHEF_CONF_FOLDER to extrasettings.
For testing purposes, set CHEF_CONF_FOLDER to base nailgun dir.
node_id.json is created during tests. To clean unused files use './run_tests.sh -c' since now.
2012-07-31 20:48:13 +04:00
Nikolay Markov f5d832c989 network creation and ip assignment 2012-06-29 14:06:49 +04:00
Mike Scherbakov 019d3842cf Fixed issue with extrasettings(failing unit test) 2012-06-16 12:01:57 +04:00
Vladimir Kozhukalov 191ba58c6b modified settings.py and wsgi.py 2012-06-15 20:44:14 +04:00
Mike Scherbakov 7044f80f00 Exception handling in tasks 2012-06-15 14:12:16 +04:00
Nikolay Markov d7a1622b99 creating data bags for nodes 2012-06-09 13:33:25 +04:00
Mike Scherbakov 020c44e5eb Run bin/deploy by task, not id; some public vars changes 2012-06-07 19:13:13 +04:00
Mike Scherbakov 5ac0e6998e Improved tasks: return statuses for all subtasks 2012-06-07 18:00:14 +04:00
Vitaly Kramskikh 682a7596fb Completely switch from Django templates to UnderscoreJS/RequireJS templates 2012-06-04 20:27:36 +04:00
Mike Scherbakov 754684435e ssh chef-solo subtask implementation finished. Untested yet.
ToDo:
* use IP address to ssh into node, not node.name
* use MAC address for json's names
* mock SshConnect in tests
* create test(s) for deploy_env to ensure that subtasks work fine
2012-06-01 15:59:24 +04:00
Mike Scherbakov cce1f93b60 Created test for config handler 2012-05-29 14:25:54 +04:00
Vitaly Kramskikh 9ec645a5e0 REST API: separate collection handlers 2012-05-25 22:37:08 +04:00
Mike Scherbakov 90e2a4e0dc pep8 fixes. Check for pep8 errors on Jenkins since now. 2012-05-19 13:03:12 +04:00
Vitaly Kramskikh 46d77adf78 Handlers parameters validation, rework of Role/Node handlers 2012-05-18 19:19:39 +04:00
Mike Scherbakov 83393a9f41 Creating JSON files for chef-solo implemented 2012-05-18 18:59:28 +04:00
Mike Scherbakov 9f98b0f993 Use nose to run tests. 2012-05-15 14:20:53 +04:00
Vitaly Kramskikh 6ad5dada33 Basic API client 2012-05-14 21:18:20 +04:00
Maxim Kulkin 6f48360acb Fixed path to database file 2012-05-14 13:57:27 +04:00
Vitaly Kramskikh 3b85f70fa2 New settings.py fixes 2012-05-14 12:25:31 +04:00