本站用于记录日常工作内容,虚拟化云计算,系统运维,数据库DBA,网络与安全。
什么是QEMU?QEMU是一种通用的开源计算机仿真器和虚拟器。 1、全系统仿真:在任何受支持的体系结构上为任何计算机运行操作系统 2、用户模式仿真在任何受支持的体系结构上为另一个Linux / BSD目标运行程序 3、虚拟化以接近本机的性能运行KVM和Xen虚拟机 下面介绍在Fedora下编译最新版本Qemu5.1并创建ARM版本Linux虚拟机 一、编译安装Qemu5.1 wget https://download.qemu.org/qemu-5.1.0.tar.xz
tar xvJf qemu-5.1.0.tar.xz
cd qemu-5.1.0
./configure
make -j6
make install
编译安装出现报错的解决办法 1) ERROR: "cc" either does not exist or does not work ./configure
ERROR: "cc" either does not exist or does not work
解决办法 yum install gcc
2)ERROR: glib-2.48 gthread-2.0 is required to compile QEMU ./configure
ERROR: glib-2.48 gthread-2.0 is required to compile QEMU
解决办法 yum install glib2-devel
3)pixman...
用docker运行postgreSQL 与PGadmin4管理工具一、安装docker或podman,然后拉取镜像postgres与pgadmin4:具体怎么安装docker与podman就不说了,我这里直拉使用centos8系统自带的podman,与docker操作一样,只是有些命令更简单些。[root@k8s-30 ~]# docker pull registry.cn-hangzhou.aliyuncs.com/zhangweidong/postgres:12.3[root@k8s-30 ~]# docker pull registry.cn-hangzhou.aliyuncs.com/hellobike-public/pgadmin4:4.25二、启动:[root@k8s-30 ~]# mkdir /data/pgdata -p[root@k8s-30 ~]# podman run --name pgadmin4 -p 8008:80 -e PGADMIN_DEFAULT_EMAIL=92cto@vip.qq.com -e PGADMIN_DEFAULT_PASSWORD=80610000 -d registry.cn-hangzhou.aliyuncs.com/hellobike-public/pgadmin4:4.25d41a87c0abe92eb9a12a45c2479635b9e6e5471404d1d355466a044aacc450fe[root@k8s-30 ~]# podman run --name postgres -e POSTGRES_PASSWORD=123456 -v pgdata:/data/pgdata -p 5432:5432 -d registry.cn-hangzhou.aliyuncs.com/zhangweidong/postgres:12.37342f6664379d01d765fc9cb3223f5bb0a076206e2901697c3293bf83d46b1fb 解释:run,创建并运行一个容器;...
Kubernetes 部署 Kafka Manager需要先安装zookeeper与kafka ,参考这里https://www.micoder.cc/blog/2278.html创建 Kafka Manager 部署文件。kafka-manager.yamlapiVersion: v1kind: Servicemetadata: name: kafka-manager labels: app: kafka-manager namespace: kafkaspec: type: NodePort ports: - name: kafka port: 9000 targetPort: 9000 nodePort: 30900 selector: app: kafka-manager---apiVersion: apps/v1kind: Deploymentmetadata: name: kafka-manager labels: app: kafka-manager namespace: kafkaspec: replicas: 1 selector: matchLabels: app: kafka-manager template: metadata: labels: app: kafka-manager spec: containers: - name: kafka-manager image: zenko/kafka-manager:1.3.3.22 ...
一、Docker的网络模式介绍docker默认提供3种网络模式:bridge桥接模式、host主机模式、none无网络模式可以通过命令 docker network ls 查看1.1、bridge桥接模式 桥接模式是docker默认的网络模式。当docker服务启动后,会创建一个名字叫docker0的虚拟网桥,然后选一个与宿主机不一样的网络ip地址以及子网分配给docker0另外每创建一个容器就会新增一个容器网卡,然后以桥接方式架到docker0网桥中,docker0会以NAT地址转换的方式通过宿主机的网卡,从而与公网进行通信。如下图所示:下面进行测试演示:1、启动docker服务后,通过命令 ip addr 发现docker0网卡ip为172.17.0.12、启动一个docker容器 docker run -itd centos:7 /bin/bash ,再进行一次 ip addr 发现新增一个网卡veth506a249@if63、执行命令 yum install -y bridge-utils 安装工具,使用命令 brctl show 查看一下桥接情况可以看到容器的网卡桥接到docker0上 1.2、host主机模式主机模式是指docker容器与公网通信时使用的是宿主机的ip与端口,同时容器自己不会有ip地址,所以在这模式下容器与宿主机之间并没有隔离很分明。...
docker安装后,默认会创建三种网络类型,bridge、host和none,可通过如下命令查看sudo docker network ls1bridge:网络桥接默认情况下启动、创建容器都是用该模式,所以每次docker容器重启时会按照顺序获取对应ip地址,这就导致容器每次重启,ip都发生变化none:无指定网络启动容器时,可以通过–network=none,docker容器不会分配局域网iphost:主机网络docker容器的网络会附属在主机上,两者是互通的。创建固定ip容器1、创建自定义网络类型,并且指定网段sudo docker network create --subnet=192.168.0.0/16 staticnet1通过docker network ls可以查看到网络类型中多了一个staticnet2、使用新的网络类型创建并启动容器sudo docker run -it --name userserver --net staticnet --ip 192.168.0.2 ubuntu /bin/bash1通过docker inspect可以查看容器ip为192.168.0.2,关闭容器并重启,发现容器ip并未发生改变
k8s部署traefik基础知识 同nginx相比,traefik能够自动感知后端容器变化,从而实现自动服务发现。 traefik部署在k8s上分为daemonset和deployment两种方式各有优缺点: daemonset 能确定有哪些node在运行traefik,所以可以确定的知道后端ip,但是不能方便的伸缩 deployment 可以更方便的伸缩,但是不能确定有哪些node在运行traefik所以不能确定的知道后端ip 一般部署两种不同类型的traefik: 面向内部(internal)服务的traefik,建议可以使用deployment的方式 面向外部(external)服务的traefik,建议可以使用daemonset的方式 建议使用traffic-type标签 traffic-type: external traffic-type: internal traefik相应地使用labelSelector traffic-type=internal traffic-type=external1. 下载源码git clone https://github.com/containous/traefik.git官方网址: https://docs.traefik.io/获取配置文件wget https://raw.githubusercontent.com/containous/traefik/v1.7/examples/k8s/tra...
Ingress:ingress是从kubernetes集群外访问集群的入口,将用户的URL请求转发到不同的service上。Ingress相当于nginx、apache等负载均衡方向代理服务器,其中还包括规则定义,即URL的路由信息,路由信息得的刷新由Ingress controller来提供。Ingress Controller 实质上可以理解为是个监视器,Ingress Controller 通过不断地跟 kubernetes API 打交道,实时的感知后端 service、pod 等变化,比如新增和减少 pod,service 增加与减少等;当得到这些变化信息后,Ingress Controller 再结合下文的 Ingress 生成配置,然后更新反向代理负载均衡器,并刷新其配置,达到服务发现的作用。TraefikTraefik是一款开源的反向代理与负载均衡工具。它最大的优点是能够与常见的微服务系统直接整合,可以实现自动化动态配置。部署Traefik①创建ingress-rbac.yaml.将用于service account验证。apiVersion: v1
kind: ServiceAccount
metadata:
name: ingress
namespace: default
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: ingress
subjects:
- kind: ServiceAccount
name: ingress
namespace: default...
kvm-web管理工具webvirtmgr前言: 使用开源的虚拟化技术,对公司自有的少数服务器进行虚拟化,在满足业务需求的同时,并未增加投入,同时也避免了使用云主机的不便,技术层面,kvm是开源的虚拟化产品,虚拟化性能出众,更重要的是免费!!!WebVirtMgr作为kvm虚拟化的web管理工具,图形化的WEB,让人能更方便的查看kvm 宿主机的情况和操作,使用kvm+webvirtmgr便可满足当前场景的业务需求,虚拟化的同时,也能够进行便捷的管理。采用纯Python开发,其前端是基于Python的Django,后端是基于Libvirt的Python接口,将日常kvm的管理操作变的更加的可视化。WebVirtMgr 介绍 WebVirtMgr采用几乎纯Python开发,其前端是基于Python的Django,后端是基于Libvirt的Python接口,将日常kvm的管理操作变的更加的可视化。WebVirtMgr 特点操作简单,易于使用通过libvirt的API接口对kvm进行管理提供对虚拟机生命周期管理WebVirtMgr 功能宿主机管理支持以下功能CPU利用率内存利用率网络资源池管理存储资源池管理虚拟机镜像虚拟机克隆快照管理日志管理虚机迁移虚拟机管理支持以下功能CPU利用率内存利用率光盘管理关/开/暂停虚拟机安装虚拟机VNC console连接创建快照 W...
1、kubernetes API概述Kubernetes API是集群系统中的重要组成部分,Kubernetes中各种资源(对象)的数据通过该API接口被提交到后端的持久化存储(etcd)中,Kubernetes集群中的各部件之间通过该API接口实现解耦合,同时Kubernetes集群中一个重要且便捷的管理工具kubectl也是通过访问该API接口实现其强大的管理功能的。Kubernetes API中的资源对象都拥有通用的元数据,资源对象也可能存在嵌套现象,比如在一个Pod里面嵌套多个Container。创建一个API对象是指通过API调用创建一条有意义的记录,该记录一旦被创建,Kubernetes将确保对应的资源对象会被自动创建并托管维护。在Kubernetes系统中,大多数情况下,API定义和实现都符合标准的HTTP REST格式, 比如通过标准的HTTP动词(POST、PUT、GET、DELETE)来完成对相关资源对象的查询、创建、修改、删除等操作。但同时Kubernetes 也为某些非标准的REST行为实现了附加的API接口,例如Watch某个资源的变化、进入容器执行某个操作等。另外,某些API接口可能违背严格的REST模式,因为接口不是返回单一的JSON对象,而是返回其他类型的数据,比如JSON对象流(Stream)或非结构化的文本日...
Kubernetes Annotations可以使用Kubernetes Annotations将任何非标识metadata附加到对象。客户端(如工具和库)可以检索此metadata。将metadata附加到对象可以使用Labels或Annotations将元数据附加到Kubernetes对象。标签可用于选择对象并查找满足某些条件的对象集合。相比之下,Annotations不用于标识和选择对象。Annotations中的元数据可以是small 或large,structured 或unstructured,并且可以包括标签不允许使用的字符。Annotations就如标签一样,也是由key/value组成:"annotations": {
"key1" : "value1",
"key2" : "value2"
}以下是在Annotations中记录信息的一些例子:构建、发布的镜像信息,如时间戳,发行ID,git分支,PR编号,镜像hashes和注Registry地址。一些日志记录、监视、分析或audit repositories。一些工具信息:例如,名称、版本和构建信息。用户或工具/系统来源信息,例如来自其他生态系统组件对象的URL。负责人电话/座机,或一些信息目录。注意:Annotations不会被Kubernetes直接使用,其主要目的是方便用户阅读查找。
总共58页,当前第13页 | 页数: - 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
最新评论