Tanzu 学习系列之TKGm for vSphere 快速部署

news/2024/12/19 21:08:39/

趁着 VMworld 2021 China 的热度,首次在开通已久的公众号发表内容。

开局一张图,一图胜千言! 先介绍下背景知识。

8bdfc68486bcfcec6e9001b0a72e023b.png

    上图是 VMware Tanzu 产品线,包含构建、运行、管理三个部分。今天我们只说运行这部分,首先要理清几个容易混淆的概念: Tanzu, vSphere with Tanzu, Tanzu Kubernetes Grid (包含TKGs和TKGm)。

     Tanzu 是 VMware 现代化产品家族的总称,Tanzu 来自于斯瓦希里语(斯瓦希里  Swahili 是非洲东部地区跨界民族),是"树枝"的意思,它代表的是一个不断增长的解决方案系列的新分支,可帮助客户向任何云环境交付任何应用。VMware 用 Tanzu 来命名应用现代化解决方案相关的产品,VMware 也在不断地丰富和发展 Tanzu 产品家族,为用户构建、运行和管理现代应用提供更大的便利。

cf43b7c1113610c4f31b6d72cd36f51e.png

     vSphere with Tanzu 是把 vSphere 集群重新构建为 Kubernetes 集群,也叫主管集群,ESXi 成为 Kubernetes 的 worker 节点,可以直接在 ESXi 上直接运行容器 Pod 。vSphere with Tanzu 为 vSphere 环境管理新提供了一个 Kubernetes 管理方式,使得开发人员在 vSphere 环境中也可以使用熟悉的 Kubernetes 命令和 API 来开发、部署、管理应用,且应用是直接运行在 ESXi 之上的容器Pod内,同时也可以用 Kubernetes 命令和API来发布、管理虚拟机和 Tanzu Kubernetes Grid 集群等服务。

   Tanzu Kubernetes Grid (TKG) 是 Tanzu 产品家族中的一个产品,是 VMware 的 Kubernetes 企业发行版本,可以在私有云和公有云多种云环境中部署,为用户提供一致的 Kubernetes 使用体验,与社区的 Kubernetes完全兼容。根据部署和管理方式的不同,分为Tanzu Kubernetes Grid Service for vSphere ( 简称TKGs) 和 Tanzu Kubernetes Grid Muti-cloud (简称TKGm)。

18173f6eac640be897df98943429c763.png

     TKGs 是通过vSphere with Tanzu进行发布和管理的,作为vSphere with Tanzu的一部分,vSphere with Tanzu 通过Kubernetes方式对TKGs进行全生命周期管理。

8f0cb37d84fe80aae2f8bc2826ed23e9.png

     TKGm是Tanzu Kubernetes Grid多云版本,支持部署在vSphere 、AWS、Azure多种云环境。通过独立部署的TKG管理集群进行生命周期管理。

     TKGm 与TKGs相比,版本迭代速度更加快,部署方式更加灵活。

     背景知识介绍完了,说正题:TKGm 1.4 for vSphere 快速部署,尽快踏上学习 TKGm 之旅。

      前提假设对vsphere 和Kubernetes有基础知识,按照以下流程进行部署。为了简化安装过程,快速熟悉 TKGm,本次是采用的是在线安装模式(TKGm 的 Kubernetes 来自 VMware 在线仓库,也可以自建 Harbor 进行离线安装模式,后续会单独介绍)并采用简单的网络架构。

部署流程:

d6a1b9a70c2b38cc7f94a1eb25cc4965.png

拓扑架构:

备注:为了测试方便,便于理解,管理网、业务网、节点网络都使用同一个网络mgmt (生产部署需要分开)

0cdaff21c1c92b8525b4315a0a15f18f.png

部署环境:

角色
版本
备注
vcenter
7.0.3支持6.7U3 和7.x

ESX

7.0.3
支持6.7U3 和7.x

AVI 

(NSX Advanced Load Balancer)

20.1.6
负载均衡和服务发布
bootstrap

Centos 7.4

Tanzu cli 1.4 

登陆、管理TKGm集群
DHCP/DNS/NTP
windows 2012

部署详细步骤

 0.  登陆以下地址下载软件 (需要拥有vmware账号)

备注:TKGm 的 Tanzu Cli 工具和 OS OVA 模版从以下地址下载, Kubernetes需要在部署过程中自动从 VMware 在线仓库 projects.registry.vmware.com  拉取镜像部署。(也可以搭建私有 Harbor 仓库)

