TKEStack容器管理平台实战之部署wordpress应用

TKEStack容器管理平台实战之部署wordpress应用

  • 一、TKEStack介绍
    • 1.1 TKEStack简介
    • 1.2 TKEStack特点
    • 1.3 TKEStack架构图
  • 二、kubernetes集群介绍
    • 2.1 k8s简介
    • 2.2 k8s架构图
  • 三、本次实践介绍
    • 3.1 实践环境要求
    • 3.2 本次实践环境规划
    • 3.3 本次实践简介
  • 四、安装容器管理平台
    • 4.1 安装TKEStack
    • 4.2 TKEStack基本设置
    • 4.3 集群设置
    • 4.4 认证设置
    • 4.5 镜像仓库设置
    • 4.6 业务设置
    • 4.7 监控设置
    • 4.8 控制台设置
    • 4.9 配置预览
    • 4.10 开始安装
  • 五、访问TKEStack容器平台
    • 5.1 访问TKEStack首页
    • 5.2 添加Global集群工作节点
    • 5.3 查看Global集群工作节点
    • 5.4 查看TKEStack首页概览
  • 六、导入本地k8s集群
    • 6.1 检查本地k8s集群状态
    • 6.2 下载本地k8s集群kubeconfig文件
    • 6.3 上传kubeconfig文件
    • 6.4 查看导入集群状态
    • 6.5 查看首页概览页面
  • 七、部署wordpress应用
    • 7.1 yaml创建资源
    • 7.2 编写yaml部署文件
    • 7.3 部署wordpress应用
    • 7.4 检查工作负载状态
    • 7.5 检查service状态
  • 八、wordpress的初始化
    • 8.1 进入wordpress的初始安装界面
    • 8.2 设置网站信息
  • 九、访问wordpress
    • 9.1 访问wordpress首页
    • 9.2 访问wordpress后台管理

一、TKEStack介绍

1.1 TKEStack简介

TKEStack是一个开源项目,为在生产中部署容器的组织提供容器管理平台。TKEStack让您可以轻松地在任何地方运行Kubernetes、满足 IT 要求并为DevOps团队提供支持。

1.2 TKEStack特点

  • 统一集群管理
    用于集中管理多个 Kubernetes 集群的 Web 控制台和命令行客户端。
    与现有身份验证机制集成,包括LDAP、OIDC、前端代理和公共 OAuth 提供商(例如 GitHub)。
    统一的授权管理,不仅是集群管理层面,甚至是Kubernetes资源层面。
    多租户支持,包括容器、构建和网络通信的团队和用户隔离。
  • 应用程序工作负载管理
    提供直观的 UI 界面来支持可视化和 YAML 导入以及其他资源创建和编辑方法,使用户无需预先学习所有 Kubernetes 概念即可运行容器。
    抽象的项目级资源容器,支持跨多个集群的多个命名空间管理和部署应用程序。
  • 运维管理
    集成系统监控和应用程序监控。
    持久的 Kubernetes 事件和审核日志。
    限制、跟踪和管理平台上的开发人员和团队。
  • 插件支持和管理
    身份验证身份提供者插件。
    授权提供商插件。
    事件持久存储插件。
    系统和应用程序日志持久存储插件。
    Galaxy(网络)、TApp(工作负载)、GPUManage(GPU)、CronHPA(HPA)、LBCF(负载平衡)

1.3 TKEStack架构图

请在此添加图片描述

二、kubernetes集群介绍

2.1 k8s简介

kubernetes,简称K8s,是用8代替名字中间的8个字符“ubernete”而成的缩写。Kubernetes是一种开源的容器编排和管理平台,它可以帮助我们在分布式的环境中管理容器化的应用。Kubernetes可以让开发者和运维人员通过定义和管理Pod、Service、Deployment等资源来部署和管理应用程序,使得应用程序更易于部署、扩展和管理。

2.2 k8s架构图

kubernetes集群架构示意图

在这里插入图片描述

三、本次实践介绍

3.1 实践环境要求

TKEStack容器管理平台部署环境要求需按如下准备,由于是测试环境,本次部署节点的硬件配置略低于官方要求。

TKEStack部署环境要求如下:

  • 硬件
    8 个虚拟CPU
    16 GB 内存
    100 GB 磁盘空间
  • 操作系统
    ≥ Ubuntu 16.04/18.04 LTS(64 位)
    ≥ CentOS Linux 7.6(64 位)
    ≥Tencent Linux 2.2

