VMware Tanzu社区版

VMware Tanzu Community Edition 是一个功能齐全、易于管理的 Kubernetes 平台,供学习者和用户使用。 它是一个免费的、社区支持的、开源的 VMware Tanzu 发行版,可以在几分钟内在您的本地工作站或您喜欢的云上安装和配置。

Linux Local Bootstrap Machine Prerequisites

1、检查cgroup

linux-mint-002@linux-mint-002:~/tanzu$ sudo docker info | grep -i cgroup
Cgroup Driver: cgroupfs
Cgroup Version: 1

如果 cgroups v2,需要设置 system.unified_cgroup_hierarchy=0

2、下载tanzu CLI

linux-mint-002@linux-mint-002:~/tanzu$ wget http://192.168.100.18:1234/tce-linux-amd64-v0.9.1.tar.gz
linux-mint-002@linux-mint-002:~/tanzu$ tar -zxf tce-linux-amd64-v0.9.1.tar.gz
linux-mint-002@linux-mint-002:~/tanzu$ ls
tce-linux-amd64-v0.9.1 tce-linux-amd64-v0.9.1.tar.gz
linux-mint-002@linux-mint-002:~/tanzu$ cd tce-linux-amd64-v0.9.1/
linux-mint-002@linux-mint-002:~/tanzu/tce-linux-amd64-v0.9.1$ ls
bin install.sh uninstall.sh

3、运行install.sh安装

linux-mint-002@linux-mint-002:~/tanzu/tce-linux-amd64-v0.9.1$ ./install.sh
+ ALLOW_INSTALL_AS_ROOT=
+ [[ 1000 -eq 0 ]]
+++ dirname ./install.sh
++ cd .
++ pwd
+ MY_DIR=/home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1
++ uname
+ BUILD_OS=Linux
+ case "${BUILD_OS}" in
+ XDG_DATA_HOME=/home/linux-mint-002/.local/share
+ echo /home/linux-mint-002/.local/share
/home/linux-mint-002/.local/share
++ command -v tanzu
+ TANZU_BIN_PATH=
+ [[ -n '' ]]
+ TANZU_BIN_PATH=/usr/local/bin
+ [[ :/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin: == *\:\/\h\o\m\e\/\l\i\n\u\x\-\m\i\n\t\-\0\0\2\/\b\i\n\:* ]]
+ echo Installing tanzu cli to /usr/local/bin
Installing tanzu cli to /usr/local/bin
+ sudo install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu /usr/local/bin
+ mkdir -p /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-builder /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-cluster /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-conformance /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-diagnostics /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-kubernetes-release /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-login /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-management-cluster /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-package /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-pinniped-auth /home/linux-mint-002/.local/share/tanzu-cli
+ for plugin in "${MY_DIR}"/bin/tanzu-plugin*
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/bin/tanzu-plugin-standalone-cluster /home/linux-mint-002/.local/share/tanzu-cli
+ mkdir -p /home/linux-mint-002/.local/share/tce
+ install /home/linux-mint-002/tanzu/tce-linux-amd64-v0.9.1/uninstall.sh /home/linux-mint-002/.local/share/tce
+ TANZU_PLUGIN_CACHE=/home/linux-mint-002/.cache/tanzu/catalog.yaml
+ [[ -n /home/linux-mint-002/.cache/tanzu/catalog.yaml ]]
+ echo 'Removing old plugin cache from /home/linux-mint-002/.cache/tanzu/catalog.yaml'
Removing old plugin cache from /home/linux-mint-002/.cache/tanzu/catalog.yaml
+ rm -f /home/linux-mint-002/.cache/tanzu/catalog.yaml
+ tanzu init
| initializing successfully initialized CLI
++ tanzu plugin repo list
++ grep tce
+ TCE_REPO=
+ [[ -z '' ]]
+ tanzu plugin repo add --name tce --gcp-bucket-name tce-tanzu-cli-plugins --gcp-root-path artifacts
++ tanzu plugin repo list
++ grep core-admin
+ TCE_REPO=
+ [[ -z '' ]]
+ tanzu plugin repo add --name core-admin --gcp-bucket-name tce-tanzu-cli-framework-admin --gcp-root-path artifacts-admin
+ echo 'Installation complete!'
Installation complete!

4、下载kubectl

curl -LO https://dl.k8s.io/release/v1.22.0/bin/linux/amd64/kubectl
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

5、创建集群

需要你的资源满足如下要求

6 GB of RAM
15 GB of local machine disk storage for images
4 CPUs

Local Docker Bootstrapping

1、初始化Tanzu 安装接口

linux-mint-002@linux-mint-002:~/tanzu/tce-linux-amd64-v0.9.1$ tanzu management-cluster create --ui -b 192.168.100.66:8080

Validating the pre-requisites...
Serving kickstart UI at http://192.168.100.66:8080
unable to open browser: exit status 3

2、现在可以打开链接,通过浏览器安装配置集群了

3、首先我们部署一个管理集群到docker环境









