Table of contents for FAQ
This commit is contained in:
parent
fed151ae1c
commit
516588f837
|
|
@ -1,5 +1,33 @@
|
|||
# Frequently Asked Questions
|
||||
|
||||
# Table of Contents:
|
||||
<!--- TOC BEGIN -->
|
||||
* [What is Cluster Autoscaler?](#what-is-cluster-autoscaler)
|
||||
* [When Cluster Autoscaler changes the size of a cluster?](#when-cluster-autoscaler-changes-the-size-of-a-cluster)
|
||||
* [What types of pods can prevent CA from removing a node?](#what-types-of-pods-can-prevent-ca-from-removing-a-node)
|
||||
* [How Horizontal Pod Autoscaler works with Cluster Autoscaler?](#how-horizontal-pod-autoscaler-works-with-cluster-autoscaler)
|
||||
* [What are the key best practices for running Cluster Autoscaler?](#what-are-the-key-best-practices-for-running-cluster-autoscaler)
|
||||
* [Should I use CPU-usage-based node autoscaler with Kubernetes.](#should-i-use-cpuusagebased-node-autoscaler-with-kubernetes)
|
||||
* [How Cluster Autoscaler is different from CPU-usage-based node autoscalers?](#how-cluster-autoscaler-is-different-from-cpuusagebased-node-autoscalers)
|
||||
* [Is Cluster Autoscaler compatible with CPU-usage-based node autoscalers?](#is-cluster-autoscaler-compatible-with-cpuusagebased-node-autoscalers)
|
||||
* [Are all of the mentioned heuristics and timings final?](#are-all-of-the-mentioned-heuristics-and-timings-final)
|
||||
* [How does scale up work?](#how-does-scale-up-work)
|
||||
* [How does scale down work?](#how-does-scale-down-work)
|
||||
* [Does CA work with PodDisruptionBudget in scale down?](#does-ca-work-with-poddisruptionbudget-in-scale-down)
|
||||
* [Does CA respect GracefulTermination in scale down?](#does-ca-respect-gracefultermination-in-scale-down)
|
||||
* [How does CA deal with unready nodes in version <= 0.4.0?](#how-does-ca-deal-with-unready-nodes-in-version--040)
|
||||
* [How does CA deal with unready nodes in version >=0.5.0 ?](#how-does-ca-deal-with-unready-nodes-in-version-050-)
|
||||
* [How fast is Cluster Autoscaler?](#how-fast-is-cluster-autoscaler)
|
||||
* [How fast is HPA when combined with CA?](#how-fast-is-hpa-when-combined-with-ca)
|
||||
* [I have a couple of nodes with low utilization, but they are not scaled down. Why?](#i-have-a-couple-of-nodes-with-low-utilization-but-they-are-not-scaled-down-why)
|
||||
* [I have a couple of pending pods, but there was no scale up?](#i-have-a-couple-of-pending-pods-but-there-was-no-scale-up)
|
||||
* [CA doesn’t work but it used to work yesterday. Why?](#ca-doesnt-work-but-it-used-to-work-yesterday-why)
|
||||
* [How can I check what is going on in CA ?](#how-can-i-check-what-is-going-on-in-ca-)
|
||||
* [What events are emitted by CA?](#what-events-are-emitted-by-ca)
|
||||
* [What happens in scale up when I have no more quota in the cloud provider?](#what-happens-in-scale-up-when-i-have-no-more-quota-in-the-cloud-provider)
|
||||
* [How can I run e2e tests?](#how-can-i-run-e2e-tests)
|
||||
<!--- TOC END -->
|
||||
|
||||
# Basics
|
||||
|
||||
### What is Cluster Autoscaler?
|
||||
|
|
@ -301,3 +329,4 @@ A few tests are specific to GKE and will be skipped if you're running on a
|
|||
different provider.
|
||||
|
||||
Please open an issue if you find a failing or flaky test (a PR will be even more welcome).
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,40 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
# Copyright 2017 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import re
|
||||
|
||||
def updateFAQ():
|
||||
with open("FAQ.md","r") as faq_file:
|
||||
faq_content = faq_file.read()
|
||||
|
||||
question_prefix = "### "
|
||||
questions = [line.strip()[len(question_prefix):].strip() for line in faq_content.split("\n") if line.strip().startswith(question_prefix)]
|
||||
in_toc = False
|
||||
|
||||
with open("FAQ.md","w") as faq_file:
|
||||
for line in faq_content.split("\n"):
|
||||
if line.strip() == "<!--- TOC BEGIN -->":
|
||||
in_toc = True
|
||||
faq_file.write(line +"\n")
|
||||
for question in questions:
|
||||
faq_file.write("* [%s](#%s)\n" % (question, re.sub("[^a-z0-9 ]+", "", question.lower()).replace(" ","-")))
|
||||
if line.strip() == "<!--- TOC END -->":
|
||||
in_toc = False
|
||||
if not in_toc:
|
||||
faq_file.write(line+"\n")
|
||||
|
||||
if __name__ == '__main__':
|
||||
updateFAQ()
|
||||
Loading…
Reference in New Issue