3.2 本次实践环境规划

  • TKEStack的Global集群
hostnameIP地址操作系统版本k8s版本角色
master192.168.3.141centos7.91.21.4-tke.3master节点/TKEStack安装节点
node01192.168.3.142centos7.91.21.4-tke.3worker节点
node02192.168.3.143centos7.91.21.4-tke.3worker节点
  • 本地k8s集群
hostnameIP地址操作系统版本k8s版本角色
k8s-master192.168.3.201centos7.6v1.27.4master节点
k8s-node01192.168.3.202centos7.6v1.27.4worker节点
k8s-node02192.168.3.203centos7.6v1.27.4worker节点

3.3 本次实践简介

1.部署TKEStack容器管理平台;
2.在TKEStack容器管理平台部署wordpress应用。

四、安装容器管理平台

4.1 安装TKEStack

在master安装节点上,执行以下命令,Web GUI 将引导初始化并安装TKEStack 的Global集群和控制台。

# Choose installation package according to your installation node CPU architecture [amd64, arm64]
arch=amd64 version=v1.9.0 && wget https://tke-release-1251707795.cos.ap-guangzhou.myqcloud.com/tke-installer-linux-$arch-$version.run{,.sha256} && sha256sum --check --status tke-installer-linux-$arch-$version.run.sha256 && chmod +x tke-installer-linux-$arch-$version.run && ./tke-installer-linux-$arch-$version.run

在安装过程中需要耐心等待一段时间,出现以下提示时,表示TKEStack已经初步安装成功。

请在此添加图片描述

4.2 TKEStack基本设置

访问地址:http://192.168.3.141:8080/,进入TKEStack初始配置页面。在账户设置中,设置用户名和密码,高可用这里选择不设置。

请在此添加图片描述

4.3 集群设置

网卡名称:eth0
GPU类型:不使用
容器网络CIDR:10.0.0.0/14
master节点:192.168.3.141/ssh端口22/密码认证
其余默认,下一步即可。

请在此添加图片描述

4.4 认证设置

使用TKE提供的用户认证功能

请在此添加图片描述

4.5 镜像仓库设置

选择默认的TKE提供

请在此添加图片描述

4.6 业务设置

选择开启业务模块,默认是开启状态。

请在此添加图片描述

4.7 监控设置

监控存储类型:TKE提供。

请在此添加图片描述

4.8 控制台设置

默认设置即可。

请在此添加图片描述

4.9 配置预览

检查所有配置是否正确,点击安装。

请在此添加图片描述

4.10 开始安装

TKEStack初始化安装过程有点长,需要耐心等待安装完成即可。

请在此添加图片描述

出现以下界面,表示TKEStack容器管理平台安装完毕,

请在此添加图片描述

五、访问TKEStack容器平台

5.1 访问TKEStack首页

访问地址:https://192.168.3.141/,将IP替换为自己安装节点的IP地址。输入账号密码,进入TKEStack首页。

请在此添加图片描述

请在此添加图片描述

5.2 添加Global集群工作节点

在集群管理——global集群,点击进入global集群管理页面。

请在此添加图片描述

请在此添加图片描述

在global集群管理页面,点击节点管理——节点,选择添加节点。

请在此添加图片描述

填写目标机器信息:
目标机器:192.168.3.142
SSH端口:22
认证方式:密码认证
填写node01工作节点的root账号和密码,其余默认,保存即可。

请在此添加图片描述

按照以上配置,添加第二台工作节点node02,添加即可。

请在此添加图片描述

5.3 查看Global集群工作节点

等待节点初始化完成,看到各节点状态为正常Running状态即可。

请在此添加图片描述

5.4 查看TKEStack首页概览

查看TKEStack首页概览,可以看到当前资源概览和集群状态

请在此添加图片描述

六、导入本地k8s集群

6.1 检查本地k8s集群状态

检查本地k8s集群的工作节点状态

[root@k8s-master ~]# kubectl get nodes
NAME         STATUS   ROLES           AGE    VERSION
k8s-master   Ready    control-plane   120d   v1.27.4
k8s-node01   Ready    <none>          120d   v1.27.4
k8s-node02   Ready    <none>          120d   v1.27.4

检查本地k8s集群的系统pod状态

