avatar
文章
130
标签
14
分类
14

首页
文章
标签
分类
关于
阿哲博客
搜索
首页
文章
标签
分类
关于
深入理解Pod对象:基本管理
发表于2022-06-14|更新于2024-09-29|K8S|K8S
Pod基本概念 Pod是Kubernetes创建和管理的最小单元,一个Pod由一个容器 或多个容器组成,这些容器共享存储、网络。 Pod特点: 一个Pod可以理解为是一个应用实例,提供服务 Pod中容器始终部署在一个Node上 Pod中容器共享网络、存储资源 Kubernetes直接管理Pod,而不是容器 Pod存在的意义 Pod主要用法: 运行单个容器:最常见的用法,在这种情况下,可以将Pod看做是单个容器的抽象封装 运行多个容器:封装多个紧密耦合且需要共享资源的应用程序 如果有这些需求,你可以运行多个容器: 两个应用之间发生文件交互 两个应用需要通过127.0.0.1或者socket通信 两个应用需要发生频繁的调用 Pod资源共享实现机制 共享网络:将业务容器网络加入到“负责网络的容器”实现网络共享 测试验证是否共享网络: vim pod-net.yaml apiVersion: v1kind: Podmetadata: name: my-podspec: containers: - name: web image: ...
资源编排(YAML)
发表于2022-06-13|更新于2024-09-29|K8S|K8S
YAML文件格式说明 K8s是一个容器编排引擎,使用YAML文件编排要部署应用,因此在学习之前,应先了解YAML语法格式: 缩进表示层级关系 不支持制表符“tab”缩进,使用空格缩进 通常开头缩进 2 个空格 字符后缩进 1 个空格,如冒号、逗号等 “—” 表示YAML格式,一个文件的开始 “#”注释 YAML文件创建资源对象 等同于:kubectl create deployment web --image=lizhenliang/java-demo -n default apiVersion: apps/v1kind: Deploymentmetadata: name: web namespace: defaultspec: replicas: 3 selector: matchLabels: app: web template: metadata: labels: app: web spec: containers: - name: web image: ...
kubectl命令行管理工具
发表于2022-06-12|更新于2024-09-29|K8S|K8S
kubeconfig配置文件 kube-apiserver两个端口: localhost:8080 非安全端口,是kubectl默认先连接8080,如果你配置kubeconfig(.kube/config)就直接走这个配置连接的安全端口 masterip:6443 安全端口 命令行指定配置文件: kubectl get node --kubeconfig=admin.conf 拷贝认证文件到其他节点的(.kube/config)下: scp .kube/config root@192.168.0.12:.kube/ kubectl使用kubeconfig认证文件连接K8s集群, 使用kubectl config指令生成kubeconfig文件。 kubectl管理命令概要 官方文档参考地址:https://kubernetes.io/zh/docs/reference/kubectl/overview/ 牛刀小试,快速部署一个网站 使用Deployment控制器部署镜像: kubectl create deployment web --image=lizhenl ...
快速部署一个K8s集群
发表于2022-06-11|更新于2024-09-29|K8S|K8S
生产环境部署K8s的2种方式 kubeadm Kubeadm是一个工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。 部署地址:https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/ 二进制 推荐,从官方下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群。 下载地址:https://github.com/kubernetes/kubernetes/releases 服务器硬件配置推荐 使用kubeadm快速部署一个K8s集群 192.168.0.11/24 192.168.0.12/24 192.168.0.13/24 k8s-master k8s-node1 k8s-node2 kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。 这个工具能通过两条指令完成一个kubernetes集群的部署: # 创建一个 Master 节点$ kubeadm init# 将一个 Node 节点加入到当前集群中 ...
Kubernetes核心概念
发表于2022-06-10|更新于2024-09-29|K8S|K8S
有了Docker,为什么还用Kubernetes? 为提高业务并发和高可用,会使用多台服务器,因此会面向这些问题: 多容器跨主机提供服务 多容器分布节点部署 多容器怎么升级 怎么高效管理这些容器 容器编排系统: Kubernetes Swarm Mesos Marathon Kubernetes是什么 Kubernetes是Google在2014年开源的一个容器集群管理系统,Kubernetes简称K8s。 Kubernetes用于容器化应用程序的部署,扩展和管理,目标是让部署容器化应用简单高效 官方网站:http://www.kubernetes.io/ 官方文档:https://kubernetes.io/zh/docs/home/ Kubernetes集群架构与组件 Master组件 kube-apiserver Kubernetes API,集群的统一入口,各组件协调者,以RESTful API提供接口服务,所有对 象资源的增删改查和监听操作都交给 APIServer处理后再提交给Etcd存储。 kube-con ...
容器化搭建个人博客系统
发表于2022-05-28|更新于2024-09-29|Docker|Docker
Dockerfile涉及相关的文件及安装包 dockerfile.zip 前端项目镜像构建与部署:Nginx nginx目录文件: 1.Dockerfile 2.nginx-1.15.5.tar.gz 3.nginx.conf4.php.conf Dockerfile FROM centos:7LABEL maintainer www.ctnrs.comRUN yum install -y gcc gcc-c++ make \ openssl-devel pcre-devel gd-devel \ iproute net-tools telnet wget curl && \ yum clean all && \ rm -rf /var/cache/yum/*ADD nginx-1.15.5.tar.gz /RUN cd nginx-1.15.5 && \ ./configure --prefix=/usr/local/nginx \ --with-http_ssl_module \ --wit ...
基于Docker构建企业Jenkins平台
发表于2022-05-27|更新于2024-09-29|Docker|Docker
CI/CD概述 持续集成(Continuous Integration,CI):代码合并、构建、部署、测试都在一起,不断地执行这个过程,并对结果反馈。 持续部署(Continuous Deployment,CD):部署到测试环境、预生产环境、生产环境。 持续交付(Continuous Delivery,CD):将最终产品发布到生产环境,给用户使用。 CI工作流程设计 开发者提交代码到gitlab仓库,gitlab随后触发jenkins代码编译,构建镜像以及推送镜像到harbor仓库,紧接着Jenkins部署到docker主机(从harbor仓库拉取镜像到本地部署启动)。 gitlab主机 jenkins主机 harbor主机 192.168.0.11/24 192.168.0.13/24 192.168.0.12/24 项目环境表 1、部署Gitlab 1.1 部署Gitlab mkdir gitlabcd gitlabdocker run -d \ ...
实现Docker容器多主机通信
发表于2022-05-26|更新于2024-09-29|Docker|Docker
跨主机网络:实现Docker容器多主机通信 Flannel是CoreOS维护的一个网络组件,在每个主机上运行守护 进程负责维护本地路由转发,Flannel使用ETCD来存储容器网络 与主机之前的关系。 其他主流容器跨主机网络方案: • Weave • Calico • OpenvSwitch 1、etcd安装并配置(任意找一台节点安装即可) yum -y install etcdvim /etc/etcd/etcd.conf ETCD_DATA_DIR="/var/lib/etcd/default.etcd"ETCD_LISTEN_CLIENT_URLS="http://192.168.0.11:2379"ETCD_NAME="default"ETCD_ADVERTISE_CLIENT_URLS="http://192.168.0.11:2379"systemctl start etcdsystemctl enable etcdss -anpt |grep 2379 2、flanneld安装并配置(两台跨 ...
Harbor部署
发表于2022-05-25|更新于2024-09-29|Docker|Docker
Harbor 概述 Harbor是由VMWare公司开源的容器镜像仓库。事实上,Harbor是在Docker Registry上进行了相应的企业级扩展, 从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基于角色的访问控制 ,AD/LDAP集成以及 审计日志等,足以满足基本企业需求。 官方:https://goharbor.io/ Github:https://github.com/goharbor/harbor Harbor 部署先决条件 服务器硬件配置: 最低要求:CPU2核/内存4G/硬盘40GB 推荐:CPU4核/内存8G/硬盘160GB 软件: Docker CE 17.06版本+ Docker Compose 1.18版本+ Harbor安装有2种方式: 在线安装:从Docker Hub下载Harbor相关镜像,因此安装软件包非常小 离线安装:安装包包含部署的相关镜像,因此安装包比较大 Harbor 部署HTTP 1、先安装Docker和Docker Compose https://github.com/docker/compose/releases 2、部署 ...
镜像的制作CMD与ENTRYPOINT区别
发表于2022-05-24|更新于2024-09-29|Docker|Docker
1.构建镜像时必须指定一个CMD 或者ENTRYPOINT 去夯住进程,不让它退出,放在容器前台执行,否则容器就退出了。 2.CMD exec 形式变量传参需要指定(“sh”,“-c”,“/usr/bin/run.sh $abc”) FROM centos:7 LABEL maintalner liuzhe COPY run.sh /usr/bin ENV abc=azhe EXPOSE 80 CMD [“sh”,“-c”,“/usr/bin/run.sh $abc”] 3.CMD shell形式直接使用变量传参 FROM centos:7 LABEL maintalner liuzhe COPY run.sh /usr/bin ENV abc=azhe EXPOSE 80 CMD run.sh $abc 4.docker run [OPTIONS] IMAGE [COMMAND] [ARG…] docker run -d test run.sh liuzhe 通过命令行指定的形式覆盖Dockerfile 中的CMD命令 5.docker run [OPTIONS] IMAGE [CO ...
1…789…13
avatar
阿哲
强大自己是解决问题的唯一办法
文章
130
标签
14
分类
14
公告
分享个人经验总结
最新文章
vue前端菜单权限实现思路2024-10-06
django-webssh实现2024-09-23
django-apscheduler基本使用2024-09-22
zabbix监控服务器2024-08-28
银河麒麟离线安装zabbix72024-08-26
分类
  • Ceph1
  • DRF5
  • Django10
  • Docker6
  • ELK11
  • Jenkins5
  • K8S28
  • Prometheus13
标签
Python ELK Prometheus DRF Vue Docker Zabbix Jenkins Web前端 微服务 K8S Django Shell Ceph
归档
  • 十月 20241
  • 九月 20242
  • 八月 20242
  • 六月 202410
  • 五月 20244
  • 三月 202413
  • 二月 202414
  • 一月 20241
网站资讯
文章数目 :
130
本站访客数 :
本站总访问量 :
最后更新时间 :
Copyright © 2021 阿哲
搜索
数据库加载中