https://customerconnect.vmware.com/downloads/details?downloadGroup=TKG-140&productId=1165&rPId=73660

Tanzu cli 1.4 工具软件

c1a2edd9dabd66030d858d2dd54e5a48.png

kubectl 工具软件

5fe615c645afec2ff95c87b82a81312d.png

Kubernetes OVA 模版文件(支持Photo和Ubuntu )

da6c120bb76cd97131e0fc6c4c3bac55.png

AVI 负载均衡控制软件

baf6332dec14e7ff9f8447b0db3a0d3a.png

1.  配置 DHCP/DNS/NTP 服务器,DHCP 服务器为TKGm 分配节点IP、DNS、GW,为了测试方便,建议配置 Windows DHCP服务器。同时把此服务器配置为 DNS 和 NTP 服务器。

1)配置 DNS 服务,写入vc、esx等解析,并配置DNS转发公网DNS (在线部署模式需求)

a6c252787b3c88eabc5511fc5ddc462c.png

2) 安装配置 DHCP 服务

14d5b5f01fe0a9e1e4855bca67b9ddee.png

f9548a9d5f106bde199f541047bc5727.png

501bc40ce375ddefdf50b64fc0fdddc1.png

3cd624baf3beea04062052fcbfdb07dc.png

c6bebebc25c32040f824900f805a9a49.png

28adebab678bc2c8d0cab322de7628e5.png

fc2fdb9ea4279f3269c674bb165deca7.png

2. 准备 vSphere 集群环境,由于假设具备 vsphere 基础知识,就不详述配置过程,只是注意要打开 DRS功能。

上传下载的 Kubernetes OVA 模版文件, 并转换为模版

48004340a6cd50b5dd7653757e2403e2.png

   3. 准备 Bootstrap 启动服务器,bootstrap 作为部署 TKGm 的启动服务器,建议采用  linux 操作系统(建议centsos 7.x),并需要安装 Docker 引擎,同时配置DNS与NTP。Bootstrap 与 TKGm管理集群、工作集群,关系如下图。

23cfcddce6a4ebfcbad78af51e2cff9e.png

1)安装Tanzu cli工具,从 myvmware 下载 tanzu-cli-bundle-linux-amd64.tar 解压后进行安装。

查看解压包

# ls cli*

cluster                        kapp-linux-amd64-v0.37.0+vmware.1.gz  login               package                                 ytt-linux-amd64-v0.34.0+vmware.1.gz

core                                    kbld-linux-amd64-v0.30.0+vmware.1.gz  management-cluster  pinniped-auth

imgpkg-linux-amd64-v0.10.0+vmware.1.gz  kubernetes-release                    manifest.yaml       vendir-linux-amd64-v0.21.1+vmware.1.gz

安装tanzu cli

#install core/v1.4.0/tanzu-core-linux_amd64 /usr/local/bin/tanzu 

安装tanzu cli 插件

#tanzu plugin install --local cli all

#tanzu plugin list

!  Unable to query remote plugin repositories : could not fetch manifest from repository "core": Get "https://storage.googleapis.com/tanzu-cli-tkg/artifacts/manifest.yaml": context deadline exceeded

  NAME                LATEST VERSION  DESCRIPTION                                                       REPOSITORY  VERSION  STATUS

  cluster                             Kubernetes cluster operations                                                  v1.4.0   installed

  kubernetes-release                  Kubernetes release operations                                                 v1.4.0   installed

  login                               Login to the platform                                                          v1.4.0   installed

  management-cluster                  Kubernetes management cluster operations                                       v1.4.0   installed

  package                             Tanzu package management                                                       v1.4.0   installed

  pinniped-auth                       Pinniped authentication operations (usually not directly invoked)              v1.4.0   installed

2)安装kubectl工具

 install kubectl-linux-v1.21.2-vmware.1 /usr/local/bin/kubectl

3)安装Carvel工具

  把 ytt  kapp  kdld  imgpkg工具添加执行权限,拷贝到/usr/local/bin/ 目录下

4) 安装docker 引擎

wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo

yum install docker-ce 

systemctl enable docker

5) 生成ssh-key 密钥对,用来作免密登陆TKGm 节点的密钥

[root@tkgcli176 ~]# ssh-keygen -t rsa -b 4096 -C "tkg@vcf.com"

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

SHA256:gO0uIUhpwlPfHPVgQXsVsuThlj6GLuATeonnhaAolLQ tkg@vcf.com

The key's randomart image is:

+---[RSA 4096]----+