[root@k8s-master ~]# kubectl get pods -n kube-system
NAME                                       READY   STATUS    RESTARTS      AGE
calico-kube-controllers-85578c44bf-gw2km   1/1     Running   3 (88m ago)   120d
calico-node-8tts7                          1/1     Running   3 (88m ago)   120d
calico-node-fx8mv                          1/1     Running   3 (88m ago)   120d
calico-node-n8rt4                          1/1     Running   3 (88m ago)   120d
coredns-7bdc4cb885-5vgx8                   1/1     Running   3 (88m ago)   120d
coredns-7bdc4cb885-l22fj                   1/1     Running   3 (88m ago)   120d
etcd-k8s-master                            1/1     Running   4 (88m ago)   120d
kube-apiserver-k8s-master                  1/1     Running   4 (88m ago)   120d
kube-controller-manager-k8s-master         1/1     Running   4 (88m ago)   120d
kube-proxy-6vvw5                           1/1     Running   3 (88m ago)   120d
kube-proxy-867jg                           1/1     Running   3 (88m ago)   120d
kube-proxy-lgsc8                           1/1     Running   3 (88m ago)   120d
kube-scheduler-k8s-master                  1/1     Running   4 (88m ago)   120d

6.2 下载本地k8s集群kubeconfig文件

下载本地k8s集群kubeconfig文件,一般默认位置在~/.kube/config。

root@k8s-master ~# ls -l ~/.kube/config-rw------- 1 root root 5649 Aug  2 09:56 /root/.kube/config

6.3 上传kubeconfig文件

上传kubeconfig文件,提交即可。

请在此添加图片描述

6.4 查看导入集群状态

查看导入集群状态

请在此添加图片描述

6.5 查看首页概览页面

重新访问TKEStack首页概览页面,已经成功识别到导入的k8s集群及相关信息。

请在此添加图片描述

七、部署wordpress应用

7.1 yaml创建资源

在新导入的k8s集群my-k8s管理页面,点击yaml创建资源。

请在此添加图片描述

请在此添加图片描述

7.2 编写yaml部署文件

编写wordpress的yaml部署文件

---
apiVersion: v1
kind: Namespace
metadata:name: wordpress
---
apiVersion: v1
kind: Service
metadata:name: wordpressnamespace: wordpresslabels:app: wordpress
spec:ports:- protocol: TCPtargetPort: 80port: 80nodePort: 30020selector:app: wordpresstype: NodePort---apiVersion: apps/v1
kind: Deployment
metadata:name: wordpressnamespace: wordpresslabels:app: wordpress
spec:replicas: 2selector:matchLabels:app: wordpresstemplate:metadata:labels:app: wordpressspec:containers:- name: wordpressimage: wordpressports:- containerPort: 80env:- name: WORDPRESS_DB_HOSTvalue:  wordpress-mysql.wordpress.svc.cluster.local- name: WORDPRESS_DB_USERvalue: wordpress- name:  WORDPRESS_DB_PASSWORDvalue:  wordpressvolumeMounts:- mountPath: "/var/www/html"name: wordpress-datavolumes:- name: wordpress-datahostPath:path: /data/wordpress/data---apiVersion: v1
kind: Service
metadata:name: wordpress-mysqlnamespace: wordpresslabels:app: wordpress
spec:ports:- port: 3306type: ClusterIPselector:app: wordpresstier: mysql---apiVersion: apps/v1
kind: StatefulSet
metadata:name: wordpress-mysqlnamespace: wordpresslabels:app: wordpress
spec:replicas: 1selector:matchLabels:app: wordpresstier: mysqlserviceName: "wordpress-mysql"template:metadata:labels:app: wordpresstier: mysqlspec:
#      nodeSelector:
#        kubernetes.io/hostname: node01containers:- name: mysqlimage: mysql:5.7env:- name: MYSQL_ROOT_PASSWORDvalue: wordpress- name: MYSQL_DATABASEvalue: wordpress- name: MYSQL_USERvalue:  wordpress- name: MYSQL_PASSWORDvalue:  wordpressports:- containerPort: 3306name: mysqlvolumeMounts:- mountPath: /var/lib/mysqlname: mysql-storagevolumes:- name: mysql-storagehostPath:path: /var/lib/mysql

7.3 部署wordpress应用

将yaml部署文件复制到编辑栏中,点击“完成”

请在此添加图片描述

7.4 检查工作负载状态

在TKEStack容器管理平台,查看wordpress命名空间下的Deployment资源状态。

请在此添加图片描述

请在此添加图片描述

7.5 检查service状态

在TKEStack容器管理平台,查看wordpress命名空间下的service状态。

请在此添加图片描述

