openstack

2023-05-16

云计算架构

在这里插入图片描述

openstack整体架构

在这里插入图片描述

在这里插入图片描述

openstack身份服务-Keystone

管理层次结构

在这里插入图片描述

Keystone三大组件

服务(Server)

身份(Identity)服务
资源(Resource)服务
分配(Assignment)服务
令牌(Token)服务
目录(Catalog)服务
策略(Policy)服务

驱动(Drivers)

模块(Modules)

Keystone认证流程

在这里插入图片描述

(1)用户向Keystone提供凭证,Keystone验证通过后向用户返回令牌的同时还会返回一个通用目录(Generic Catalog)。
(2)用户使用该令牌向该目录列表中的端点(Endpoint)请求该用户对应的项目(租户)信息,Keystone验证通过后返回用户对应的项目(租户)列表。
(3)用户从列表中选择要访问的项目(租户),再次向Keystone发出请求,Keystone验证通过后返回管理该项目(租户)的服务列表并允许访问该项目(租户)的令牌。
(4)用户会通过这个服务和通用目录映射找到服务的端点,并通过端点找到实际服务组件的位置。
(5)用户再凭借项目(租户)令牌和端点来访问实际上的服务组件。
(6)服务组件会向Keystone提供这个用户项目令牌进行验证,Keystone验证通过后会返回一系列的确认信息和附加信息(用户希望操作的内容)给服务。
(7)服务执行一系列操作。

命令行

管理项目

openstack project list
openstack project create --description ‘my new project’ new-project --domain default
openstack project set 项目名称或ID --enable

管理用户

openstack user list
openstack user create --project new-project --password MYPASSWORD new-user
openstack user set 用户名或ID --enable

管理角色

openstack role list
openstack role create new-role
openstack role add --user demo --project new-project new-role
openstack role assignment list --user 用户名或ID --project 用户名或ID --names
openstack role show 角色名或ID

管理服务

openstack service list
openstack service create --name SERVICE_NAME --description SERVICE_DESCRIPTION SERVICE_TYPE

创建服务用户

(1)创建一个服务用户专用的项目
openstack project create service --domain default
这个项目一般命名为service,也可以选择其他名称。RDO一体化概念云平台中将其命名为services。
(2)为要部署的相关服务创建服务用户例如,创建swfit用户的命令如下。
openstack user create --domain default --password-prompt swift
(3)将admin角色分配给用户-项目对
openstack role add --project service --user 服务用户名 admin

openstack镜像-Glance

镜像状态

在这里插入图片描述

glance架构

在这里插入图片描述

glance-api

glance-api是系统后台运行的服务进程,是进入Glance的入口。它对外提供REST API,负责接收用户的RESTful请求,响应镜像查询、获取和存储的调用

glance-registry

glance-api会把请求转发给glance-registry。glance-registry会解析请求内容,并与数据库交互,存储、处理、检索镜像的元数据

Store Backend

Glance自身并不存储镜像,它将镜像存放在后端存储系统中。镜像本身的数据通过glance_store(Glance的Store模块,用于实现存储后端的框架)存放在各种后端,并可从中获取

命令行

openstack image list
openstack image show CentOS7
openstack image create --disk-format qcow2 --container-format bare --public --file ./centos63.qcow2 centos63-image
openstack image set 镜像名称
openstack image delete <镜像名称或ID>

将镜像与项目关联
openstack image add project [–project-domain 项目所属域] 镜像名或ID 项目名或ID

将镜像与项目解除关联
openstack image remove project [–project-domain 项目所属域] 镜像名或ID 项目名或ID

openstack计算-Nova

在这里插入图片描述

API

用于接收HTTP请求、转换命令、通过oslo.mes-saging队列或HTTP与其他组件通信的Nova组件。

Scheduler

用于决定哪台主机承载计算实例的Nova调度器。

Conductor

处理需要协调(构建虚拟机或调整虚拟机大小)的请求,或者处理对象转换。

Compute

管理虚拟机管理器与虚拟机之间通信的Nova计算组件

虚拟机实例化流程