|   .   .o*.+ o.  |

|. o .oo o B *    |

|.B  ..oo . O     |

|=.+  . .  =      |

|.E...o. S. +     |

|o ..=o= . . .    |

|o. o.B.o .       |

|.   +.o .        |

|     .           |

+----[SHA256]-----+

[root@tkgcli176 ~]# eval `ssh-agent -s`

Agent pid 274293

[root@tkgcli176 ~]# ssh-add ~/.ssh/id_rsa

Enter passphrase for /root/.ssh/id_rsa:

Identity added: /root/.ssh/id_rsa (/root/.ssh/id_rsa)

查看pub密钥

cat .ssh/id_rsa.pub

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDBd5nZEo7UucQePacNwrStPz6o7QaBZE7yRUHG4A6lctI0s46Rfgg/uQ0p7hjz70xfOyJEQ8UlIQ36qhYtVq/RJXsLuCs4qxkbJb8/laZ1q+ybNLJUCL/oV7UbvGB7TKL0qZ7DbgmUdHfDg5/LSC9xN1nhWt2lRcPfwZDTWtojz76IYdYosU/baejualzr8lSIBhZIQsLCBwaonLPhPkU1mGBrydRfZVK3rysWAtzSkf8Dlo9lCtwbJIO1yHJd++jP6Dr/Q0QB0s07NL0HTmMc7Q4RqLlrHlsmwyJ3ALoTi86VazjHUoPZl7xlUcl+jdjL9Om9LIhwcj/Q28L/HfrXGMfW6O8F1pK2QYI3AZdN5lmJ8YzO23sQ9HLvsn15rBCWSxV/rsnq5pvo92cRzYCl2tvqt2YWfWD8AhM7dg46wjfg5ibo3LRYPH4/n7g7kF844pkuyIN4D/K96f5l4jfs/OWrFiW/0dGElCvTEpDbnjWZhi49KgCI5jS2Y4XaX/f42GftlHuhHX9pd5SQvydRBzN5hpY4IpGr8+MVqXutlA98u3OVFUTD5UHSeNNs1ZrHsQXzxdY5QZw2YH7ybv3yOvTKgQoP/rGGofcUesCGmi0D5wQalU8y6RaIJSIIkplIDP+L7mrfL6yKRqRDOib0CbXonuialKzcfPaKxnv0nw== tkg@vcf.com

6 )配置bootstrap dns,同时设置NTP服务器,保证可以与

 projects.registry.vmware.com 正常解析和通信

c8191ff9e365b481aac732c55653db7a.png

4. AVI 是VMware NSX 高级负载均衡器,作为 TKGm 的 API 的外部负载均衡器,同时为 TKGm 提供的 LoadBalancer 服务暴露功能。为了测试方便,管理网络和数据网络采用同一个网络。

   备注:当前 TKGm 1.4 支持的 AVI 20.1.6 版本;测试系统资源限制,AVI控制器是单台部署,生产系统要三台配置成集群。

1)部署下载的AVI ova文件

cf8986704744027fd036a921f6d88a8b.png

2)为AVI虚拟机命名

3276d85da7b6ac167cfe0e7f7b9c80d4.png

ca379b7e4f9bfbd2af8884d20b47e64d.png

3)输入规划的IP、子网掩码、网关

0be0fdc0f0b71d1cf5c733d8bb5349ac.png

   4)部署成功之后,根据系统性能,等待AVI启动,使用IP进行登陆,创建admin用户和密码

3677f17bf159194d1c1bbbc7b2da801e.png

5)设置passphrase和dns 服务器(也可以后续设置),默认下一步

7b5af6031f861c98dbb696c1a1a63fd7.png

ff3aa306f9936d8b71a606b72ad41530.png

30cd4440affd604d0cfe581bb44553ee.png

6)admin 用户名和密码登录之后,导航到Default cloud开始配置与VC关联

7da02b997585f8e80670ab2ffa1388d2.png

c9e4e89c33264c5745e6ed23ca49e97f.png

7)输入VC IP 、管理员用户名和密码

d8c35e96015c967306ec3589bce527a4.png

 8)设置数据中心

6edb645e3484dc654dfe543b8ae31d52.png

9)选择VC上的管理网名称,设置管理网段、网关以及静态池,选择save,

 连接成功,显示绿色

381a53c2b201cab71f1c5e56d834fd41.png

ef78e7b25b9a47ba6198ff30ed9c5fca.png

10)设置Service Engine Group ,编辑默认Default-Group

