File tree 2 files changed +74
-0
lines changed
2 files changed +74
-0
lines changed Original file line number Diff line number Diff line change 182
182
- [ 开发指南概览] ( develop/index.md )
183
183
- [ SIG和工作组] ( develop/sigs-and-working-group.md )
184
184
- [ 开发环境搭建] ( develop/developing-environment.md )
185
+ - [ 本地分布式开发环境搭建(使用Vagrant和Virtualbox)] ( develop/using-vagrant-and-virtualbox-for-development.md )
185
186
- [ 单元测试和集成测试] ( develop/testing.md )
186
187
- [ client-go示例] ( develop/client-go-sample.md )
187
188
- [ Operator] ( develop/operator.md )
Original file line number Diff line number Diff line change
1
+ # 本地分布式开发环境搭建(使用Vagrant和Virtualbox)
2
+
3
+ 当我们需要在本地开发时,更希望能够有一个开箱即用又可以方便定制的分布式开发环境,这样才能对Kubernetes本身和应用进行更好的测试。现在我们使用[ Vagrant] ( https://www.vagrantup.com/ ) 和[ VirtualBox] ( https://www.virtualbox.org/wiki/Downloads ) 来创建一个这样的环境。
4
+
5
+ 部署时需要使用的配置文件和` vagrantfile ` 请见:https://github.com/rootsongjc/kubernetes-vagrant-centos-cluster
6
+
7
+ ## 准备环境
8
+
9
+ 需要准备以下软件和环境:
10
+
11
+ - 8G以上内存
12
+ - Vagrant 2.0+
13
+ - Virtualbox 5.0 +
14
+ - 提前下载kubernetes的安装包
15
+
16
+ ## 集群
17
+
18
+ 我们使用Vagrant和Virtualbox安装包含3个节点的kubernetes集群,其中master节点同时作为node节点。
19
+
20
+ | IP | 主机名 | 组件 |
21
+ | ------------ | ----- | ---------------------------------------- |
22
+ | 172.17.8.101 | node1 | kube-apiserver、kube-controller-manager、kube-scheduler、etcd、kubelet、docker、flannel |
23
+ | 172.17.8.102 | node2 | kubelet、docker、flannel |
24
+ | 172.17.8.103 | node3 | kubelet、docker、flannel |
25
+
26
+ ** 注意** :以上的IP、主机名和组件都是固定在这些节点的,即使销毁后下次使用vagrant重建依然保持不变。
27
+
28
+ ## 安装的组件
29
+
30
+ 安装完成后的集群包含以下组件:
31
+
32
+ - flannel
33
+ - kubernetes dashboard
34
+ - etcd(单节点)
35
+ - kubectl
36
+
37
+ ## 部署
38
+
39
+ 确保安装好以上的准备环境后,执行下列命令启动kubernetes集群:
40
+
41
+ ``` bash
42
+ git clone https://github.com/rootsongjc/kubernetes-vagrant-centos-cluster.git
43
+ cd kubernetes-vagrant-centos-cluster
44
+ vagrant up
45
+ ```
46
+
47
+ ** 注意** :克隆完Git仓库后,需要提前下载kubernetes的压缩包到` kubenetes-vagrant-centos-cluster ` 目录下,包括如下两个文件:
48
+
49
+ - kubernetes-client-linux-amd64.tar.gz
50
+ - kubernetes-server-linux-amd64.tar.gz
51
+
52
+ 如果是首次部署,会自动下载` centos/7 ` 的box,这需要花费一些时间,另外每个节点还需要下载安装一系列软件包,整个过程大概需要10几分钟。
53
+
54
+ ## 访问kubernetes集群
55
+
56
+ ``` bash
57
+ vagrant ssh node1
58
+ sudo -i
59
+ kubectl get nodes
60
+ ```
61
+
62
+ ## 清理
63
+
64
+ ``` bash
65
+ vagrant destroy
66
+ rm -rf .vagrant
67
+ ```
68
+
69
+ ## 参考
70
+
71
+ - [ Kubernetes handbook - jimmysong.io] ( https://jimmysong.io/kubernetes-handbook )
72
+ - [ duffqiu/centos-vagrant] ( https://github.com/duffqiu/centos-vagrant )
73
+ - [ kubernetes-vagrant-centos-cluster] ( https://github.com/rootsongjc/kubernetes-vagrant-centos-cluster )
You can’t perform that action at this time.
0 commit comments