Deploy etcd on KubeSphere
Written in Go, etcd is a distributed key-value store to store data that needs to be accessed by a distributed system or cluster of machines. In Kubernetes, it is the backend for service discovery and stores cluster states and configurations.
This tutorial walks you through an example of deploying etcd from the App Store of KubeSphere.
Prerequisites
- Please make sure you enable the OpenPitrix system.
- You need to create a workspace, a project, and a user account (
project-regular
) for this tutorial. The account needs to be a platform regular user and to be invited as the project operator with theoperator
role. In this tutorial, you log in asproject-regular
and work in the projectdemo-project
in the workspacedemo-workspace
. For more information, see Create Workspaces, Projects, Users and Roles.
Hands-on Lab
Step 1: Deploy etcd from the App Store
On the Overview page of the project
demo-project
, click App Store in the upper-left corner.Find etcd and click Install on the App Information page.
Set a name and select an app version. Make sure etcd is deployed in
demo-project
and click Next.On the App Settings page, specify the size of the persistent volume for etcd and click Install.
Note
To specify more values for etcd, use the toggle switch to see the app's manifest in YAML format and edit its configurations.In Template-Based Apps of the Apps page, wait until etcd is up and running.
Step 2: Access the etcd service
After the app is deployed, you can use etcdctl, a command-line tool for interacting with the etcd server, to access etcd on the KubeSphere console directly.
Navigate to StatefulSets in Workloads, and click the service name of etcd.
Under Pods, expand the menu to see container details, and then click the Terminal icon.
In the terminal, you can read and write data directly. For example, execute the following two commands respectively.
etcdctl set /name kubesphere
etcdctl get /name
For clients within the KubeSphere cluster, the etcd service can be accessed through
<app name>.<project name>.svc.<K8s domain>:2379
(for example,etcd-bqe0g4.demo-project.svc.cluster.local:2379
in this guide).For more information, see the official documentation of etcd.
Feedback
Was this page Helpful?
Receive the latest news, articles and updates from KubeSphere
Thanks for the feedback. If you have a specific question about how to use KubeSphere, ask it on Slack. Open an issue in the GitHub repo if you want to report a problem or suggest an improvement.