前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >TKEStack容器管理平台实战之部署wordpress应用

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

原创
作者头像
江湖有缘
修改于 2023-12-05 10:44:43
修改于 2023-12-05 10:44:43
5343
举报
文章被收录于专栏:Linux成长之路Linux成长之路

一、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.2 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集群

hostname

IP地址

操作系统版本

k8s版本

角色

master

192.168.3.141

centos7.9

1.21.4-tke.3

master节点/TKEStack安装节点

node01

192.168.3.142

centos7.9

1.21.4-tke.3

worker节点

node02

192.168.3.143

centos7.9

1.21.4-tke.3

worker节点

  • 本地k8s集群

hostname

IP地址

操作系统版本

k8s版本

角色

k8s-master

192.168.3.201

centos7.6

v1.27.4

master节点

k8s-node01

192.168.3.202

centos7.6

v1.27.4

worker节点

k8s-node02

192.168.3.203

centos7.6

v1.27.4

worker节点

3.3 本次实践简介

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

四、安装容器管理平台

4.1 安装TKEStack

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

代码语言:shell
AI代码解释
复制
# 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集群的工作节点状态

代码语言:shell
AI代码解释
复制
[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状态

代码语言:shell
AI代码解释
复制
[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。

代码语言:txt
AI代码解释
复制
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部署文件

代码语言:yaml
AI代码解释
复制
---
apiVersion: v1
kind: Namespace
metadata:
  name: wordpress
---
apiVersion: v1
kind: Service
metadata:
  name: wordpress
  namespace: wordpress
  labels:
    app: wordpress
spec:
  ports:
    - protocol: TCP
      targetPort: 80
      port: 80
      nodePort: 30020
  selector:
    app: wordpress
  type: NodePort


---

apiVersion: apps/v1
kind: Deployment
metadata:
  name: wordpress
  namespace: wordpress
  labels:
    app: wordpress
spec:
  replicas: 2
  selector:
    matchLabels:
      app: wordpress
  template:
    metadata:
      labels:
        app: wordpress
    spec:
      containers:
        - name: wordpress
          image: wordpress
          ports:
            - containerPort: 80
          env:
            - name: WORDPRESS_DB_HOST
              value:  wordpress-mysql.wordpress.svc.cluster.local
            - name: WORDPRESS_DB_USER
              value: wordpress
            - name:  WORDPRESS_DB_PASSWORD
              value:  wordpress
          volumeMounts:
            - mountPath: "/var/www/html"
              name: wordpress-data
      volumes:
        - name: wordpress-data
          hostPath:
            path: /data/wordpress/data

---

apiVersion: v1
kind: Service
metadata:
  name: wordpress-mysql
  namespace: wordpress
  labels:
    app: wordpress
spec:
  ports:
    - port: 3306
  type: ClusterIP
  selector:
    app: wordpress
    tier: mysql

---

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: wordpress-mysql
  namespace: wordpress
  labels:
    app: wordpress
spec:
  replicas: 1
  selector:
    matchLabels:
      app: wordpress
      tier: mysql
  serviceName: "wordpress-mysql"
  template:
    metadata:
      labels:
        app: wordpress
        tier: mysql
    spec:
#      nodeSelector:
#        kubernetes.io/hostname: node01
      containers:
        - name: mysql
          image: mysql:5.7
          env:
            - name: MYSQL_ROOT_PASSWORD
              value: wordpress
            - name: MYSQL_DATABASE
              value: wordpress
            - name: MYSQL_USER
              value:  wordpress
            - name: MYSQL_PASSWORD
              value:  wordpress


          ports:
            - containerPort: 3306
              name: mysql
          volumeMounts:
            - mountPath: /var/lib/mysql
              name: mysql-storage
      volumes:
        - name: mysql-storage
          hostPath:
            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后台管理。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
3 条评论
热度
最新
配置文件不知道在哪
配置文件不知道在哪
11点赞举报
我好几年前的文章了。吓得我赶紧给你回复下 `/etc/nginx`
我好几年前的文章了。吓得我赶紧给你回复下 `/etc/nginx`
回复回复点赞举报
好兄弟,怎么改配置文件呢?
好兄弟,怎么改配置文件呢?
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
CentOS 7安装Nginx简明教程
配置Nginx仓库 执行命令: vi /etc/yum.repos.d/nginx.repo 添加如下内容: [nginx] name=nginx repo baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/ gpgcheck=0 enabled=1 更新仓库索引并安装Nginx yum update yum install nginx 开机启动Nginx systemctl enable nginx 启动Nginx sudo
DevOps持续交付
2021/01/28
3360
centos8.0下安装Nginx1.17.1
#安装yum工具包 sudo yum install yum-utils #构建链接 vim /etc/yum.repos.d/nginx.repo # i 进入insert状态 # 把下面内容复制粘贴进去 [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/key
诡途
2022/05/09
1510
centos8.0下安装Nginx1.17.1
Ngin服务学习(3)-yum安装ngi
cat /etc/redhat-release 查看系统版本 uname -a 查看系统内核详情
py3study
2020/01/17
4290
centos7安装Lnmp(Linux+Nginx+MySql+Php)及Apache
Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx是一个高性能的HTTP和反向代理服务器,Nginx 超越 Apache 的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多,我们学习PHP,以及搭建我们自己的LNMP环境,不妨先在本机上尝试学习,下面我们一步一步来完成在CentOS7 下安装LNMP(Linux+Nginx+MySQL+PHP)及Apache。
botkenni
2019/09/03
1.5K0
centos7安装Lnmp(Linux+Nginx+MySql+Php)及Apache
搭建Ghost博客详细教程之Ghost安装与部署
yum groupinstall "Development Tools" #安装开发工具包
Bug生活2048
2018/08/31
3.1K0
搭建Ghost博客详细教程之Ghost安装与部署
CentOS 7下 yum方式安装Nginx
Nginx 是一个很强大的高性能Web和反向代理服务器,它具有众多非常优越的特性。诸如低开销,高并发,支持缓存,支持正反向代理,支持负载均衡,支持正则,支持rewrite等等不一而足。所以众多粉丝们也是不计其数。本文基于CentOS 7简要描述yum方式的安装部署,供大家参考。
Leshami
2018/08/06
5370
CentOS 7下 yum方式安装Nginx
什么是yum源?如何对其进行配置?
哈喽,大家好呀!这里是码农后端。今天来聊一聊Linux下的yum源及其配置相关的内容。简单来说,yum源就相当于一个管理软件的工具,可以想象成一个很大的仓库,里面存放着各种我们所需要的软件包及其依赖。
reload
2024/06/25
6810
什么是yum源?如何对其进行配置?
Linux安装nginx
指剑
2023/05/31
1.4K0
Linux安装nginx
Linux下使用yum安装LNMP环境
如何使用yum搭建有需求的LNMP环境 本人使用的是centos7系统,就以centos7的系统搭建为例 Nginx安装 下载/安装步骤:http://nginx.org/en/linux_packages.html#stable 创建/编辑文件:vi /etc/yum.repos.d/nginx.repo 编辑内容:OS代表系统 OSRELEASE 代表系统版本号 [nginx] name=nginx repo baseurl=http://nginx.org/packages/OS/O
北溟有鱼QAQ
2019/12/18
3.1K0
修改软件默认源为腾讯源
pip install 走公网到files.pythonhosted.org 跨境质量差,用内网源没问题
Windows技术交流
2020/07/16
13.7K2
第十四章·Linux软件管理-YUM工具及源码包
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/09/26
7850
第十四章·Linux软件管理-YUM工具及源码包
Nginx:nginx在centos下的安装及网关配置
Freedom123
2024/03/29
3410
Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利
本来不想写这篇的,因为网上都有,但是最近问关于这些环境配置的朋友有点多,于是整理一番,全部都是本人实战验证过的。
躺平程序员老修
2023/09/05
4710
Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利
Centos7安装Nginx详细安装步骤
说明:centos系统中默认的yum仓库中没有nginx的安装包, 所以要想安装nginx需要单独指定它的仓库地址
全栈程序员站长
2022/08/13
4.8K0
Centos7安装Nginx详细安装步骤
CentOS7系统Yum安装Nginx
配置Nginx源 cat >/etc/yum.repos.d/nginx.repo<<EOF [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/\$releasever/\$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true [nginx-mainlin
院长技术
2020/12/10
7130
SSH服务搭建之YUM源配置与静态IP配置
哈喽,大家好呀!这里是码农后端。一般我们在搭建服务之前,都需要做一些准备工作,如实验环境下关闭防火墙和selinux、配置yum源等等。本篇介绍了SSH服务搭建之YUM源配置与静态IP配置。
reload
2024/07/04
1670
SSH服务搭建之YUM源配置与静态IP配置
CentOS使用yum安装Nginx
如何在CentOS安装Nginx,在网上搜了一圈,大部分都是下载源代码进行编译,感觉不太方便。查看了一下官方文档,其实官方是有提供安装源的。
Mr. Wei
2021/01/16
1.4K0
Yum安装nginx
1、先下载前置包 yum install yum-utils 报错的话看最下边 2、进入文件配置信息 cd /etc/yum.repos.d/ vim nginx.repo 输入以下信息 [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_sig
高大北
2022/06/14
5.3K0
Yum安装nginx
CentOS7安装elk,并监控Nginx的access.log日志
详细安装java参考https://www.cnblogs.com/sxdcgaq8080/p/7492426.html
院长技术
2020/08/20
1K0
在Centos7.3搭建Yum私有仓库
使用本地iso镜像创建本地yum仓库,该方法不推荐,只针对yum服务器无法上公网的环境下操作,毕竟iso镜像里的包非常有限。
菲宇
2019/06/12
2.1K0
在Centos7.3搭建Yum私有仓库
相关推荐
CentOS 7安装Nginx简明教程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档