可以看到wordpress应用的映射主机端口为30020

请在此添加图片描述

八、wordpress的初始化

8.1 进入wordpress的初始安装界面

访问地址:http://192.168.3.202:30020/wp-admin/install.php, 可以选择系统中文语言或者英语,这里是选择英语。

在这里插入图片描述

8.2 设置网站信息

自定义网站信息,设置网站名及网站管理员密码等信息。

在这里插入图片描述

在这里插入图片描述

九、访问wordpress

9.1 访问wordpress首页

访问地址:http://192.168.3.202:30020/

在这里插入图片描述

9.2 访问wordpress后台管理

后台管理地址:http://192.168.3.202:30020/wp-admin/
输入之前设置的管理员和密码,进入wordpress后台管理。

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/238604.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ACL实现固定时间访问资源——项目

文章目录 一、前言二、项目拓扑三、项目需求四、配置思路五、配置步骤1 IP地址2 端口类型3 静态路由4 流策略 六、结语 免责声明 本文旨在提供信息和解决问题的建议&#xff0c;观点和建议可能不适用于个人情况&#xff0c;仅供参考&#xff01;&#xff01;&#xff01; 文章中…

残差网络学习

参考B站同济子豪兄的Resnet讲解 网络退化&#xff0c;不是梯度消失&#xff08;根本没有开始学习&#xff09;&#xff0c;梯度爆炸&#xff0c;过拟合。 不需要再拟合复杂底层的那个映射了&#xff0c;原来输入的基础上你需要进行哪些偏移哪些修改 残差预测值和真实值的偏差 一…

锐捷配置PVLAN

一、实验拓扑 二、实验目的 PVLAN可以通过主VLAN和辅助VLAN的概念&#xff0c;部署隔离技术&#xff0c;实现用户间的互访控制。 三、实验配置 SW2 Ruijie >enable Ruijie #configure terminal Ruijie (config)#vlan 20 Ruijie (config-vlan)#private-vlan community …

视频号小店如何运营?流程跑通就成功了一大半!

我是电商珠珠 视频号小店是视频号团队发展的电商平台&#xff0c;目前处于项目的风口期&#xff0c;很多有想法的新手并不知道应该怎么去运营&#xff0c;今天我就来给大家讲一下。 一、入驻 视频号小店入驻的门槛较高&#xff0c;需要准备一张企业的营业执照&#xff0c;身…

Drupal 远程代码执行 CVE-2019-6340 已亲自复现

Drupal 远程代码执行 CVE-2019-6340 已亲自复现 漏洞名称漏洞描述影响版本 漏洞复现环境搭建 修复建议总结 漏洞名称 漏洞描述 Drupal是一个开源且以PHP语言写成的内容管理框架(CMF) 研究人员发现Drupal存在安全漏洞(CVE-2019-6340)&#xff0c;当攻击者以PATCH或POST方式传送…

拥抱数字化转型,共赢数字时代 | 创维汽车商学院走进竹云

数字化浪潮汹涌而来&#xff0c;变革与创新接踵而至。随着数字技术日益融入经济社会发展的各个领域&#xff0c;数字经济与实体经济的“双向奔赴”也不断催生着新产业、新业态、新模式&#xff0c;为经济社会发展持续注入创新活力。12月19日&#xff0c;创维汽车商学院带领嘉宾…

Git版本控制系统:简介、演变与优缺点

目录 前言1 版本控制概述2 集中式版本控制的优缺点2.1 优点2.2 缺点 3 分布式版本控制的优缺点3.1 优点3.2 缺点 4 Git的发展过程结语 前言 在软件开发和团队协作中&#xff0c;版本控制是至关重要的。它允许开发人员跟踪文件的更改历史&#xff0c;协同工作并管理代码的不同版…

Shell编程自动化之特殊Shell扩展变量

1.变量的处理 1.1 如果parameter变量值为空&#xff0c;那么返回str字符串。 ${parameter:-str} 1.2 如果parameter变量值为空&#xff0c;那么str替代变量值&#xff0c;且返回其值。 ${parameter:str} 1.3 如果parameter变量值为空&#xff0c;那么str当作stderr输出&am…

亚马逊撸货、撸卡怎么做成功率更高?教你解决亚马逊撸货的底层环境

在当前的跨境电商环境下&#xff0c;许多人都在从事亚马逊的撸货、撸卡业务&#xff0c;但亚马逊的风控系统非常严格&#xff0c;因此很容易被封号或订单被取消。为了提高成功率&#xff0c;我们需要采取一些措施和方法。这篇文章就来分享做亚马逊撸货、撸卡如何提高成功率&…