4、最后点击部署,即可开始创建一个管理集群,也可以用最底下的命令行执行





5、等待部署完成,验证管理集群是否正常

linux-mint-002@linux-mint-002:~/tanzu$   tanzu management-cluster get
NAME NAMESPACE STATUS CONTROLPLANE WORKERS KUBERNETES ROLES
tanzu tkg-system running 1/1 1/1 v1.21.2+vmware.1 management Details: NAME READY SEVERITY REASON SINCE MESSAGE
/tanzu True 6d23h
├─ClusterInfrastructure - DockerCluster/tanzu True 6d23h
├─ControlPlane - KubeadmControlPlane/tanzu-control-plane True 6d23h
│ └─Machine/tanzu-control-plane-v9jxw True 6d23h
└─Workers
└─MachineDeployment/tanzu-md-0
└─Machine/tanzu-md-0-567d7cf787-wkphp True 6d23h Providers: NAMESPACE NAME TYPE PROVIDERNAME VERSION WATCHNAMESPACE
capd-system infrastructure-docker InfrastructureProvider docker v0.3.23
capi-kubeadm-bootstrap-system bootstrap-kubeadm BootstrapProvider kubeadm v0.3.23
capi-kubeadm-control-plane-system control-plane-kubeadm ControlPlaneProvider kubeadm v0.3.23
capi-system cluster-api CoreProvider cluster-api v0.3.23

6、获取管理集群的kubeconfig

linux-mint-002@linux-mint-002:~/tanzu$ tanzu management-cluster kubeconfig get tanzu --admin

然后就可以执行kubectl操作管理集群了

linux-mint-002@linux-mint-002:~/tanzu$  kubectl  get no
NAME STATUS ROLES AGE VERSION
tanzu-control-plane-v9jxw Ready control-plane,master 6d23h v1.21.2+vmware.1-360497810732255795
tanzu-md-0-567d7cf787-wkphp Ready <none> 6d23h v1.21.2+vmware.1-360497810732255795

7、创建工作负载集群

linux-mint-002@linux-mint-002:~/tanzu$  tanzu  cluster create tkg-workload --plan dev
linux-mint-002@linux-mint-002:~/tanzu$ tanzu cluster list
NAME NAMESPACE STATUS CONTROLPLANE WORKERS KUBERNETES ROLES PLAN
tkg-workload default running 1/1 1/1 v1.21.2+vmware.1 <none> dev

8、获取工作集群的kubeconfig,并查看集群信心

linux-mint-002@linux-mint-002:~/tanzu$ tanzu  cluster  kubeconfig get tkg-workload --admin
linux-mint-002@linux-mint-002:~/tanzu$ kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
* tanzu-admin@tanzu tanzu tanzu-admin
tkg-workload-admin@tkg-workload tkg-workload tkg-workload-admin 切换kubecontext
linux-mint-002@linux-mint-002:~/tanzu$ kubectl config use-context tkg-workload-admin@tkg-workload
Switched to context "tkg-workload-admin@tkg-workload". linux-mint-002@linux-mint-002:~/tanzu$ kubectl get no
NAME STATUS ROLES AGE VERSION
tkg-workload-control-plane-nbddz Ready control-plane,master 6d2h v1.21.2+vmware.1-360497810732255795
tkg-workload-md-0-c7bc5dc9f-zwjfg Ready <none> 6d2h v1.21.2+vmware.1-360497810732255795 linux-mint-002@linux-mint-002:~/tanzu$ kubectl get po --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system antrea-agent-xwrk6 2/2 Running 1 6d2h
kube-system antrea-agent-zl6gq 2/2 Running 0 6d2h
kube-system antrea-controller-89547f7f5-tgn7z 1/1 Running 0 6d2h
kube-system coredns-8dcb5c56b-lbcqw 1/1 Running 0 6d2h
kube-system coredns-8dcb5c56b-wvzjw 1/1 Running 0 6d2h
kube-system etcd-tkg-workload-control-plane-nbddz 1/1 Running 0 6d2h
kube-system kube-apiserver-tkg-workload-control-plane-nbddz 1/1 Running 0 6d2h
kube-system kube-controller-manager-tkg-workload-control-plane-nbddz 1/1 Running 0 6d2h
kube-system kube-proxy-226wj 1/1 Running 0 6d2h
kube-system kube-proxy-hwq2q 1/1 Running 0 6d2h
kube-system kube-scheduler-tkg-workload-control-plane-nbddz 1/1 Running 0 6d2h
kube-system metrics-server-b9698ff4-rhrw5 1/1 Running 0 6d2h
projectcontour contour-c48db6f9f-dmcfb 1/1 Running 0 6d2h
projectcontour contour-c48db6f9f-zwszk 1/1 Running 0 6d2h
projectcontour contour-certgen-v1.18.1-zfcwr 0/1 Completed 0 6d2h
projectcontour envoy-n6pld 2/2 Running 0 6d2h
tkg-system kapp-controller-74bcf9f866-9f6th 1/1 Running 0 6d2h
tkg-system tanzu-capabilities-controller-manager-6ff97656b8-bbhs6 1/1 Running 0 6d2h

