记录关于Devops运维,虚拟化容器云计算,数据库,网络安全等各方面问题。
OpenPitrix Helm Char应用开发入门OpenPitrix 支持将应用以 Helm Chart 的形式上传部署到平台中,而 Nginx 是大家熟知的代理和负载均衡软件,比起 Traefik 来说功能更加强大,本篇文档就以 Nginx 的 Helm Chart 文件为例,介绍 Chart 的基本规则,演示如何通过 Helm Chart 应用开发规范准备一个应用并上传部署到 OpenPitrix 平台。准备 Helm 客户端工具执行以下命令,将自动下载安装最新版本的 Helm 客户端,支持在 Linux 上安装 :$ curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get > get_helm.sh $ chmod 700 get_helm.sh $ ./get_helm.sh更多安装方式请参考 helm 安装文档。准备本地仓库执行下列命令,在本地创建目录作为本地仓库。$ mkdir helm-repo $ cd helm-repo创建应用执行 helm create创建一个名为 nginx 的文件夹且默认生成一个 nginx 基本的 yaml 文件模板和目录,通常情况下不建议修改生成的一级目录下文件和目录的命名。$ helm create nginx $ tree nginx/ nginx/ ├── charts ├── Chart.yaml ├── templates │ ├── deployment.yaml │ ├── _helpers.tpl │ ├── ingress.yam...
OpenPitrix 开发规范应用开发入门基于 OpenPitrix 开发规范,平台旨在帮助软件开发者以极低的学习成本快速部署自己的传统应用到多云的运行环境中并提供一站式的平台方便管理用户的资源和环境,本文通过以下开发示例开发一个 Wordpress 应用,以及上传到平台并部署到基于 VM 的云运行时环境中,帮助开发者熟悉 OpenPitrix 应用开发的规范和流程。制作镜像WordPress 后端存储需要依赖数据库,实例使用的 MySQL 数据库,该应用需要创建 2 个 docker 镜像。第一步:制作 mysql 镜像由于需要实现配置变更及管理组件的自动升级,不能直接使用已有的 docker 镜像,需要进行一些改造,Docker 镜像默认启动的进程不能是应用本身的进程,而应该是 supervisor,由 supervisor 来启动 drone 服务。1、将 drone 和 nsenter 添加到镜像,然后安装 supervisor 并进行适当的配置。drone 是 OpenPitrix 的 Agent 服务,与 OpenPitrix 调度系统进行交互。nsenter 用来在 Docker 内进入 Host 执行一些指令,比如挂载硬盘、ssh 免密登录等。supervisor 用来为 drone 的自动升级提供支持服务。可在制作 Docker 镜像时从 openpitrix/openpitrix:metadata镜像中拷贝获取 drone 和...
宝塔面板使用nginx实现负载均衡。使用以下配置文件内容,就可以不用购买宝塔面板中的商业软件了。环境:  1,域名: www.9999.com   2,,前端nginx作https负载均衡。    3,后台两个realserver网站配置http。/www/server/panel/vhost/nginx 目录下创建两个相关文件。第一个配置文件,upstream_9999.conf[centos7]#cat upstream_9999.confupstream 999 {    ip_hash;    server 172.16.32.15:80 max_fails=2 fail_timeout=10s weight=1;    server 172.16.32.4:80 max_fails=2 fail_timeout=10s weight=1;    #sticky name=bt_route expires=12h httponly;}第一个配置文件,www.999.conf :[centos7]#cat www.999.confserver{    listen 80; listen 443 ssl http2;    server_name www.999.com;    index index.php index.html index.htm default.php default.htm default.html;    root /www/wwwroot/www.999.com;        #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则    #error_page 404/404.html;  ...
Kubesphere流水线工作流程与Jenkinsfile完整代码https://gitee.com/leifengyang/yygh-parent1、每个项目,都有流水线文件2、每次修改完项目,手动点击运行3、希望,每次修改完项目,代码推送,流水线能自动运行写代码并提交------> gitee ---------> 给指定的地方发请求(webhook)------> kubesphere平台感知到 -----> 自动启动流水线继续运行需要配置:1, gitee-id 码云ID与密码。2,aliyun-docker-registry  #容器仓库地址的ID与密码3,$REGISTRY    #指定容器仓库地址4,$DOCKERHUB_NAMESPACE #仓库的ns名称。5,$DOCKER_PWD_VAR  仓库ID的密码变量名6,$DOCKER_USER_VAR 仓库ID的变量名7,$KUBECONFIG_CREDENTIAL_ID  kubeconfigIDpipeline {    agent {        node {            label 'maven'        }    }    stages {        stage('拉取代码') {            agent none            steps {    &nbs...
npm报错:unable to verify the first certificatenpm install总是报错:unable to verify the first certificate(无法验证第一证书),查了一下发现As of February 27, 2017, npm no longer supports its self-signed certificates. 2017年2月27日,npm不再支持自签名证书。因为npm install走的是https协议,需要通过数字证书来保证的解决方法1:取消ssl验证:npm config set strict-ssl false如果还没成功,则将npm源更换为国内镜像:npm config set registry http://registry.cnpmjs.org/ npm config set registry http://registry.npm.taobao.org/ taobaoNPM镜像官网:https://npm.taobao.org/解决方法2:升级:npm install npm -g --ca=null或者 npm config set ca=""推荐使用方法1npm与git 命令报错:SSL 或unable to verify the first certificate
Kubernetes/k8s v1.20上安装KubeSphere-devops平台安装步骤选择4核8G(master)、8核16G(node1)、8核16G(node2) 三台机器,按量付费进行实验,CentOS7.9安装Docker安装Kubernetes安装KubeSphere前置环境安装KubeSphere 1、安装Dockersudo yum remove docker* sudo yum install -y yum-utils #配置docker的yum地址 sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #安装指定版本 sudo yum install -y docker-ce-20.10.7 docker-ce-cli-20.10.7 containerd.io-1.4.6 # 启动&开机启动docker systemctl enable docker --now # docker加速配置 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"], "exec-opts": ["native.cgroupdriver=systemd"], "log-driver": "json-file", "log-opts": { "max-size": "100m" }, "storage-driver": "overlay2" ...
k8s v1.20 集群安装metrics-server监控集群指标[root@centos34 opt]# kubectl top pods -ANAMESPACE     NAME                                      CPU(cores)   MEMORY(bytes)default       nfs-client-provisioner-99f54bcdb-qn97h    2m           11Mikube-system   calico-kube-controllers-85c867d48-n5wtg   3m           39Mikube-system   calico-node-9gjbg                         53m          198Mikube-system   calico-node-j8ctn                         54m          170Mikube-system   calico-node-pm8bt                  ...
K8S dashboard UI登陆时间超时设置 默认的Token失效时间是900秒,也就是15分钟,这意味着你每隔15分钟就要认证一次。Expiration time (in seconds) of tokens generated by dashboard. Default: 15 min. DefaultTokenTTL = 900详细源码可以参考:Expiration time ,显然我们可以设置更长的时间来满足需求。 操作 参数名 默认值 说明 token-ttl 15 minutes Expiration time (in seconds) of JWE tokens generated by dashboard. Default: 15 min. 0 - never expires. Dashboard的Token失效时间可以通过 token-ttl 参数来设置,修改创建Dashboard的yaml文件,并重新创建即可。 ports: - containerPort: 8443 protocol: TCP args: - --auto-generate-certificates - --token-ttl=43200 除了删除后重新创建,也可以直接修改原有Dashboard的配置,使用kubectl或者Dashboard可视化页面操作。 Dashboard   添加token-ttl参数后,更新即可。   kubectl kubectl edit deployment kubernetes-dashboard -n kube-system 同理,添加相同参数,更新即可。 dashboard参数 https://github.com/kubernetes/dashboard/wiki/Dashboard-argum...
Centos7/RHEL7安装docker20.10.7+K8S-v1.20.9遇到的坑1,使用kubeadmin init时,提示报错,经查日志有以下报错,Nov 15 11:15:44 k8smaster kubelet[99728]: E1115 11:15:44.924812 99728 pod_workers.go:191] Error syncing pod 3727d6783c46108c76e5b899df77ce70 ("kube-apiserver-k8smaster_kube-system(3727d6783c46108c76e5b899df77ce70)"), skipping: failed to "StartContainer" for "kube-apiserver" with CrashLoopBackOff: "back-off 5m0s restarting failed container=kube-apiserver pod=kube-apiserver-k8smaster_kube-system(3727d6783c46108c76e5b899df77ce70)"Nov 15 11:15:45 k8smaster kubelet[99728]: E1115 11:15:45.583614 99728 kubelet.go:2263] node "k8smaster" not foundNov 15 11:15:45 k8smaster kubelet[99728]: W1115 11:15:45.642347 99728 pod_container_deletor.go:79] Container "f4d9630c0fc474157914b33e33fdf39641030fb0bd7e0750cce7a3108b9811b6" not found in pod's containers经检查,docker中的pod已经添加,但是pod没法正常启动。于是又自行加载了一个容器,经测试,...
k8s节点中入集群报错:couldn't validate the identity of the API Server1, node节点再加入k8s集群时报错。[root@centos38 ~]# kubeadm join centos34:6443 --token brilgr.4gtm8kwcgc2kssdl     --discovery-token-ca-cert-hash sha256:6f8c864b3771bda0272e95c7192d6e70ab36a0d97061f902[preflight] Running pre-flight checks        [WARNING SystemVerification]: this Docker version is not on the list of validated versions: 20.10.7. Latest validated version: 19.03error execution phase preflight: couldn't validate the identity of the API Server: expected a 32 byte SHA-256 hash, found 24 bytesTo see the stack trace of this error execute with --v=5 or higher经查资料,一说是,可以再命令 kubeadmin join 后面加参数 --v=5或是--v=6,或是 查看令牌情况,是否过期,但是显示不可能,master节点才建好不到2个小时。 2,实在没办法,就查看token后,删除再重建一个。[root@centos34 ~]# kubeadm token listTOKEN                     ...
    总共266页,当前第30页 | 页数:
  1. 20
  2. 21
  3. 22
  4. 23
  5. 24
  6. 25
  7. 26
  8. 27
  9. 28
  10. 29
  11. 30
  12. 31
  13. 32
  14. 33
  15. 34
  16. 35
  17. 36
  18. 37
  19. 38
  20. 39
  21. 40