-
Notifications
You must be signed in to change notification settings - Fork 99
THREESCALE-8998 - Allow defining zone topology spread constraints for… #830
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
Conversation
d6314c3
to
31f4531
Compare
Looking good code wise
Can you give update on that? |
missing doc |
regarding - It's working now. Problem was that S3 bucket definition was missed in apimanager CR for system. Now it looks ok.
|
regarding "missing doc" |
APIMAnager ref doc needs to be updated It would also be nice to add an example in the operator's user guide |
4537a7d
to
7a6c646
Compare
@eguzki , it's done - Documentation (ref doc and user guide) updated for both PriorityClassName and TopologySpreadConstraints |
/test test-e2e |
all DCs and pods are working now (after adding |
/test test-e2e |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good. Almost there. Few nitpicks and should be ready to be merged.
bc4e63c
to
0a25584
Compare
Hi @eguzki , thank you for Review and comments. Hope I addressed it. It's in separate/last commit. |
doc/apimanager-reference.md
Outdated
@@ -140,6 +140,8 @@ One APIManager custom resource per project is allowed. | |||
| HTTPSProxy | `httpsProxy` | string | No | N/A | Specifies a HTTP(S) Proxy to be used for connecting to HTTPS services. Authentication is not supported. Format is: `<scheme>://<host>:<port>` (see [docs](https://github.com/3scale/APIcast/blob/master/doc/parameters.md#https_proxy-https_proxy)) | | |||
| NoProxy | `noProxy` | string | No | N/A | Specifies a comma-separated list of hostnames and domain names for which the requests should not be proxied. Setting to a single `*` character, which matches all hosts, effectively 8000 disables the proxy (see [docs](https://github.com/3scale/APIcast/blob/master/doc/parameters.md#no_proxy-no_proxy)) | | |||
| ServiceCacheSize | `serviceCacheSize` | int | No | N/A | Specifies the number of services that APICast can store in the internal cache (see [docs](https://github.com/3scale/APIcast/blob/master/doc/parameters.md#apicast_service_cache_size)) | | |||
| PriorityClassName | `priorityClassName` | string | No | N/A | Specifies the Pod priority (see [docs](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#podspec-v1-core:~:text=higher%20the%20priority.-,priorityClassName,-string)) | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is what I see from your link:
As description, I would say what its in the podspec-v1-core, i.e.
If specified, indicates the pod's priority. "system-node-critical" and "system-cluster-critical" are two special keywords which indicate the highest priorities with the former being the highest priority. Any other name must be defined by creating a PriorityClass object with that name. If not specified, the pod priority will be default or zero if there is no default.
As link, I would include the k8s official doc about pod priority
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
when I tried this link - https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#podspec-v1-core:~:text=higher%20the%20priority.-,priorityClassName,-string -- It show less than second screen as you see (beginning of the doc),but after this it jump to following (or near following in podspec-v1-core, And I can see this image:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But ok, I will replace it as you recommended to pod priority
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done. Doc updated. Thank you for comment.
0a25584
to
8e58925
Compare
There was a problem hiding this comment.
Choose a reason for hiding th A3E2 is comment
The reason will be displayed to describe this comment to others. Learn more.
another good job @valerymo 🎖️
@eguzki Thanks very much for your help and comments ! |
@eguzki , sorry, I just found this comment that need to do rebase. I tried it, and it's not just these 2 files, but a lot of files require to take my changes. So I will do it carefully on Sunday, hope it's ok |
8e58925
to
1a8d730
Compare
… components via APIManager CR
1a8d730
to
b93e37a
Compare
Code Climate has analyzed commit b93e37a and detected 18 issues on this pull request. Here's the issue category breakdown:
View more on Code Climate. |
@eguzki , squash and rebase done. Yes, it just 2 files to resolve. Test done - logs attached. Thank you. |
WHAT
Jira: https://issues.redhat.com/browse/THREESCALE-8998
Allow defining zone topology spread constraints for components via APIManager CR
Adding optional TopologySpreadConstraints definition for following 3scale pods:
TopologySpreadConstraints
TopologySpreadConstraints
Validation
Secret and CR to be installed on separate terminal window
ApiManager CR example
S3 secret example
Check deploymentConfig(s)
Command:
Expected result:
Check Update/reconcile flow
Example of CR - added new label
threescale_component
.apimanagerCR_CheckUpdate.yaml.txt
apply CR
Command:
Expected result - added
threescale_component
label:** Check pods.
Expected - all pods are updated.
Notes. Checking current issue - with apicast-production and system-app