(1)首先用户(可以是OpenStack最终用户,也可以是其他程序)执行Nova Client提供的用于创建虚拟机的命令。
(2)nova-api服务监听到来自Nova Client的HTTP请求,并将这些请求转换为AMQP消息之后加入消息队列。
(3)通过消息队列调用nova-conductor服务。
(4)nova-conductor服务从消息队列中接收虚拟机实例化请求消息后,进行一些准备工作(例如汇总HTTP请求中所需要实例化的虚拟机参数)
(5)nova-conductor服务通过消息队列告诉nova-scheduler服务去选择一个合适的计算节点来创建虚拟机,此时nova-scheduler会读取数据库的内容。
(6)nova-conductor服务从nova-scheduler服务得到了合适的计算节点的信息后,再通过消息队列来通知nova-compute服务实现虚拟机的创建

在这里插入图片描述

在这里插入图片描述

创建虚拟机实例

openstack server create --flavor m1.tiny --image cirros --nic net-id=public --security-group default --key-name demo-key cirros2

 openstack server create     
 (--image <镜像> | --volume <卷>)     
 --flavor <实例类型>    
  [--security-group <安全组>]     
  [--key-name <密钥对>]     
  [--property <服务器属性>]     
  [--file <目的文件名=源文件名>]     
  [--user-data <实例注入文件信息>]    
  [--availability-zone <域名>]    
  [--block-device-mapping <块设备映射>]    
  [--nic <net-id=网络ID,v4-fixed-ip=IP地址,v6-fixed-ip=IPv6地址,port-id=端口UUID,auto,none>]     
  [--network <网络>]     
  [--port <端口>]     
  [--hint <键=值>]     
  [--config-drive <配置驱动器卷>|True]         
  [--min <创建实例最小数量>]     
  [--max <创建实例最大数量>]     
  [--wait]     
  <实例名>

访问虚拟机实例
openstack console url show cirros

管理虚拟机实例

(1)实例列表
openstack server list
管理员可以用以下命令列出所有项目的实例。
openstack server list --all-projects
(2)查看实例详情
openstack server show [–diagnostics] <实例名或ID >
(3)实例启动
openstack server start <实例名或ID> [<实例名或ID > …]
(4)实例暂停及恢复
openstack server pause/unpause <实例名或ID> [<实例名或ID > …]

(5)实例挂起及恢复
openstack server suspend <实例名或ID> [<实例名或ID > …]
挂起的实例需要使用
openstack server resume命令让其恢复。
(6)实例废弃及恢复
openstack server shelve <实例名或ID> [<实例名或ID > …]
废弃的实例会被关闭,实例本身及其相关的数据被保存,但内存中的数据会丢失
openstack server unshelve命令可以恢复被废弃的实例。
(7)实例关闭
openstack server stop <实例名或ID> [<实例名或ID > …]
(8)实例重启
分为软重启和硬重启。软重启是操作系统正常关闭并重启,使用选项–soft;硬重启是模拟断电然后加电启动,使用选项–hard。

openstack server reboot  [--hard | --soft]  [--wait] <实例名或ID>

(9)调整实例大小
这是将实例调整到一个新的实例类型。

openstack server resize [--flavor <flavor> | --confirm | --revert] [--wait] <实例名或ID>

这种操作是通过创建一个新的实例,并将原实例的磁盘的内容复制到新的实例中来实现的。对于用户来说,分两个处理阶段,第一阶段执行调整实例大小;第二阶段确认成功并释放原实例,或者使用选项–revert进行事件回滚,释放新的实例并重启原实例。
(10)实例删除
openstack server delete <实例名或ID> [<实例名或ID > …]
(11)实例修改
openstack server set [–name <新名称>] [–root-password] [–property <键=值>] [–state <状态>] <实例名或ID>选项–root-password用于交互式修改root密码。–property用于添加或修改属性(自定义元数据)。–state用于改变状态,只能取值active(活动)或error(出错)。
openstack server set --root-password Fedora
New password:
Retype new password:
QEMU guest agent is not enabled (HTTP 409) (Request-ID: req-30d54f4f-3b38-479c-a3f1-2aa62c30cb9a)

管理实例类型

openstack flavor list
openstack flavor show FLAVOR_ID
openstack flavor create FLAVOR_NAME --id FLAVOR_ID --ram RAM_IN_MB --disk ROOT_DISK_IN_GB --vcpus NUMBER_OF_VCPUS
openstack flavor create --public m1.extra_tiny --id auto --ram 256 --disk 0 --vcpus 1 --rxtx-factor 1
openstack flavor set命令来修改其参数设置。
openstack flavor set FLAVOR-NAME --property quota:read_bytes_sec=10240000 --property quota:write_bytes_sec=10240000