7a3bafcb37929c90e937baf8ce621a3b.png

11)由于TKGm自带的AVI 的License 是Avi Essentials,所以Service Engine Group只支持a/s模式,由于测试环境资源有限,Service Engine 内存预留可以不选(生产系统需要设置预留),保存退出

49fbb50f94db898b21339050220aa881.png

79bb34fa5d60d6c63413be9db14bbcf3.png

12)配置网络,由于本次测试管理网、业务网、节点 都使用管理网,所以不需要单独配置业务网等。

35fc2a8b072e7ceaf016cb62ab71a6b6.png

13)设置该子网可以作为业务网和数据网络

7b14628bba7e34b1ddd8e184cff6f339.png

4c491c4cd095a84632eb60a4c65bf2e5.png

08db0512a490c2b039486d554be0799a.png

14)设置IPAM profile 

d42ce169c685378d0438ecbb75c93eed.png

92f91917d37b3dfda2eca53922e8a51a.png

15)设置cloud 与IPAM关联

5596007b746157fc00499c1b31e1669b.png

f8376c4fa692d8bcd1f179c353fc8d4d.png

16)创建新的AVI控制器证书

13071d21911994c79155f4366c14cdf3.png

17)设置证书名字、Common Name (测试可以任意写),SAN (确保与AVI控制器IP一致)

4b096e7891c856d8d23270cf19be4ea2.png

18)可以设置证书过期时间

cfa74ece559c892ef16328e22ddbcdd3.png

04fa12afd45e449e3f660601195404d8.png

19)进入管理的设置中,编辑、进行证书替换

e5330a87463880f5384a7b6361b80ebe.png

20)删除原有的SSL/TLS证书,替换上面创建的新证书,并确保选择Allow B asic Authencication,保存退出,重新登录

0b7f0c4f628f69c8cceead7151806606.png

21)重新登录AVI控制器,设置DNS/NTP

fafbb959660e7544145bd12e0213acc3.png

5. 部署 TKGm 管理集群

1)登陆 bootstrap 服务器,运行创建管理集群命令

[root@bootstrap ~]# tanzu management-cluster create --ui --bind 192.168.110.21:8088 --browser none --timeout 2h0m0s

Validating the pre-requisites...

Serving kickstart UI at http://192.168.110.21:8088

2) 使用浏览器 http://192.168.110.21:8088 打开创建管理集群UI,选择部署在VMware vsphere 

8acbea483505fcaef54d097c95237a03.png

3)输入VC IP、用户名、密码,然后点击connect 连接到VC

165fbe9a5ab0d0921339facba7dbaa43.png

4)由于vsphere 是7.x版本,会弹出界面提示可以采用vsphere with tanzu 进行管理,直接选择部署TKG管理集群

d119f34ccdb5e667984988035f8b964e.png

5)输入在配置bootstrap 过程中配置的 /root/.ssh/id_rsa.pub 中的密钥

2a56d9edc08946c7782d00f02ecbd994.png

6)管理集群dev模式是 1个控制节点,1个worker节点;Production 是3个控制节点,1个worker节点,由于测试环境,建议选择dev模式。管理集群命名,管理集群控制节点的高可用模式选择AVI ,管理集群控制节点的控制IP,可以从AVI 网络池选择输入,也可以自动获取,本次测试选择自动获取。

d609fe3ef543957102f1950054359d65.png

7)关联AVI控制器,输入AVI IP 用户名、口令,以及配置AVI控制器步骤中创建的证书,进行验证。

5960aa10ec8c7b6b9df33ef5efce71f8.png

8)登陆AVI控制器,导出证书,

cf2dfaf95366708fae19d4a57d4e4c57.png

bda65e5cf00dcaf92d66c5a03d17112e.png

9)选择关联AVI的Cloud、service engine group name、网络信息,下一步

56033a8d014f30c18bbd50d54b67b1b8.png

10)metadata 可以不设置,下一步

ef0fe54e63e2bfda9e78916f8d3acff6.png

11)选择部署TKGm管理集群的vsphere上的位置

64680bec4976ef503d63736d7a501eee.png

12)选择kubernetes CNI  以及使用的网络,下一步

a9279233b962e36a4e0900fa8a665489.png

13)统一认证,需要配置认证服务器,本次测试不配置,下一步

7452f665ed4a16e1386eaf730f4fe85e.png

14)选择部署管理集群的kubernetes OVA 模版(之前已经上传),TKG 1.4 管理集群要求必须是1.21.2版本