以上,为tanzu社区版的安装,更多信息参见官方文档

VMware Tanzu社区版初体验的更多相关文章

  1. 在同一个硬盘上安装多个 Linux 发行版及 Fedora 21 、Fedora 22 初体验

    在同一个硬盘上安装多个 Linux 发行版 以前对多个 Linux 发行版的折腾主要是在虚拟机上完成.我的桌面电脑性能比较强大,玩玩虚拟机没啥问题,但是笔记本电脑就不行了.要在我的笔记本电脑上折腾多个 ...

  2. Python 3.8.0 正式版发布,新特性初体验 全面介绍

    Python 3.8.0 正式版发布,新特性初体验 北京时间 10 月 15 日,Python 官方发布了 3.8.0 正式版,该版本较 3.7 版本再次带来了多个非常实用的新特性. 赋值表达式 PE ...

  3. Serverless 初体验:快速开发与部署一个Hello World(Java版)

    昨天被阿里云的这个酷炫大屏吸引了! 我等85后开发者居然这么少!挺好奇到底什么鬼东西都是90.95后在玩?就深入看了一下. 这是一个关于Serverless的体验活动,Serverless在国内一直都 ...

  4. Flume日志采集系统——初体验(Logstash对比版)

    这两天看了一下Flume的开发文档,并且体验了下Flume的使用. 本文就从如下的几个方面讲述下我的使用心得: 初体验--与Logstash的对比 安装部署 启动教程 参数与实例分析 Flume初体验 ...

  5. 云计算第一章:服务器硬件及linux初体验

    第一章:服务器硬件及linux初体验 一.了解linux: 1.linux的三大分支:debian.redhat.ubuntu 2.redhat版本: redhat:红帽,简称RHEL,企业级官方版本 ...

  6. dubbo实战之一:准备和初体验

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  7. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  8. Microsoft IoT Starter Kit 开发初体验

    1. 引子 今年6月底,在上海举办的中国国际物联网大会上,微软中国面向中国物联网社区推出了Microsoft IoT Starter Kit ,并且免费开放1000套的申请.申请地址为:http:// ...

  9. node.js 初体验

    node.js 初体验 2011-10-31 22:56 by 聂微东, 174545 阅读, 118 评论, 收藏, 编辑 PS: ~ 此篇文章的进阶内容在为<Nodejs初阶之express ...

随机推荐

  1. Git使用教程五

    基于ssh协议(推荐) 该方式与前面https方式相比,只是影响github对于用户的身份鉴权方式,对于git的具体操作(如提交本地.添加注释.提交远程等操作)没有任何影响.   生成公私钥对指令(需 ...

  2. 一文读懂Base64编码

    Base64编码 字符对应表 上表就是用来表示Base64,一共64个字符,A-Z,a-z,0-9,+,-,还有=(作为补位) 无论将文件,字符串,还是什么转为Base64,一定是用上表的字符表示. ...

  3. shell脚本中select循环语句用法

    shell脚本中select循环语句 1. 脚本中select的语法格式 select VAR in LIST do command1 command2 ... ... commandN done s ...

  4. [第二篇]——Docker 架构之Spring Cloud直播商城 b2b2c电子商务技术总结

    Docker 架构 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统.比如官方镜像 ubuntu:16.04 就包含了完整的一 ...

  5. 5-7接口测试工具之jmeter的使用

    1.安装 免费的,安装jdk配好系统环境变量就能用了 2.jmeter测接口 获取用户信息,接口文档定义有2种请求方式 添加线程组-->添加http请求-->输入接口文档中说明的服务器名称 ...

  6. Vue3的新特性及相关的Composition API使用

    首先 创建项目 Vue3 Vue3 相较于Vue2 的6大亮点: 1 性能快. 2 按需编译 体积更小 3 提供了组合API 类似于react 的React Hooks 4 更好的Ts支持 5 暴露了 ...

  7. 5cms使用sql语句给网站添加内容

    <!--list:{$Sql=UPDATE [{pre}Content] SET Indexpic="/uploadfile/201405/25/lsgjyst.jpg",t ...

  8. Jmeter扩展组件开发(10) - 自定义扩展函数助手的开发

    CODE package com.functions;import org.apache.jmeter.engine.util.CompoundVariable;import org.apache.j ...

  9. DevOps与CICD简介

    整体知识点 ·Devops与CI/CD简介 ·Gitlab安装与Git命令使用 ·Gitlab实现持续集成 ·Gitlab实现分支管理 ·Jenkins简介及安装 ·Jenkins插件管理及基础配置 ...

  10. file_get_contents('php://input') 数据如何转换成数组

    前台表单页:demo01.html 后台:demo01.php 输出结果: 备注:若前台通过Ajax的post提交过来的是json数据,需要对json数据进行解析:$data = json_decod ...