openstack flavor delete FLAVOR_ID

openstack网络-Neutron

在这里插入图片描述

neutron-server

Neutron仅有一个主要服务进程neutron-server。它运行于控制节点上,对外提供OpenStack网络API作为访问Neutron的入口,收到请求后调用插件(Plugin)进行处理,最终由计算节点和网络节点上的各种代理(Agent)完成请求

Network Provider

网络提供者(Network Provider)是指提供OpenStack网络服务的虚拟或物理网络设备,如Linux Bridge、Open vSwitch,或者其他支持Neutron的物理交换机

在这里插入图片描述

插件是Neutron的一种API的后端实现,目的是增强扩展性。插件按照功能可以分为Core Plugin和Service Plugin两种类型。
Core Plugin提供基础二层虚拟网络支持,实现网络、子网和端口等核心资源的抽象。
Service Plugin是指Core Plugin之外的其他插件,提供路由器、防火墙、安全组、负载均衡等服务支持

插件通过RPC调用相应的代理(Agent)来完成。
代理处理插件转来的请求,负责在网络提供者上真正实现各种网络功能。

命令行

openstack network create
[–project <项目名或ID> [–project-domain <项目所属的域的名称或ID >]]
[–enable | --disable]
[–share | --no-share]
[–description <说明信息>]
[–mtu ]
[–availability-zone-hint <可用域>]
[–enable-port-security | --disable-port-security]
[–external [–default | --no-default] | --internal]
[–provider-network-type <提供者网络类型>]
[–provider-physical-network <提供者物理网络>]
[–provider-segment <提供者网段>]
[–qos-policy <用于此网络的QoS策略名称或ID>]
[–transparent-vlan | --no-transparent-vlan]
[–tag | --no-tag]
<虚拟网络名称>

(2)修改网络设置
openstack network set [选项列表] <虚拟网络名称或ID>
其中选项大部分与openstack network create命令相同,增加一个重命名选项–name。
(3)显示网络列表
openstack network list [选项列表]
(4)显示网络详细信息
openstack network show <虚拟网络名称或ID>
(5)删除网络
openstack network delete [虚拟网络列表]


(1)创建子网命令
openstack subnet create
[–project <项目名或ID> [–project-domain <项目所属的域的名称或ID >]]
[–subnet-pool <子网池> | --use-default-subnet-pool [–prefix-length <前缀长度>]|–use-prefix-delegation]
[–subnet-range <子网范围>]
[–allocation-pool start=<起始IP地址>,end=<结束IP地址>]
[–dhcp | --no-dhcp]
[–dns-nameserver <DNS服务器>]
[–gateway <网关>]
[–host-route destination=<主机路由目的子网>,gateway=<网关IP>]
[–network-segment <与此子网关联的网段名称或ID>]
–network <子网所属的虚拟网络名称或ID>
<子网名称>

默认启用DHCP,使用选项–dhcp

(2)子网管理命令与上述网络管理命令类似,只是将子命令network换成sub-net,操作对象改为子网。


路由器创建和管理命令
(1)创建路由器命令
openstack router create
[–project <项目名或ID> [–project-domain <项目所属的域的名称或ID >]]
[–enable | --disable]
[–availability-zone-hint <可用域>]
<路由名称>

(2)路由器管理命令与上述网络管理命令类似,只是将子命令network换成router,操作对象改为路由器。