d41b6dd0a218621e14f4f4385ffc07a5.png

15)注册到多集群管理TMC,TMC是SAAS服务,可以不配置,下一步

7191f84804a95636b21763ced1019812.png

16)REVIEW 配置信息,可以直接图形点击部署也可以把执行命令拷贝,直接在bootstrap上执行,本次测试在bootstrap上执行命令行执行

58bedd4e29d341582f103e749685fdf0.png

fa77fe5b5ae28c2c4f7f87c621f39e04.png

83ecad1f92434af18a48166ede0032c3.png

17)修改命令行日志级别为9可以更详细查看部署过程

b3786dd69a27eef2804a0cbde4a2a082.png

18)根据网络和系统性能部署时间十几分到几小时,管理集群部署成功如下

2d31858c1d3a3fb743f5d3cab354758e.png

19)获得kubeconfig文件,登陆管理集群

tanzu mc kubeconfig get --admin

Credentials of cluster 'tkgm' have been saved

You can now access the cluster by running 'kubectl config use-context tkgm-admin@tkgm'

8167b5823befc8fa14200ffe4268a8d2.png

6、发布TKGm工作集群

1)登陆到bootstrap 的/root/.config/tanzu/tkg/clusterconfigs 目录下,拷贝创建管理集群使用的配置文件为workload01.yaml进行修改,内容如下

CLUSTER_NAME: workload01

CLUSTER_PLAN: prod

CNI: antrea

AVI_CONTROL_PLANE_HA_PROVIDER: "true"

CONTROL_PLANE_MACHINE_COUNT: 1

WORKER_MACHINE_COUNT: 1

VSPHERE_CONTROL_PLANE_NUM_CPUS: 2

VSPHERE_CONTROL_PLANE_DISK_GIB: 40

VSPHERE_CONTROL_PLANE_MEM_MIB: 8192

VSPHERE_WORKER_NUM_CPUS: 2

VSPHERE_WORKER_DISK_GIB: 40

VSPHERE_WORKER_MEM_MIB: 4096

VSPHERE_CONTROL_PLANE_DISK_GIB: "40"

VSPHERE_CONTROL_PLANE_ENDPOINT: ""

VSPHERE_DATACENTER: /DC

VSPHERE_DATASTORE: /DC/datastore/localesx02a

VSPHERE_FOLDER: /DC/vm

VSPHERE_NETWORK: /DC/network/mgmt

VSPHERE_PASSWORD: <encoded:Vk13YXJlMSE=>

VSPHERE_RESOURCE_POOL: /DC/host/TANZU/Resources

VSPHERE_SERVER: 192.168.110.20

VSPHERE_SSH_AUTHORIZED_KEY: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC5BZPO9DUbst6nnG1ImA8Iay/+Ca+xh2d0V5cHPO0/ZC1zrImF/Yhht5x2V3xm9sdYJu6uSc5qZiYpTc3B4VygttijdmYyH+QoO8Qs/0i160NWb2wByUFpCvzFRAnp+352ZCR/CO3scILmRLl1hQGm795k0DgsTXKBLx4icyej6FY5Hku81GrxKXQDJS/D7c7ejbPPv+zWxpasyt3Pdkiai9wSAsVKn9/xW7Xxq3bu9sAnJLiOUY5MnRUAEHPprf5i13gMWcZFIxm2dIg4xzmiXzVKa2BiKwrohn0QGtFAJpuIbAoZa1hbwYUKKSTjNhjwmffOAYHPZ+bVnYL9aKEf5duJdTXDiYWtl4xxSIA1TxPGkEHaxIVmWbjf1LlJk+HZxbtiBbeqX/L7bnqfnrpoJeWCM0mGHQoVjM4yM3l8JBrNm+CT9ydXLPTecpMn2XA2K8xlhdSyK4S0ADZUkaZQSs8zuJgzcRyKLryNfm1nIjWbRfv1v7R/vu2nuwJT5FznzbwDcR1Z2sY6Rc0qboXe8/LEk/jrxy4B4nheJ3wNepVfLJQKJh7O/L2bfGsCi21PCGmUcgotHTjxU+1/kPRjPeEwkrbO73+8q4BPR0x7CAgNDlvPYr06qfxaJzh8eFXc4/c2bLI3z0keYbQx3aI4Kjr74J5SL/oT/UceiAaaJQ== tkg@vcf.com

VSPHERE_TLS_THUMBPRINT: 04:53:AA:FF:75:F9:03:D1:E5:A4:A9:91:F3:86:9D:1E:BE:39:00:E9

