kubernetes-guide/content/sidebars.js

712 lines
20 KiB
JavaScript
Raw Normal View History

2023-10-13 13:37:29 +08:00
/**
* Creating a sidebar enables you to:
- create an ordered group of docs
- render a sidebar for each doc of that group
- provide next/previous navigation
The sidebars can be generated from the filesystem, or explicitly defined here.
Create as many sidebars as you want.
*/
// @ts-check
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
const sidebars = {
kubernetesSidebar: [
{
type: "doc",
id: "README",
customProps: {
slug: "/"
}
},
{
type: 'category',
label: '集群搭建',
collapsed: true,
link: {
type: 'generated-index',
slug: '/deploy'
},
items: [
{
type: 'category',
label: '使用 kubespray 搭建集群',
collapsed: true,
link: {
type: 'generated-index',
slug: '/deploy/kubespray'
},
items: [
'deploy/kubespray/install',
'deploy/kubespray/offline',
],
},
{
type: 'category',
label: '安装 k3s 轻量集群',
collapsed: true,
link: {
type: 'generated-index',
slug: '/deploy/k3s'
},
items: [
'deploy/k3s/install-cases',
'deploy/k3s/offline-installation',
],
},
'deploy/terraform',
],
},
{
type: 'category',
label: '最佳实践',
collapsed: true,
link: {
type: 'generated-index',
slug: '/best-practices'
},
items: [
{
type: 'category',
label: '优雅终止',
collapsed: true,
link: {
type: 'generated-index',
slug: '/best-practices/graceful-shutdown'
},
items: [
'best-practices/graceful-shutdown/intro',
'best-practices/graceful-shutdown/pod-termination-proccess',
'best-practices/graceful-shutdown/code-example-of-handle-sigterm',
'best-practices/graceful-shutdown/why-cannot-receive-sigterm',
'best-practices/graceful-shutdown/propagating-signals-in-shell',
'best-practices/graceful-shutdown/use-prestop',
'best-practices/graceful-shutdown/persistent-connection',
'best-practices/graceful-shutdown/lb-to-pod-directly',
],
},
{
type: 'category',
label: 'DNS',
collapsed: true,
link: {
type: 'generated-index',
slug: '/best-practices/dns'
},
items: [
'best-practices/dns/customize-dns-resolution',
'best-practices/dns/optimize-coredns-performance',
],
},
{
type: 'category',
label: '性能优化',
collapsed: true,
link: {
type: 'generated-index',
slug: '/best-practices/performance-optimization'
},
items: [
'best-practices/performance-optimization/network',
'best-practices/performance-optimization/cpu',
],
},
{
type: 'category',
label: '高可用',
collapsed: true,
link: {
type: 'generated-index',
slug: '/best-practices/ha'
},
items: [
'best-practices/ha/pod-split-up-scheduling',
'best-practices/ha/smooth-upgrade',
],
},
{
type: 'category',
label: '弹性伸缩',
collapsed: true,
link: {
type: 'generated-index',
slug: '/best-practices/autoscaling'
},
items: [
'best-practices/autoscaling/hpa-velocity',
'best-practices/autoscaling/hpa-with-custom-metrics',
],
},
{
type: 'category',
label: '容器化',
collapsed: true,
link: {
type: 'generated-index',
slug: '/best-practices/containerization'
},
items: [
'best-practices/containerization/systemd-in-container',
'best-practices/containerization/java',
'best-practices/containerization/golang',
'best-practices/containerization/crontab-in-container',
'best-practices/containerization/timezone',
],
},
{
type: 'category',
label: '集群运维',
collapsed: true,
link: {
type: 'generated-index',
slug: '/best-practices/ops'
},
items: [
'best-practices/ops/securely-maintain-or-offline-node',
'best-practices/ops/securely-modify-container-root-dir',
'best-practices/ops/large-scale-cluster-optimization',
'best-practices/ops/etcd-optimization',
'best-practices/ops/batch-operate-node-with-ansible',
],
},
'best-practices/configure-healthcheck',
'best-practices/request-limit',
'best-practices/logging',
'best-practices/long-connection',
],
},
{
type: 'category',
label: '监控告警',
collapsed: true,
link: {
type: 'generated-index',
slug: '/monitoring'
},
items: [
{
type: 'category',
label: 'grafana',
collapsed: true,
link: {
type: 'generated-index',
slug: '/monitoring/grafana'
},
items: [
'monitoring/grafana/ha-setup',
],
},
{
type: 'category',
label: 'Victoria Metrics',
collapsed: true,
link: {
type: 'generated-index',
slug: '/monitoring/victoriametrics'
},
items: [
'monitoring/victoriametrics/install-with-operator',
],
}
],
},
{
type: 'category',
label: '集群网络',
collapsed: true,
link: {
type: 'generated-index',
slug: '/networking'
},
items: [
{
type: 'category',
label: '常见问题',
collapsed: true,
link: {
type: 'generated-index',
slug: '/networking/faq'
},
items: [
'networking/faq/why-enable-bridge-nf-call-iptables',
'networking/faq/ipvs-conn-reuse-mode',
],
},
],
},
{
type: 'category',
label: '实用技巧',
collapsed: true,
link: {
type: 'generated-index',
slug: '/trick'
},
items: [
{
type: 'category',
label: '高效使用 kubectl',
collapsed: true,
link: {
type: 'generated-index',
slug: '/trick/kubectl'
},
items: [
'trick/kubectl/kubectl-aliases',
'trick/kubectl/quick-switch-with-kubectx',
'trick/kubectl/merge-kubeconfig-with-kubecm',
],
},
{
type: 'category',
label: '镜像相关',
collapsed: true,
link: {
type: 'generated-index',
slug: '/trick/images'
},
items: [
'trick/images/podman',
'trick/images/sync-images-with-skopeo',
],
},
{
type: 'category',
label: '部署与配置',
collapsed: true,
link: {
type: 'generated-index',
slug: '/trick/deploy'
},
items: [
'trick/deploy/set-sysctl',
],
},
{
type: 'category',
label: '证书签发',
collapsed: true,
link: {
type: 'generated-index',
slug: '/trick/certs'
},
items: [
'trick/certs/sign-certs-with-cfssl',
'trick/certs/sign-free-certs-with-cert-manager',
'trick/certs/sign-free-certs-for-dnspod',
],
},
{
type: 'category',
label: '用户与权限',
collapsed: true,
link: {
type: 'generated-index',
slug: '/trick/user-and-permissions'
},
items: [
'trick/user-and-permissions/create-user-using-csr-api',
],
},
],
},
{
type: 'category',
label: '故障排查',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting'
},
items: [
{
type: 'category',
label: '排障技能',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/skill'
},
items: [
'troubleshooting/skill/linux',
'troubleshooting/skill/enter-netns-with-nsenter',
'troubleshooting/skill/remote-capture-with-ksniff',
'troubleshooting/skill/use-systemtap-to-locate-problems',
'troubleshooting/skill/tcpdump',
'troubleshooting/skill/wireshark',
],
},
{
type: 'category',
label: 'Pod 排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/pod'
},
items: [
'troubleshooting/pod/healthcheck-failed',
'troubleshooting/pod/device-or-resource-busy',
{
type: 'category',
label: 'Pod 状态异常',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/pod/status'
},
items: [
'troubleshooting/pod/status/intro',
'troubleshooting/pod/status/pod-terminating',
'troubleshooting/pod/status/pod-pending',
'troubleshooting/pod/status/pod-containercreating-or-waiting',
'troubleshooting/pod/status/pod-crash',
'troubleshooting/pod/status/pod-imagepullbackoff',
],
}
],
},
{
type: 'category',
label: '节点排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/node'
},
items: [
'troubleshooting/node/node-crash-and-vmcore',
'troubleshooting/node/node-high-load',
'troubleshooting/node/io-high-load',
'troubleshooting/node/memory-fragmentation',
'troubleshooting/node/disk-full',
'troubleshooting/node/pid-full',
'troubleshooting/node/arp-cache-overflow',
'troubleshooting/node/runnig-out-of-inotify-watches',
'troubleshooting/node/kernel-solft-lockup',
'troubleshooting/node/no-space-left-on-device',
'troubleshooting/node/ipvs-no-destination-available',
'troubleshooting/node/cadvisor-no-data',
],
},
{
type: 'category',
label: '网络排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/network'
},
items: [
'troubleshooting/network/timeout',
'troubleshooting/network/packet-loss',
'troubleshooting/network/network-unreachable',
'troubleshooting/network/slow-network-traffic',
'troubleshooting/network/dns-exception',
'troubleshooting/network/close-wait-stacking',
'troubleshooting/network/traffic-surge',
],
},
{
type: 'category',
label: '存储排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/storage'
},
items: [
'troubleshooting/storage/unable-to-mount-volumes',
'troubleshooting/storage/setup-failed-for-volume',
],
},
{
type: 'category',
label: '集群排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/cluster'
},
items: [
'troubleshooting/cluster/namespace-terminating',
],
},
"troubleshooting/sdk",
{
type: 'category',
label: '排障案例',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/cases'
},
items: [
{
type: 'category',
label: '运行时排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/cases/runtime'
},
items: [
'troubleshooting/cases/runtime/io-high-load-causing-pod-creation-timeout',
'troubleshooting/cases/runtime/pull-image-fail-in-high-version-containerd',
'troubleshooting/cases/runtime/mount-root-causing-device-or-resource-busy',
'troubleshooting/cases/runtime/broken-system-time-causing-sandbox-conflicts',
],
},
{
type: 'category',
label: '网络排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/cases/network'
},
items: [
'troubleshooting/cases/network/dns-lookup-5s-delay',
'troubleshooting/cases/network/arp-cache-overflow-causing-healthcheck-failed',
'troubleshooting/cases/network/cross-vpc-connect-nodeport-timeout',
'troubleshooting/cases/network/musl-libc-dns-id-conflict-causing-dns-abnormal',
],
},
{
type: 'category',
label: '高负载',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/cases/high-load'
},
items: [
'troubleshooting/cases/high-load/disk-full-causing-high-cpu',
],
},
{
type: 'category',
label: '集群故障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/cases/cluster'
},
items: [
'troubleshooting/cases/cluster/delete-rancher-ns-causing-node-disappear',
'troubleshooting/cases/cluster/scheduler-snapshot-missing-causing-pod-pending',
'troubleshooting/cases/cluster/kubectl-exec-or-logs-failed',
],
},
{
type: 'category',
label: '节点排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/cases/node'
},
items: [
'troubleshooting/cases/node/cgroup-leaking',
],
},
{
type: 'category',
label: '其它排障',
collapsed: true,
link: {
type: 'generated-index',
slug: '/troubleshooting/cases/others'
},
items: [
'troubleshooting/cases/others/failed-to-modify-hosts-in-multiple-container',
'troubleshooting/cases/others/job-cannot-delete',
'troubleshooting/cases/others/dotnet-configuration-cannot-auto-reload',
],
},
],
}
],
},
{
type: 'category',
label: '腾讯云容器服务',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent'
},
items: [
{
type: 'category',
label: 'Serverless 集群与超级节点',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/serverless'
},
items: [
'tencent/serverless/precautions',
'tencent/serverless/why-tke-supernode-rocks',
'tencent/serverless/supernode-case-online',
'tencent/serverless/supernode-case-offline',
'tencent/serverless/large-image-solution',
],
},
{
type: 'category',
label: '网络指南',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/networking'
},
items: [
'tencent/networking/clb-to-pod-directly',
'tencent/networking/how-to-use-eip',
'tencent/networking/install-localdns-with-ipvs',
'tencent/networking/expose-grpc-with-tcm',
],
},
{
type: 'category',
label: '存储指南',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/storage'
},
items: [
'tencent/storage/cbs-pvc-expansion',
'tencent/storage/readonlymany-pv',
'tencent/storage/mount-cfs-with-v3',
],
},
{
type: 'category',
label: '监控告警',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/monitoring'
},
items: [
'tencent/monitoring/prometheus-scrape-config',
'tencent/monitoring/grafana-dashboard-for-supernode-pod',
],
},
{
type: 'category',
label: '镜像与仓库',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/images'
},
items: [
'tencent/images/use-mirror-in-container',
'tencent/images/use-foreign-container-image',
],
},
{
type: 'category',
label: '故障排查',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/troubleshooting'
},
items: [
'tencent/troubleshooting/public-service-or-ingress-connect-failed',
],
},
{
type: 'category',
label: '常见应用安装与部署',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/install-apps'
},
items: [
'tencent/install-apps/install-harbor-on-tke',
'tencent/install-apps/install-gitlab-on-tke',
'tencent/install-apps/install-kubesphere-on-tke',
],
},
{
type: 'category',
label: '常见问题',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/faq'
},
items: [
'tencent/faq/modify-rp-filter-causing-exception',
'tencent/faq/clb-loopback',
'tencent/faq/controller-manager-and-scheduler-unhealthy',
],
},
{
type: 'category',
label: '解决方案',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/solution'
},
items: [
'tencent/solution/multi-account',
'tencent/solution/upgrade-inplace',
],
},
{
type: 'category',
label: '附录',
collapsed: true,
link: {
type: 'generated-index',
slug: '/tencent/appendix'
},
items: [
'tencent/appendix/useful-kubectl-for-tencent-cloud',
'tencent/appendix/eks-annotations',
'tencent/appendix/ingress-error-code',
],
},
],
},
{
type: 'category',
label: '附录',
collapsed: true,
link: {
type: 'generated-index',
slug: '/appendix'
},
items: [
'appendix/kubectl-cheat-sheet',
'appendix/yaml',
{
type: 'category',
label: 'Terrafrom 配置',
collapsed: true,
link: {
type: 'generated-index',
slug: '/appendix/terraform'
},
items: [
'appendix/terraform/tke-vpc-cni',
'appendix/terraform/tke-serverless',
]
},
]
}
],
};
module.exports = sidebars;