网络拓扑类型

  1. Local
    Local网络与其他网络和节点隔离。该网络中的虚拟机实例只能与位于同一节点上同一网络的虚拟机实例通信,实际意义不大,主要用于测试环境。位于同一Local网络的实例之间可以通信,位于不同Local网络的示例之间无法通信。一个Local网络只能位于一个物理节点上,无法跨节点部署。
  2. Flat
    Flat是一种简单的扁平网络拓扑,所有虚拟机实例都连接在同一网络中,能与位于同一网络的实例进行通信,并且可以跨多个节点。这种网络不使用VLAN,没有对数据包打VLAN标签,无法进行网络隔离。Flat是基于不使用VLAN的物理网络实现的虚拟网络。每个物理网络最多只能实现一个虚拟网络。
  3. VLAN
    VLAN是支持802.1q协议的虚拟局域网,使用VLAN标签标记数据包,实现网络隔离。同一VLAN网络中的实例可以通信,不同VLAN网络中的实例只能通过路由器来通信。VLAN网络可以跨节点,是应用最广泛的网络拓扑类型之一。
  4. VXLAN
    VXLAN(Virtual Extensible LAN)可以看作是VLAN的一种扩展,相比于VLAN,它有更大的扩展性和灵活性,是目前支持大规模多租户网络环境的解决方案。由于VLAN包头部限长是12位,导致VLAN的数量限制是4096(212)个,不能满足网络空间日益增长的需求。目前VXLAN的封包头部有24位用作VXLAN标识符(VNID)来区分VXLAN网段,最多可以支持16777216(224)个网段。VLAN使用STP(Spanning Tree Protocol,生成树协议)防止环路,导致一半的网络路径被阻断。VXLAN的数据包是封装到UDP通过三层传输和转发的,可以完整地利用三层路由,能克服VLAN和物理网络基础设施的限制,更好地利用已有的网络路径。
  5. GRE
    GRE(Generic Routing Encapsulation,通用路由封装)是用一种网络层协议去封装另一种网络层协议的隧道技术。GRE的隧道由两端的源IP地址和目的IP地址定义,它允许用户使用IP封装IP等协议,并支持全部的路由协议。在OpenStack环境中使用GRE意味着“IP over IP”,GRE与VXLAN的主要区别在于,它是使用IP包而非UDP进行封装的。
  6. GENEVE
    GENEVE(Generic Network Virtualization Encapsulation,通用网络虚拟封装)的目标宣称是仅定义封装数据格式,尽可能实现数据格式的弹性和扩展性。GENEVE封装的包通过标准的网络设备传送,即通过单播或多播寻址,包从一个隧道端点(Tun-nel Endpoint)传送到另一个或多个隧道端点。GENEVE帧格式由一个封装在IPv4或IPv6的UDP里的简化的隧道头部组成。GENEVE的推出主要是为了解决封装时添加的元数据信息问题(到底是多少位,该怎么用,这些是否由GENEVE自动识别与调整),以适应各种虚拟化场景。

openstack存储-Cinder

在这里插入图片描述

(2)API前端服务(cinder-api)cinder-api作为Cinder对外服务的HTTP接口,向客户呈现Cinder能够提供的功能,负责接收和处理REST请求,并将请求放入RabbitMQ队列。当客户需要执行卷的相关操作时,能且只能向cinder-api发送REST请求。
(3)Scheduler调度服务(cinder-scheduler)cinder-scheduler对请求进行调度,将请求转发到合适的卷服务,即处理任务队列的任务,通过调度算法选择最合适的存储节点以创建卷。
(4)卷服务(cinder-volume)调度服务只分配任务,真正执行任务的是卷服务。cinder-volume管理块存储设备,定义后端设备。运行cinder-volume服务的节点被称为存储节点。
(5)备份服务(cinder-backup)备份服务用于提供卷的备份功能,支持将块存储卷备份到OpenStack对象存储(Swift)。
(6)卷提供者(Volume Provider)块存储服务需要后端存储设备(如外部的磁盘阵列以及其他存储设施)来创建卷。卷提供者定义存储设备,为卷提供物理存储空间。cinder-volume支持多种Volume Provider,每种Vol-ume Provider都能通过自己的驱动与cinder-volume协调工作

Cinder创建卷的基本流程

(1)客户(可以是OpenStack最终用户,也可以是其他程序)向cinder-api发送请求,要求创建一个卷。
(2)cinder-api对请求做一些必要处理后,向RabbitMQ发送一条消息,让cinder-scheduler服务创建一个卷。
(3)cinder-scheduler从消息队列中获取cinder-api发给它的消息,然后执行调度算法,从若干存储节点中选出某节点。
(4)cinder-scheduler向消息队列发送了一条消息,让该存储节点创建这个卷。
(5)该存储节点的cinder-volume服务从消息队列中获取cinder-scheduler发给它的消息,然后通过驱动在volumeprovider定义的后端存储设备上创建卷

命令行

openstack volume list
openstack volume show 54d0daec-578d-4b08-9d12-cd9b7fe62472
openstack volume create --image 620b31ce-cc4a-47ca-96df-d14f506f7368 --size 8 --availability-zone nova my-new-volume
openstack volume delete my-new-volume

