# devops **Repository Path**: wylblog/devops ## Basic Information - **Project Name**: devops - **Description**: 基于python django实现 kubernetes管理平台 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-12-03 - **Last Updated**: 2024-12-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # devops #### 介绍 基于python django实现 kubernetes管理平台 #### 软件架构 软件架构说明 基于layui实现前端,django后端链接k8s集群,权限验证通过k8s自带的rbac实现。 #### 安装教程 基于linux安装: 1.安装pyhon3环境 2.安装项目依赖 ``` pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ pip install uwsgi -i https://mirrors.aliyun.com/pypi/simple/ ``` 3.启动项目然后再同步数据库: ``` cd devops uwsgi --ini uwsgi.ini python manage.py migrate ``` 4.将k8s集群的ca.crt证书放到kubeconfig目录下同时增加环境变量: ``` export MasterIP=master节点ip ``` 5.在k8里创建项目使用角色并且获取该角色token(此处为演示权限较大请根据公司需求更改权限) ``` kubectl create serviceaccount dashboard-admin -n kube-system kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/dashboard-admin/{print $1}') ``` 6.通过token或者文件登录系统其中部分功能因为api改变暂时不可用后续会更新 7. 通过nginx代理服务: ``` server { listen 80; server_name _; location / { include uwsgi_params; uwsgi_pass unix:/devops/uwsgi.sock; } location /static { alias /devops/static; } } ``` 8.当然如果想偷懒可以使用镜像。(已更新最新镜像) 目前暂时只支持单master使用。后期会考虑多租户。 docker方法,拉取镜像: ``` docker pull registry.cn-shenzhen.aliyuncs.com/adif0028/devops:v5 docker run -d -v 你的k8s ca.crt:/devops/kubeconfig/ca.crt \ -e MasterIP=master节点ip \ --name web -p80:80 \ registry.cn-shenzhen.aliyuncs.com/adif0028/devops:v5 ``` 9.备注,没有开mysql所以session信息存在sqlite。