❤️💕💕新时代拥抱云原生,云原生具有环境统一、按需付费、即开即用、稳定性强特点。Myblog:http://nsddd.top
[TOC]
OpenIM supports a variety of cluster deployment methods, including but not limited to helm
, sealos
, kustomize
Various contributors, as well as previous official releases, have provided some referenceable solutions:
- k8s-jenkins Repository
- open-im-server-k8s-deploy Repository
- openim-charts Repository
- deploy-openim Repository
Kubernetes: >= 1.16.0-0
Helm: >= 3.0
The recommended minimum configuration for a production environment is as follows:
CPU: 4
Memory: 8G
Disk: 100G
We have automated all the files, making the generation of configuration files optional for OpenIM. However, if you desire custom configurations, you can follow the steps below:
$ make init
# Alternatively, use script:
# ./scripts/init-config.sh
At this point, configuration files will be generated under deployments/openim/config
, which you can modify as per your requirements.
If you already have a kubernetes
cluster, or if you wish to build a kubernetes
cluster from scratch, you can skip this step.
For a quick start, I used sealos to rapidly set up the cluster, with sealos also being a wrapper for kubeadm at its core:
$ SEALOS_VERSION=`curl -s https://api.github.com/repos/labring/sealos/releases/latest | grep -oE '"tag_name": "[^"]+"' | head -n1 | cut -d'"' -f4` && \
curl -sfL https://raw.githubusercontent.com/labring/sealos/${SEALOS_VERSION}/scripts/install.sh |
sh -s ${SEALOS_VERSION} labring/sealos
Supported Versions:
- docker:
labring/kubernetes-docker
:(v1.24.0~v1.27.0) - containerd:
labring/kubernetes
:(v1.24.0~v1.27.0)
Cluster details are as follows:
Hostname | IP Address | System Info |
---|---|---|
master01 | 10.0.0.9 | Linux VM-0-9-ubuntu 5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:32 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux |
node01 | 10.0.0.4 | Similar to master01 |
node02 | 10.0.0.10 | Similar to master01 |
$ export CLUSTER_USERNAME=ubuntu
$ export CLUSTER_PASSWORD=123456
$ sudo sealos run labring/kubernetes:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 \
--masters 10.0.0.9 \
--nodes 10.0.0.4,10.0.0.10 \
-u "$CLUSTER_USERNAME" \
-p "$CLUSTER_PASSWORD"
Node Uninstallation method: using
kubeadm
for uninstallation does not removeetcd
andcni
related configurations. Manual clearance or usingsealos
for uninstallation is needed.$ sealos reset
Helm simplifies the deployment and management of Kubernetes applications to a large extent by offering version control and release management through packaging.
Using Script:
$ curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
Adding Repository:
$ helm repo add brigade https://openimsdk.github.io/openim-charts
Automated offerings include aliyun, ghcr, docker hub: Image Documentation
Local Test Build Method:
$ make image
This command assists in quickly building the required images locally. For a detailed build strategy, refer to the Build Documentation.
Explore our Helm-Charts repository and read through: Helm-Charts Repository
-
✴️版权声明 © :本书所有内容遵循CC-BY-SA 3.0协议(署名-相同方式共享)©