将卷连接到实例
这种操作需要指定实例的ID和卷的ID
openstack server add volume 84c6e57d-a6b1-44b6-81eb-fcb36afd31b5 573e024d-5235-49ce-8332-be1576d323f8 --device /dev/vdb

扩展卷
扩展卷需要提供卷ID和新的大小。
openstack volume set 573e024d-5235-49ce-8332-be1576d323f8 --size 10

转让卷
首先创建转让卷。
openstack volume transfer request create a1cdace0-08e4-4dc7-b9dc-457e9bcfe25f

查看挂起的卷转让列表,提供转让ID和认证密钥。
openstack volume transfer request list

最后切换到另一个项目中接受转换。
openstack volume transfer request accept 6e4e9aa4-bed5-4f94-8f76-df43232f44dc b2c8e585cbc68a80

创建备份
openstack volume backup create [–incremental] [–force] VOLUME

openstack volume backup list
openstack volume backup show 04124e72-35b2-486e-a105-84e3d1725dfa

恢复备份
openstack volume backup restore BACKUP_ID VOLUME_ID

管理块存储服务配额

查看块存储服务配额
openstack project show -f value -c id PROJECT_NAME
openstack quota show PROJECT_ID

openstack quota set --volumes 15 b9d11a6ed55c4b0490b5f4124a6588f9

openstack编排-Heat

用户将对各种资源的需求写入模板文件中,Heat基于模板文件自动调用相关服务的接口来配置资源,从而实现自动化的云部署。
在编排服务中,资源(Resource)特指编排期间创建或修改的对象,可以是网络、路由器、子网、实例、卷、浮动IP、安全组等。

在这里插入图片描述

在这里插入图片描述

创建虚拟机实例的模板,demo-template.yaml

export NET_ID=$(openstack network list | awk '/ private / { print $2 }')
openstack stack create -t demo-template.yaml --parameter "NetID=$NET_ID" test-stack

openstack stackoutput show --all test-stack

openstack server list

openstack stack event list test-stack

openstack stack delete --yes test-stack

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

