From 6834d0477ff2c19fcaa5b25e605db07df9bb9ef1 Mon Sep 17 00:00:00 2001 From: moonrailgun Date: Mon, 29 May 2023 17:34:25 +0800 Subject: [PATCH] docs: add k8s simple deploy tutorial document --- docker/simple/README.md | 2 +- website/docs/kubernetes/_category_.json | 4 + website/docs/kubernetes/simple.md | 117 ++++++++++++++++++ .../current/kubernetes/_category_.json | 4 + .../current/kubernetes/simple.md | 116 +++++++++++++++++ website/static/img/kubernetes/traefik-svc.png | Bin 0 -> 63365 bytes 6 files changed, 242 insertions(+), 1 deletion(-) create mode 100644 website/docs/kubernetes/_category_.json create mode 100644 website/docs/kubernetes/simple.md create mode 100644 website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/kubernetes/_category_.json create mode 100644 website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/kubernetes/simple.md create mode 100644 website/static/img/kubernetes/traefik-svc.png diff --git a/docker/simple/README.md b/docker/simple/README.md index 87ba7237..d659d1d0 100644 --- a/docker/simple/README.md +++ b/docker/simple/README.md @@ -1,3 +1,3 @@ Only have one tailchat instance version. -Not include **openapi** and **plugins** +Not include **openapi** and **admin** diff --git a/website/docs/kubernetes/_category_.json b/website/docs/kubernetes/_category_.json new file mode 100644 index 00000000..e23349cc --- /dev/null +++ b/website/docs/kubernetes/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Kubernetes", + "position": 50 +} diff --git a/website/docs/kubernetes/simple.md b/website/docs/kubernetes/simple.md new file mode 100644 index 00000000..328b92f2 --- /dev/null +++ b/website/docs/kubernetes/simple.md @@ -0,0 +1,117 @@ +--- +sidebar_position: 1 +title: Simple Deployment +--- + +## Introduction + +Kubernetes is an open-source container orchestration platform used for automating the deployment, scaling, and management of containerized applications. It provides a way to orchestrate containers, automating tasks such as deployment, scheduling, load balancing, and fault recovery, making containerized applications run efficiently in a distributed system. + +Advantages of Kubernetes include: +- Automation: Kubernetes automates tasks such as deployment, scheduling, load balancing, and fault recovery, reducing the amount of manual work required. +- Scalability: Kubernetes can manage thousands of containerized applications in large-scale clusters, with good horizontal and vertical scalability. +- Flexibility: Kubernetes supports multiple container runtimes and multiple cloud platforms, allowing applications to be deployed and managed in different environments. +- Reliability: Kubernetes provides powerful fault recovery mechanisms and self-healing capabilities, ensuring high availability and reliability of applications. +- Community support: Kubernetes is an active open-source project with a large community support and ecosystem, allowing for quick updates and support. + +## Quick Start + +If you want to deploy the Tailchat project on Kubernetes, you can find the prepared simple Tailchat deployment configuration in the `docker/simple/k8s` subdirectory of the project directory. These configuration files include Kubernetes resource definitions for running Tailchat, such as StatefulSet, Service, and dependencies such as databases and persistent storage. These resource definitions allow you to quickly deploy a simple Tailchat project on Kubernetes without manually creating and configuring these resources. + +:::info +Note that the deployed Tailchat in this tutorial does not include the complete Tailchat ecosystem, such as the **Open Platform** and **Admin Management Platform**. +::: + +### Environment Dependencies + +To start this chapter, we assume that you have a working Kubernetes environment ready. This section does not describe how to set up a k8s environment. + +### Getting Started + +First, we need to clone the project repository: + +```bash +git clone git@github.com:msgbyte/tailchat.git +``` + +Change the working directory to the configuration file directory: + +```bash +cd docker/simple/k8s +``` + +At this point, you can see many prepared configuration files, and we can start by running a single command: + +```bash +kubectl apply -f namespace.yml -f pv.yml -f mongo.yml -f minio.yml -f redis.yml -f tailchat.yml +``` + +This command will create the `namespace`, create `pv` and `pvc`, create `mongodb`, `minio`, `redis`, and other necessary third-party middleware, and finally start a multi-instance `tailchat` service. + +You can check the status of each service using the following command: + +```bash +kubectl get svc -n tailchat +``` + +### Routing and Load Balancing + +When all services are ready, our Tailchat service is now running in the cluster, but we cannot access it because it has not been exposed to the outside. + +For local testing, we can use the `port forward` function to map the port of a pod to the local machine. In a production environment, however, we need to build routing and forwarding. + +Taking `traefik` as an example: + +> Traefik is an open-source reverse proxy and load balancer designed specifically for routing and load balancing traffic in containerized applications and microservices architectures. Traefik supports multiple backend services, including Docker, Kubernetes, Mesos, Swarm, Consul, Etcd, and more. It can automatically discover and configure backend services and route traffic to the corresponding service instances based on rules. + +#### Installing Helm and Adding Repository Address + +The installation of `helm` is not discussed here. We execute the following command to add `traefik` to the repository list: + +```bash +helm repo add traefik https://helm.traefik.io/traefik +``` + +#### Installing Traefik in the Tailchat Namespace + +```bash +helm install traefik traefik/traefik -n tailchat +``` + +#### Starting Ingress Resource Declaration + +```bash +kubectl apply -f ingress.yml +``` + +If everything is ok, you can see the following output using the following command: + +```bash +kubectl get services -n tailchat +``` + +![](/img/kubernetes/traefik-svc.png) + +#### Setting up DNS Services + +You can modify the domain address configuration in the `ingress.yml` mentioned above, which defaults to `http://tailchat.internal.com/`. + +If you do not wish to modify or do not have a domain name, you can modify the `hosts` file to achieve this: + +```bash +sudo vim /etc/hosts +``` + +Then add the following path: + +``` +127.0.0.1 tailchat.internal.com +``` + +Now you can open your browser and visit `http://tailchat.internal.com` to access the Tailchat service deployed on Kubernetes. + +Of course, you can also check the availability of the service by visiting the following address: + +``` +http://tailchat.internal.com/health +``` diff --git a/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/kubernetes/_category_.json b/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/kubernetes/_category_.json new file mode 100644 index 00000000..e23349cc --- /dev/null +++ b/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/kubernetes/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Kubernetes", + "position": 50 +} diff --git a/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/kubernetes/simple.md b/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/kubernetes/simple.md new file mode 100644 index 00000000..8799579d --- /dev/null +++ b/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/kubernetes/simple.md @@ -0,0 +1,116 @@ +--- +sidebar_position: 1 +title: 简单部署 +--- + +## 简介 + +Kubernetes 是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。它提供了一种容器编排的方法,可以自动化容器的部署、调度、负载均衡和故障恢复等任务,使得容器化应用程序可以在分布式系统中高效地运行。 + +Kubernetes 的优点包括: +- 自动化:Kubernetes 可以自动化容器的部署、调度、负载均衡和故障恢复等任务,减少了人工干预的工作量。 +- 可扩展性:Kubernetes 可以在大规模集群中管理数千个容器化应用程序,具有良好的水平扩展性和垂直扩展性。 +- 灵活性:Kubernetes 支持多种容器运行时和多种云平台,可以在不同的环境中部署和管理应用程序。 +- 可靠性:Kubernetes 提供了强大的故障恢复机制和自我修复能力,可以确保应用程序的高可用性和可靠性。 +- 社区支持:Kubernetes 是一个活跃的开源项目,有庞大的社区支持和生态系统,可以快速获取更新和支持。 + + +## 快速入门 + +如果您想要在 Kubernetes 上部署 Tailchat 项目,那么您可以在项目目录中的 `docker/simple/k8s` 子目录中找到已经准备好的简单 Tailchat 部署配置。这些配置文件包括了用于运行 Tailchat 的 Kubernetes 资源定义,例如 StatefulSet、Service 和 依赖的数据库、持久化存储 等等。这些资源定义可以让您快速地在 Kubernetes 上部署一个简单的 Tailchat 项目,而无需手动创建和配置这些资源。 + +:::info +需要注意的是,本教程部署的 Tailchat 不包含完整的 Tailchat 生态如**开放平台**与**Admin后台管理平台** +::: + +### 环境依赖 + +为了开始本章的内容,我们假设你已经准备好了一个可用的 kubernetes 环境,关于如何搭建 k8s 环境本节不进行赘述。 + +### 开始 + +首先我们需要clone项目仓库: + +```bash +git clone git@github.com:msgbyte/tailchat.git +``` + +将工作目录切到配置文件目录 + +```bash +cd docker/simple/k8s +``` + +此时我们可以看到有许多已经准备好了的配置文件,我们可以通过一条命令直接启动: + +```bash +kubectl apply -f namespace.yml -f pv.yml -f mongo.yml -f minio.yml -f redis.yml -f tailchat.yml +``` + +这条命令会依次执行创建`namespace`、创建`pv`和`pvc`、创建`mongodb`、`minio`、`redis`等必须的第三方中间件,最后启动一个多实例的 `tailchat` 服务。 + +你可以通过以下命令检测各个服务的状态: + +```bash +kubectl get svc -n tailchat +``` + +### 路由与负载均衡。 + +当所有的服务都就绪后,我们的Tailchat服务目前已经在集群中运行起来了,但是此时我们还无法访问,因为还没有暴露在外部。 + +对于本地测试,我们可以用`port forward`功能将一个pod的端口映射到本地。而在生产环境,我们则需要构建路由转发。 + +以 `traefik` 为例: + +> Traefik 是一款开源的反向代理和负载均衡器,专门用于处理容器化应用程序和微服务架构中的流量路由和负载均衡。Traefik 支持多种后端服务,包括 Docker、Kubernetes、Mesos、Swarm、Consul、Etcd 等等。它可以自动地发现和配置后端服务,并根据规则将流量路由到相应的服务实例。 + +#### 安装helm, 并增加仓库地址 + +`helm` 的安装不做赘述。我们执行以下命令将`traefik`添加到仓库列表 + +```bash +helm repo add traefik https://helm.traefik.io/traefik +``` + +#### 在 tailchat 命名空间中安装traefik + +```bash +helm install traefik traefik/traefik -n tailchat +``` + +#### 启动 ingress 资源声明 + +```bash +kubectl apply -f ingress.yml +``` + +如果一切正常,则通过以下命令可以看到如下输出 + +```bash +kubectl get services -n tailchat +``` + +![](/img/kubernetes/traefik-svc.png) + +#### 设置DNS服务 + +你可以在上述的`ingress.yml`中修改域名地址配置,默认是 `http://tailchat.internal.com/` + +如果不期望修改或者没有域名则可以通过修改`hosts`文件来实现: +```bash +sudo vim /etc/hosts +``` + +然后增加如下路径: + +``` +127.0.0.1 tailchat.internal.com +``` + +现在你可以打开浏览器并打开`http://tailchat.internal.com`来访问部署在k8s中的tailchat服务 + +当然,你也可以访问如下地址检测服务可用性: +``` +http://tailchat.internal.com/health +``` diff --git a/website/static/img/kubernetes/traefik-svc.png b/website/static/img/kubernetes/traefik-svc.png new file mode 100644 index 0000000000000000000000000000000000000000..13b79e629b16bb178de42c196fc164f434c3ccf8 GIT binary patch literal 63365 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 NRb`F)MT*bg{Rh~ORr3G< literal 0 HcmV?d00001