summaryrefslogtreecommitdiffstats
path: root/configserver
Commit message (Collapse)AuthorAgeFilesLines
* Remove dependencies which are not availableJon Marius Venstad2019-01-051-4/+4
|
* Make sure node-admin thing is also routing appJon Marius Venstad2019-01-051-1/+10
|
* Skip services with clustername node-adminJon Marius Venstad2019-01-041-0/+2
|
* Typed flag classesHåkon Hallingstad2019-01-034-34/+55
| | | | | | | | | | This reintroduces the non-generic flag classes: - a value() returns the primitive type for flags wrapping a primitive type - easier to use in testing - Serializer is moved to internals of typed class Defines the flag backed by boolean BooleanFlag instead of FeatureFlag since not all boolean flags are necessarily guarding a feature.
* Include flag id in flag data and other review fixesHåkon Hallingstad2019-01-025-24/+38
|
* Expose defined flagsHåkon Hallingstad2018-12-315-11/+88
| | | | | | | | | | - Exposes all defined flags at /flags/v1/defined. - Defines all hosted flags in Flags. Perhaps later we can support hiding hosted flags (aka support different set of flags for different teams). - Categorizes /flags/v1 as a hosted vespa operation for /zone/v2. Also fixes component definitions in services.xml. The affected bundles have been verified at an example config server.
* Configserver flags REST APIHåkon Hallingstad2018-12-3011-12/+415
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a new ZooKeeper backed flag source. It is defined in a new module configserver-flags to allow as many as possible config server modules to depend on it by minimizing dependencies. The content of the ZK backed flag source can be viewed and modified through REST API on the config server/controller. The data stored per flag looks like { "rules": [ { "conditions": [ { "type": "whitelist", "dimension": "hostname", "values": ["host1"] } ], "value": true } ] } typical for enabling a feature flag on host1. 2 types of conditions are so far supported: whitelist and blacklist. All the conditions must match in order for the value to apply. If the value is null (or absent), the default value will be used. At the time the flag's value is retrieved, it is resolved against the conditions with the current zone, hostname, and/or application. The same data structure is used for FileFlagSource for files in /etc/vespa/flags with the ".2" extension. The FlagSource component injected in the config server is changed to: 1. Return the flag value if specified in /etc/vespa/flags, or otherwise 2. return flag value from ZooKeeper (same as REST API) The current flags (module) is also changed: - All flags must be defined in com.yahoo.vespa.flags.Flags. This allows the ZK backed flag source additional sanity checking when modifying flags. - If it makes sense to have different flag value depending on e.g. the application, then at some point before the value is retrieved, one has to bind the flag to that application (using with() to set up the fetch vector). Future changes would be to 0. make a merged FlagSource in host admin, 1. add support for viewing and modifying feature flags in dashboard, 2. in hv tool.
* Simplify a bit by adding a constructor for testingHarald Musum2018-12-182-21/+23
|
* Use feature flag to control how to do bootstrappingHarald Musum2018-12-182-5/+15
|
* Inject FlagSource through component registryHarald Musum2018-12-136-5/+30
|
* Use feature flag for when to use server cacheHarald Musum2018-12-132-2/+17
|
* Merge pull request #7924 from ↵gjoranv2018-12-113-36/+31
|\ | | | | | | | | vespa-engine/hmusum/avoid-tests-writing-to-module-directory Refactor to avoid writing test data to module directory
| * Refactor to avoid writing test data to module directoryHarald Musum2018-12-113-36/+31
| |
* | Cleanup config definition repos and cache a bitHarald Musum2018-12-1114-99/+41
|/
* Simplify. No functional changesHarald Musum2018-12-109-62/+67
|
* Remove unused legacy code for deleting an applicationHarald Musum2018-12-102-61/+5
|
* Merge pull request #7891 from ↵Håkon Hallingstad2018-12-062-33/+47
|\ | | | | | | | | vespa-engine/hakonhall/notify-service-monitors-of-infra-apps Make service monitors aware of infra applications in duper model.
| * Make service monitors aware of infra applications in duper model.Håkon Hallingstad2018-12-062-33/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Notify monitors of infrastructure application activation. Live-flipping the content of the duper model is non-trivial and has been removed. - Split out DuperModel as a simple mutable and thread-unsafe container of the applications in the duper model, that also handles calls listeners on changes. The previous DuperModel has been renamed to DuperModelManager. - Replace SuperModelProvider::snapshot method (fast but difficult to use right) with registerListener. - Shorten the fully qualified package names by 1-2 levels for mosts classes. Next steps: - Make HA query the real orchestrator - Start experimenting with health monitoring of infra apps
* | Make it configurable if bootstrap is done in separate threadHarald Musum2018-12-062-29/+51
|/ | | | Default value for config is true (unchanged from how we do it today)
* Revert "Revert "Add infrastructure applications to DuperModel""Håkon Hallingstad2018-12-031-0/+3
|
* Revert "Add infrastructure applications to DuperModel"Harald Musum2018-12-031-3/+0
|
* Install flags component for open-source config serverHåkon Hallingstad2018-12-031-0/+1
|
* Merge pull request #7828 from ↵Håkon Hallingstad2018-12-031-0/+3
|\ | | | | | | | | vespa-engine/hakonhall/add-infrastructure-applications-to-dupermodel Add infrastructure applications to DuperModel
| * Add infrastructure applications to DuperModelHåkon Hallingstad2018-11-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DuperModel is (will be) responsible for both active tenant applications (through SuperModel) and infrastructure applications. This PR is one step in that direction: - All infrastructure applications (config, confighost, controller, controllerhost, and proxyhost) are owned and managed by DuperModel. - The InfrastructureProvisioner retrieves all possible infra apps from the DuperModel (through a reduced API), and "activates" each of them if target is set and there are any nodes etc. - The InfrastructureProvisioner then notifies the DuperModel which apps have been activated, and with which hosts. - The DuperModel can then build delegate artificially create ApplicationInfo, which gets translated into the application model, and finally the service model. - The resulting service model has NOT_CHECKED for each hostadmin service instance. This is sufficient for goal 1 of this sprint. - The config server application currently has health, so that's kept as-is for now. - Feature flags have been tried and works and allows 1. to disable adding the infra apps in the DuperModel, and 2. to enable the infra configserver instead of the currently created configserver w/health.
* | Deprecate com.yahoo.config.provision.VersionJon Bratseth2018-12-0144-153/+207
|/ | | | We have com.yahoo.component.Version, and one is enough.
* Separate model integration into a separate moduleJon Bratseth2018-11-211-0/+1
| | | | | | | This allows us to access model importers (such as TensorFlow) in config models without loading one instance per config model instance, which is not possible with TensorFlow because it depends on JNI code.
* Always load earlier major versionsJon Bratseth2018-11-202-9/+39
| | | | | | | Since we have extended the semantics of major-version to also mean "upgrade this application also if you generally don't upgrade", we need to make sure specifying this doesn't cause config models on *earlier* versions to not load.
* Simplify handling of missing tenant or applicationHarald Musum2018-11-201-30/+18
|
* Merge pull request #7703 from vespa-engine/hmusum/cleanupHåkon Hallingstad2018-11-201-3/+3
|\ | | | | Cleanup
| * CleanupHarald Musum2018-11-201-3/+3
| |
* | Merge pull request #7693 from ↵Valerij Fredriksen2018-11-201-7/+33
|\ \ | |/ |/| | | | | vespa-engine/hmusum/more-robust-handling-of-errors-for-config-server-maintainers More robust handling of exceptions for config server maintainers
| * More robust handling of exceptions for config server maintainersHarald Musum2018-11-191-7/+33
| |
* | Source container-environmentValerij Fredriksen2018-11-191-0/+8
|/
* Need to remove override annotation before method can be removedHarald Musum2018-11-161-1/+0
|
* Simplify supermodel, part 2Harald Musum2018-11-087-117/+100
|
* Use simpler map for modelsHarald Musum2018-11-051-17/+63
| | | | | Need to keep old constructor and make a temporary one with an ignored argument to make this work (since arguments will be equal due to type erasure)
* Throw if bootstrapping tenant repo fails in all zonesHarald Musum2018-11-051-2/+1
|
* Revert "Revert "Revert "Revert "Enforce CC timeouts in Orchestrator 4""""Håkon Hallingstad2018-11-011-5/+0
|
* Revert "Revert "Revert "Enforce CC timeouts in Orchestrator 4"""Håkon Hallingstad2018-11-011-0/+5
|
* Merge pull request #7524 from ↵Håkon Hallingstad2018-11-011-5/+0
|\ | | | | | | | | vespa-engine/hakonhall/enforce-cc-timeouts-in-orchestrator-4 Revert "Revert "Enforce CC timeouts in Orchestrator 4""
| * Revert "Revert "Enforce CC timeouts in Orchestrator [4]""Håkon Hallingstad2018-11-011-5/+0
| |
* | Merge pull request #7513 from vespa-engine/gjoranv/add-optional-metrics-handlerBjørn Christian Seime2018-11-011-0/+4
|\ \ | |/ |/| Add optional metrics-packets.xml file to configserver app.
| * Add optional metrics-packets.xml file to configserver app.gjoranv2018-10-311-0/+4
| |
* | Revert "Enforce CC timeouts in Orchestrator [4]"Harald Musum2018-10-311-0/+5
|/
* Merge pull request #7491 from ↵Håkon Hallingstad2018-10-311-5/+0
|\ | | | | | | | | vespa-engine/revert-7490-revert-7472-revert-7470-revert-7424-hakonhall/enforce-cc-timeouts-in-orchestrator-2 Enforce CC timeouts in Orchestrator [4]
| * Revert "Revert "Revert "Revert "Enforce CC timeouts in Orchestrator 2""""Håkon Hallingstad2018-10-301-5/+0
| |
* | Throw if bootstrapping tenant repo fails (in CD only)Harald Musum2018-10-312-1/+7
|/
* Revert "Revert "Revert "Enforce CC timeouts in Orchestrator 2"""Håkon Hallingstad2018-10-301-0/+5
|
* Revert "Revert "Enforce CC timeouts in Orchestrator 2""Håkon Hallingstad2018-10-291-5/+0
|
* Revert "Enforce CC timeouts in Orchestrator 2"Håkon Hallingstad2018-10-291-0/+5
|