openstack 的相关文章

  • Ceph性能优化总结(v0.94)

    如需转载请标明作者 原文地址 http xiaoquqi github io blog 2015 06 28 ceph performance optimization summary 最近一直在忙着搞Ceph存储的优化和测试 看了各种资料
  • OpenStack--部署块存储cinder

    通过 cinder 使用 lvm 卷提供后端存储 官方部署文档 https docs openstack org ocata zh CN install guide rdo cinder html 1 数据库准备 1 创建数据库并授权 ro
  • OpenStack H版发布

    根据官方发布的消息 OpenStack 2013 2 代号Havana 最终版已经发布 除了增加OpenStack Metering Ceilometer 和OpenStack Orchestration Heat 两个新组件外 还完成了4
  • kolla-ansible部署openstack+opendaylight

    1 环境准备 准备三台机器 分别作为OpenStack的controller和compute节点 OpenDayLight节点 另外把controller作为本次的部署节点 其中controller和compute节点各两张网卡 odl节点
  • 云平台学习笔记(三)-MobaXterm使用

    内网 外网的IP都可以 这个界面方面可视化管理
  • 关注 OpenStack 的筒子们,福利来啦!

    2017 OpenStack Days China 将于 2017 年 7 月 24 日 25 日 周一至周二 在北京国家会议中心隆重召开 我们非常荣幸能和大家一起见证并打造这样一个强有力的 大规模的云计算标准软件平台 这一次 OpenSt
  • OpenStack企业级实战

    一 环境初始化 1 CentOS7一键安装OpenStack 安装参考 Install RDO 前提条件 准备一个8g或16g内存的centos7 有一块网卡可以访问internet 磁盘 40G cpu分2 4线程 cpu要开启虚拟化 r
  • Ubuntu部署OpenStack zed版本neutron报错:Feature ‘linuxbridge‘ is experimental and has to be explicitly enab

    系统版本 Ubuntu 22 04 1 LTS OpenStack版本 zed 组件 Neutron 组件报错内容 Feature linuxbridge is experimental and has to be explicitly e
  • OpenStack主要功能和作用

    OpenStack主要组件和作用 openstack是一个开源的云计算管理平台 由几个重要的组件结合起来完成工作 openstack支持所有类型的云环境 实施简单可以大规模扩展丰富标准统一的云计算管理平台 openstack通过各种互补的服
  • openstack热迁移机制分析(libvirt热迁移模型、nova热迁移控制逻辑、调试方法)

    前段时间在解决大内存热迁移失败的时候 查阅了下openstack热迁移相关知识 有了一些记录跟大家分享下 以基于L版openstack qemu kvm 跟大家分享下API库libvirt的热迁移机制和nova控制逻辑的一些记录 注 这篇博
  • openstack镜像的管理与使用

    1 创建项目和用户 1 1 创建项目和用户 用SSH工具连接控制节点 这里是10 10 83 3 使用admin用户权限 执行如下命令 root admin openrc 1 2创建一个test项目 openstack project cr
  • Python运维开发:基于openstack RestfulAPI上传镜像和创建云主机

    基础环境 python 脚本文件头建议加入 encoding utf 8 避免编码错误 测试脚本代码用python3命令执行与测试 在linux系统中安装Python3 并安装request等依赖包 配置 有一台搭建好的open stack
  • openstack开发实践(一):devstack搭建all-in-one的openstack开发环境

    Devstack简介 devstack是面向开发者的一个openstack部署工具 用户可以指定不同的版本分支进行安装 devstack借助于Shell脚本实现openstack自动化部署 devstack源码中的stack sh即为安装脚
  • IPVS direct routing on top of openstack (by quqi99)

    作者 张华 发表于 2023 07 12 版权声明 可以任意转载 转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 IPVS是Linux内核态的一个L4 LB KTCPVS Kernel TCP Virtual Server则
  • Openstack - 更改仪表板的管理员密码

    在哪里可以更改 Openstack 中仪表板的管理员密码 我使用 packstack 安装程序安装了 openstack keystonerc admin 文件中的密码也不起作用 我使用 CentOS 6 3 并且我可以访问配置文件 用户名
  • 如何设置docker容器的ip?

    有人可以告诉我如何将容器的 ip 设置为特定的 ip 吗 我不想将网桥设置为 IP 集 我在网络中得到的所有结果都是将 ips 范围设置为 docker 桥 您可以使用主机的现有 IP 如下所示 docker run p 127 0 0 1
  • 如何在 cirros OS 中安装软件包

    如何在 cirros 镜像中安装软件包 我在 devstack 安装附带的 cirros 映像中找不到任何可用的安装程序 正如 Harikrishnan 评论的那样 cirros 不包含包管理器 Cirros 主要用于验证云是否正常工作 虚
  • 如何使用 cloud-init 安装 docker?

    我想在 Openstack 中创建实例 在通过 ssh 连接之前 这些实例中已经安装了 Docker 所以我很自然地对 Cloud init 技术感兴趣 因为它允许我们在第一次启动时在虚拟机上安装软件包 所以现在我尝试在启动时在我的实例上安
  • 服务无法启动虚拟机“DockerDesktopVM”,因为 Hyper-V 组件之一未运行

    我有 Window Server 2016 2019 虚拟机 Openstack 至此Hyper V安装成功 但无法启动 MobyLinuxVM ExposeVirtualizationExtensions 已通过 PowerShell 在
  • 开放堆栈你好世界

    我想在开放堆栈云上编写一个程序 当我搜索资源时 我找到的只是安装和管理手册 我安装了云 现在如何在其上运行程序 使用消息队列或 blob 存储的示例会很好 有谁知道这方面的好的编程教程吗 当您说 在 Openstack 云上编写程序 时 您

