Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix new scheduler error #5206

Merged
merged 1 commit into from
Apr 5, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions ansible/group_vars/all
Original file line number Diff line number Diff line change
Expand Up @@ -478,6 +478,7 @@ watcher:
eventNotificationDelayMs: "{{ watcher_notification_delay | default('5000 ms') }}"

durationChecker:
spi: "{{ duration_checker_spi | default('') }}"
timeWindow: "{{ duration_checker_time_window | default('1 d') }}"

enable_scheduler: "{{ scheduler_enable | default(false) }}"
Expand Down
2 changes: 2 additions & 0 deletions ansible/roles/controller/tasks/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -317,6 +317,8 @@
"CONFIG_whisk_etcd_pool_threads": "{{ etcd.pool_threads }}"
"CONFIG_whisk_scheduler_grpc_tls": "{{ scheduler.grpc.tls | default('false') | lower }}"
"CONFIG_whisk_scheduler_maxPeek": "{{ scheduler.maxPeek }}"
"CONFIG_whisk_spi_LoadBalancerProvider": "org.apache.openwhisk.core.loadBalancer.FPCPoolBalancer"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently, this is guided to configure them alternatively.
https://github.com/apache/openwhisk/tree/master/ansible#optional-enable-the-new-scheduler

If we take this approach, how about changing the documentation too?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this pr is only useful for ansible way(we may need other prs for k8s and standalone), so I think it's better to keep the document

"CONFIG_whisk_spi_EntitlementSpiProvider": "org.apache.openwhisk.core.entitlement.FPCEntitlementProvider"
when: enable_scheduler

- name: merge scheduler env
Expand Down
2 changes: 2 additions & 0 deletions ansible/roles/invoker/tasks/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,8 @@
"CONFIG_whisk_etcd_pool_threads": "{{ etcd.pool_threads }}"
"CONFIG_whisk_scheduler_dataManagementService_retryInterval": "{{ scheduler.dataManagementService.retryInterval }}"
"CONFIG_whisk_invoker_containerCreation_maxPeek": "{{ invoker.container.creationMaxPeek }}"
"CONFIG_whisk_spi_InvokerProvider": "org.apache.openwhisk.core.invoker.FPCInvokerReactive"
"CONFIG_whisk_spi_InvokerServerProvider": "org.apache.openwhisk.core.invoker.FPCInvokerServer"
when: enable_scheduler

- name: merge scheduler env
Expand Down
3 changes: 3 additions & 0 deletions ansible/roles/schedulers/tasks/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,8 @@
"CONFIG_whisk_scheduler_username": "{{ scheduler.username }}"
"CONFIG_whisk_scheduler_password": "{{ scheduler.password }}"

"CONFIG_whisk_spi_DurationCheckerProvider": "{{ durationChecker.spi }}"


- name: merge extra env variables
set_fact:
Expand All @@ -236,6 +238,7 @@
"CONFIG_whisk_activationStore_elasticsearch_username": "{{ db.elasticsearch.auth.admin.username }}"
"CONFIG_whisk_activationStore_elasticsearch_password": "{{ db.elasticsearch.auth.admin.password }}"
"CONFIG_whisk_spi_ActivationStoreProvider": "org.apache.openwhisk.core.database.elasticsearch.ElasticSearchActivationStoreProvider"
"CONFIG_whisk_spi_DurationCheckerProvider": "org.apache.openwhisk.core.scheduler.queue.ElasticSearchDurationCheckerProvider"
when: db.activation_store.backend == "ElasticSearch"

- name: merge elasticsearch activation store env
Expand Down
5 changes: 5 additions & 0 deletions common/scala/src/main/resources/reference.conf
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ whisk.spi {
AuthenticationDirectiveProvider = org.apache.openwhisk.core.controller.BasicAuthenticationDirective
InvokerProvider = org.apache.openwhisk.core.invoker.InvokerReactive
InvokerServerProvider = org.apache.openwhisk.core.invoker.DefaultInvokerServer
DurationCheckerProvider = org.apache.openwhisk.core.scheduler.queue.NoopDurationCheckerProvider
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Regardless of whether the ansible changes make it in, I think we should merge in the changes to this file so that service can at least run with all of the necessary providers. If you want to put this file's changes in a separate PR I'd approve that. Don't have an opinion on the ansible change

}

dispatchers {
Expand Down Expand Up @@ -81,4 +82,8 @@ dispatchers {
# before the thread is returned to the pool. Set to 1 for as fair as possible.
throughput = 5
}
lease-service-dispatcher {
type = PinnedDispatcher
executor = "thread-pool-executor"
}
}