From 8bb21ae096ce465d95de2ef05090ec80674afdef Mon Sep 17 00:00:00 2001 From: Sherlock113 Date: Wed, 13 Jan 2021 17:00:42 +0800 Subject: [PATCH] add add-on error faq Signed-off-by: Sherlock113 --- ...nstall-addon-through-yaml-using-kubekey.md | 19 +++++++++++++++++++ ...nstall-addon-through-yaml-using-kubekey.md | 19 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 content/en/docs/faq/installation/install-addon-through-yaml-using-kubekey.md create mode 100644 content/zh/docs/faq/installation/install-addon-through-yaml-using-kubekey.md diff --git a/content/en/docs/faq/installation/install-addon-through-yaml-using-kubekey.md b/content/en/docs/faq/installation/install-addon-through-yaml-using-kubekey.md new file mode 100644 index 000000000..f90bf06ee --- /dev/null +++ b/content/en/docs/faq/installation/install-addon-through-yaml-using-kubekey.md @@ -0,0 +1,19 @@ +--- +title: "Install an Add-on through YAML Using KubeKey" +keywords: "Installer, KubeKey, KubeSphere, Kubernetes, add-ons" +description: "Fail to install an add-on through YAML using KubeKey" +linkTitle: "Install an Add-on through YAML Using KubeKey" +Weight: 16400 +--- + +When you use KubeKey to install add-ons, you put the add-on information (Chart or YAML) under the `addons` field in the configuration file (`config-sample.yaml` by default). If the add-on configuration is provided as a YAML file, in some cases, you may see an error message similar to this during the installation: + +```bash +Error from server: failed to create typed patch object: xxx: element 0: associative list with keys has an element that omits key field "protocol" +``` + +This is a [known issue of Kubernetes itself](https://github.com/kubernetes-sigs/structured-merge-diff/issues/130), caused by the flag `--server-side`. To solve this issue, do not add your add-on in the configuration file. Instead, you can apply your YAML file after KubeSphere is deployed. For example: + +```bash +kubectl apply -f xxx.yaml # Use your own YAML file. +``` \ No newline at end of file diff --git a/content/zh/docs/faq/installation/install-addon-through-yaml-using-kubekey.md b/content/zh/docs/faq/installation/install-addon-through-yaml-using-kubekey.md new file mode 100644 index 000000000..f90bf06ee --- /dev/null +++ b/content/zh/docs/faq/installation/install-addon-through-yaml-using-kubekey.md @@ -0,0 +1,19 @@ +--- +title: "Install an Add-on through YAML Using KubeKey" +keywords: "Installer, KubeKey, KubeSphere, Kubernetes, add-ons" +description: "Fail to install an add-on through YAML using KubeKey" +linkTitle: "Install an Add-on through YAML Using KubeKey" +Weight: 16400 +--- + +When you use KubeKey to install add-ons, you put the add-on information (Chart or YAML) under the `addons` field in the configuration file (`config-sample.yaml` by default). If the add-on configuration is provided as a YAML file, in some cases, you may see an error message similar to this during the installation: + +```bash +Error from server: failed to create typed patch object: xxx: element 0: associative list with keys has an element that omits key field "protocol" +``` + +This is a [known issue of Kubernetes itself](https://github.com/kubernetes-sigs/structured-merge-diff/issues/130), caused by the flag `--server-side`. To solve this issue, do not add your add-on in the configuration file. Instead, you can apply your YAML file after KubeSphere is deployed. For example: + +```bash +kubectl apply -f xxx.yaml # Use your own YAML file. +``` \ No newline at end of file