随机推荐

  • canal 修改配置信息后监听不到mysql数据并报错can‘t find start position for example

    原由 xff1a 数据库地址变化 canal 需要修改监听 问题 xff1a 修改配置信息后重启canal 但并无监听到数据库信息变化 分析 xff1a canal 与数据库之间断层 xff0c 导致信息传输失败 解决 xff1a xff0
  • AI那点事儿

    从古至今 xff0c 改朝换代 一代崛起 xff0c 就标志着一代的灭亡 AI的兴起 xff0c 让无数程序梦想客死他乡 无论是学者还是技术科研者 xff0c 无一不在说 xff0c AI的时代到了 然而 xff0c 我们扣心自问 xff0
  • win7 配置JDK环境变量

    第一步 xff1a 安装jdk 8u101 windows x64 exe xff0c 路径为默认路径 xff0c 一直下一步直到完成安装 安装最好不要修改安装路径 xff0c 防止自己找不到 第二步 xff1a 设置环境变量 xff1a
  • 完整的搭建内网穿透ngrok详细教程(有图有真相)

    如上 网上找到的都是不稳定的 还不如自己搭建一个 去问度娘了 xff0c 发现了一堆 好吧 xff0c 那就动手开干吧 准备工作 xff08 其实也是硬性条件 xff09 xff1a 1 服务器一台 2 备案域名一个 xff08 好多都说可
  • lsyncd-实时同步(镜像)守护程序

    E mail 1226032602 64 qq com 官方文档 https axkibe github io lsyncd https github com axkibe lsyncd 简介 Lsyncd使用文件系统事件接口 xff08
  • Dockerfile

    docker安装 yum span class token function install span y yum utils device mapper persistent data lvm2 span class token func
  • c51单片机学习笔记-LED闪烁编程

    目的 xff1a 使LED灯闪烁 xff0c 需循环让 D1 指示灯先亮一会后熄灭 xff0c 因此只需编写一个循环函数 xff0c 专门在那循环运行即可实现延时功能 编译软件 xff1a keil5 过程 1 书写延时函数 函数名 xff
  • 网络管理命令-nmcli

    网络管理工具 iproute 软件包包括 ip ss 命令 net tools软件包包括 ifconfig route netstat命令 ip 命令相当于之前的 ifconfig route ss 命令相当于之前的 netstat nmt
  • nginx

    本文作者 五行哥 QQ 1226032602 E mail 1226032602 64 qq com web服务器种类 apache nginx tomcat resin Lighttpd IIS WebLogic Jetty Node j
  • kubernetes ingress

    https kubernetes io docs concepts services networking ingress 负载均衡软件 NginxTraefikEnvoy https github com kubernetes ingre
  • kubernetes configMap secret

    配置容器化应用的方式 自定义命令行参数把配置文件直接焙进镜像环境变量 cloud native的应用程序一般可直接通过环境变量加载配置通过entrypoint脚本来预处理变量 存储卷 configMap 配置中心 pod从configMap
  • 运维精华面试题

    一 基本概念 1 常见的Linux发行版本都有什么 xff1f 你最擅长哪一个 xff1f 它的官网网站是什么 xff1f 说明你擅长哪一块 xff1f 常见的Linux发行版本有Redhat Centos Debian Ubuntu Su
  • K8S集群监控 Prometheus

    Prometheus xff08 普罗米修斯 xff09 是一个最初在SoundCloud上构建的监控系统 xff0c 自2012年成为社区开源项目 xff0c 拥有非常活跃的开发人员和用户社区 xff0c 为强调开源及独立维护 xff0c
  • kvm虚拟化

    https access redhat com documentation zh cn red hat enterprise linux 7 html virtualization getting started guide index h
  • git_gitlab

    本文作者 xff1a wuXing QQ 1226032602 E mail 1226032602 64 qq com git https git scm com book zh v2 Git诞生历史 我想大家还记得Linus torval
  • Jenkins-slave

    Jenkins插件 chinese Role based Authorization Strategy 用户权限 Credentials Binding 凭证管理 span class token function git span Dep
  • kubeadm-config说明

    https www cnblogs com breezey p 11770780 html 配置kubeadm config yaml 通过如下指令创建默认的kubeadm config yaml文件 xff1a kubeadm confi
  • c51单片机学习笔记-LED流水灯实验

    目的 xff1a 实现 LED 流水灯 xff0c 只需循环让 D1 D8 指示灯逐个点亮 方法 xff1a 点亮 D1 且把 D2 D8 熄灭 xff0c 延时一段时间后再点亮 D2 且把 D1 D3 D8 熄灭 xff0c 延时一段时间
  • 获得屏幕大小

    API 要取得屏幕大小 xff0c 可以用下面几个函数 xff1a int cx 61 GetSystemMetrics SM CXFULLSCREEN int cy 61 GetSystemMetrics SM CYFULLSCREEN
  • openstack

    云计算架构 openstack整体架构 openstack身份服务 Keystone 管理层次结构 Keystone三大组件 服务 xff08 Server xff09 身份 xff08 Identity xff09 服务 资源 xff08