Multi-value PBS

参考文献&#xff1a; [CIM19] Carpov S, Izabachne M, Mollimard V. New techniques for multi-value input homomorphic evaluation and applications[C]//Topics in Cryptology–CT-RSA 2019: The Cryptographers’ Track at the RSA Conference 2019, San Francisco, CA, …

RocketMQ系统性学习-RocketMQ高级特性之消息存储的高效与刷盘策略、Broker 快速读取消息机制

&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308; 【11来了】文章导读地址&#xff1a;点击查看文章导读&#xff01; &#x1f341;&#x1f341;&#x1f341;&#x1f341;&#x1f341;&#x1f341;&#x1f3…

探索Qt 6.3:了解基本知识点和新特性

学习目标&#xff1a; 理解Qt6.3的基本概念和框架&#xff1a;解释Qt是什么&#xff0c;它的核心思想和设计原则。学会安装和配置Qt6.3开发环境&#xff1a;提供详细的步骤&#xff0c;让读者能够顺利安装和配置Qt6.3的开发环境。掌握Qt6.3的基本编程技巧&#xff1a;介绍Qt6.…

图灵日记之java奇妙历险记--数据类型与变量运算符

目录 数据类型与变量字面常量数据类型变量语法格式整型变量浮点型变量字符型变量希尔型变量类型转换自动类型转换(隐式)强制类型转换(显式) 类型提升不同数据类型的运算小于4字节数据类型的运算 字符串类型 运算符算术运算符关系运算符逻辑运算符逻辑与&&逻辑或||逻辑非…

Open3D 入门教程

文章目录 1、概述2、安装3、点云读写4、点云可视化 4.1、可视化单个点云4.2、同一窗口可视化多个点云4.3、 可视化的属性设置 5、k-d tree 与 Octree 5.1、k-d tree5.2、Octree 5.2.1、从点云中构建Octree5.2.2、从体素栅格中构建 Octree 6、点云滤波 6.1、体素下采样6.2、统计…

webpack学习-7.创建库

webpack学习-7.创建库 1.暴露库1.1概念1.2验证1.2.1 不导出方法1.2.2 导出方法 2.外部化 lodash3.外部化的限制4.最终步骤5.使用自己的库5.1坑 6.总结 1.暴露库 这个模块学习有点坑。看名字就是把自己写的个包传到npm&#xff0c;而且还要在项目中使用到它&#xff0c;支持各种…

function的使用

函数的返回值为integer 函数的返回值为clogb2 对于一个输入数据&#xff0c;如果其值大于0&#xff0c;右移1位&#xff0c;返回值加1&#xff1b; 再次判断右移后的结果任然大于0&#xff0c;返回值继续加1。 直到不满足判断条件&#xff0c;计算出一个输入数据的二进制位宽。…

yocto系列讲解[实战篇]93 - 添加Qtwebengine和Browser实例

By: fulinux E-mail: fulinux@sina.com Blog: https://blog.csdn.net/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! 目录 概述集成meta-qt5移植过程中的问题问题1:virtual/libgl set to mesa, not mesa-gl问题2:dmabuf-server-buffer tries to use undecl…

Peter算法小课堂—贪心与二分

太戈编程655题 题目描述&#xff1a; 有n辆车大甩卖&#xff0c;第i辆车售价a[i]元。有m个人带着现金来申请购买&#xff0c;第i个到现场的人带的现金为b[i]元&#xff0c;只能买价格不超过其现金额的车子。你是大卖场总经理&#xff0c;希望将车和买家尽量多地进行一对一配对…

重温经典struts1之国际化(I18N)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 前言 拿Google网站来举例&#xff0c;在世界上不同国家和地区&#xff0c;登陆Google网站&#xff0c;网站上都会显示本国家语言&#xff0c;它是怎么做到的&#xff0c;就是…

华为云Windows Server服务器下,Node使用pm2-logrotate分割pm2日志,解决pm2日志内存占用过高的问题。

一、简介 PM2 是一个守护进程管理器&#xff0c;它将帮助您管理和保持您的应用程序在线。PM2 入门很简单&#xff0c;它以简单直观的 CLI 形式提供&#xff0c;可通过 NPM 安装。官网地址&#xff1a;https://pm2.keymetrics.io/ 二、问题&#xff1a;pm2日志内存占用过高&am…