VSPHERE_USERNAME: administrator@vsphere.local

2)在bootstrap 上发布工作集群

 tanzu cluster create -f workload01.yaml -v 9

18fe99c4e3b07a2b1d168bf286beaf7c.png

3)获得工作集群的kubeconfig文件,并登陆

 tanzu cluster kubeconfig get workload01 --admin

Credentials of cluster 'workload01' have been saved

You can now access the cluster by running 'kubectl config use-context workload01-admin@workload01'

97309bfec7ba9dd603245b2c0306ba7e.png

4)发布一个应用测试,采用的AVI LoadBalaner方式暴露服务,可以直接访问这个IP

ccc9291622df86e2a3f8dee8863d4908.png

98e3995474afb02e5343cf44508474e1.png



要想了解云原生、机器学习和区块链等技术原理,请立即长按以下二维码,关注本公众号亨利笔记 ( henglibiji ),以免错过更新。

c2de7b66f0b67d4352b63de6a1d9f96b.png


http://www.ppmy.cn/news/233676.html

相关文章

玩转 Tanzu Community Edition(社区版)

Tanzu Kubernetes Grid (TKG) 是 Tanzu 产品家族中的运行时基石&#xff0c;作为VMware 的 Kubernetes 企业发行版本&#xff0c;可以在私有云和公有云多种云环境中部署&#xff0c;为用户提供一致的 Kubernetes 使用体验。为了满足学习&#xff0c;开发、测试、生产部署等多样…

AttacKG: Constructing Technique Knowledge Graph from Cyber Threat Intelligence Reports 源码复现

AttacKG&#xff1a;从网络威胁情报报告构建技术知识图谱 文章摘要 网络攻击越来越复杂和多样化&#xff0c;使得攻击检测越来越具有挑战性。为了打击这些攻击&#xff0c;安全从业者积极总结并以网络威胁情报&#xff08;CTI&#xff09;报告的形式交流他们对组织间攻击的知…

Step by step:安装 Tanzu Kubernetes Grid

简介 本文的目的是实践Tanzu Kubernetes Grid&#xff08;以下简称TKG&#xff09;的安装和部署。有关TKG的介绍请参考&#xff1a;Tanzu Kubernetes Grid介绍 使用环境 项目内容备注VMware ESXi7.0.117325551vCenter Server7.0.1.0030017491101NSX-T3.113.1.1.0.0.17483185…

GTK+:GTK+的简介、安装、使用方法之详细攻略

GTK&#xff1a;GTK的简介、安装、使用方法之详细攻略 目录 GTK的简介 1、GTK特点 GTK的安装 1、基于Windows平台安装 第一步、下载GTK 第二步、安装GTK 第三步、加载系统环境变量 第四步、运行命令测试 第五步、利用python预测测试 GTK的使用方法 1、C语言实现 2、…

VMware Tanzu Kubernetes Grid介绍

VMware Tanzu Kubernetes Grid&#xff08;以下简称TKG&#xff09;是一个按照V公司的想法提供了一致的&#xff0c;上游兼容的区域性Kubernetes基础架构&#xff0c;TKG为最终用户工作负载和生态系统集成做好底层准备。 可以在VMware软件定义的数据中心&#xff08;SDDC&…

基于历史对比学习的时序知识图谱推理

时序知识图谱 知识图谱&#xff08;KGs&#xff09;作为人类知识的集合&#xff0c;在自然语言处理、推荐系统和信息检索等领域显示展现了很好的前景。传统的KG通常是一个静态知识库&#xff0c;它使用图结构数据拓扑&#xff0c;并以三元组&#xff08;s, p, o&#xff09;的…

​AAAI 2023 | 基于历史对比学习的时序知识图谱推理

©PaperWeekly 原创 作者 | 徐奕 单位 | 上海交通大学Acemap 研究方向 | 数据挖掘 论文标题&#xff1a; Temporal Knowledge Graph Reasoning with Historical Contrastive Learning 论文链接&#xff1a; https://arxiv.org/abs/2211.10904 代码链接&#xff1a; https:…

G i t

Git 1、Git 概述1.1、版本控制工具 2、Git 常用命令★★★★2.1、设置用户签名★★★★2.2、初始化本地库★★★★2.3、查看本地库状态$ git status2.4、添加暂存区$ git add 文件名2.5、提交本地库2.6、修改文件$ vim 文件名2.7、历史版本 3、Git 分支操作3.1、分支的操作&am…