搭建DHCP服务,实现自动分配地址
1234erDiagramCUSTOMER ||--o{ ORDER : placesORDER ||--|{ LINE-ITEM : containsCUSTOMER }|..|{ DELIVERY-ADDRESS : uses
DHCP实现原理DHCP定义DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作。它是一种流行的Client/Server协议,一般用于为主机或者为路由器等指定相关的配置信息。DHCP服务在企业和家庭中得到了大量的应用,它能够自动分配ip地址以及一些其他的相关信息,整个过程对客户透明。
DHCP分配方式自动分配方式(Automatic Allocation),DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址。
动态分配方式(Dynamic Allocation),DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或主机明确表 ...
在k8s(kubernetes) 上安装 ingress V1.1.0
Ingress 公开了从集群外部到集群内服务的 HTTP 和 HTTPS 路由。流量路由由 Ingress 资源上定义的规则控制。
下面是一个将所有流量都发送到同一 Service 的简单 Ingress 示例:
在使用 ingress 创建后发现没有默认HTTP123456789101112131415161718[root@hello ~/yaml/nginx]# kubectl describe ingressName: ingress-host-barNamespace: defaultAddress: Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>)Rules: Host Path Backends ---- ---- -------- hello.chenby.cn ...
在 k8s(kubernetes)中使用 Loki 进行日志监控
安装helm环境12345678[root@hello ~/yaml]#[root@hello ~/yaml]# curl https://baltocdn.com/helm/signing.asc | sudo apt-key add -[root@hello ~/yaml]# sudo apt-get install apt-transport-https --yes[root@hello ~/yaml]# echo "deb https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.listdeb https://baltocdn.com/helm/stable/debian/ all main[root@hello ~/yaml]# sudo apt-get update[root@hello ~/yaml]# sudo apt-get install helm[root@hello ~/yaml]#
添 ...
Centos9网卡配置
Centos9 网卡配置文件已修改,如下
1234567891011121314151617181920212223242526[root@bogon ~]# cat /etc/NetworkManager/system-connections/ens18.nmconnection [connection]id=ens18uuid=8d1ece55-d999-3c97-866b-d2e23832a324type=ethernetautoconnect-priority=-999interface-name=ens18permissions=timestamp=1639473429[ethernet]mac-address-blacklist=[ipv4]address1=192.168.1.92/24,192.168.1.1dns=8.8.8.8;dns-search=method=manual[ipv6]addr-gen-mode=eui64dns-search=method=auto[proxy][root@bogon ~]#
命令语法:
# nmcli connection ...
Docker容器中使用GPU
背景
容器封装了应用程序的依赖项,以提供可重复和可靠的应用程序和服务执行,而无需整个虚拟机的开销。如果您曾经花了一天的时间为一个科学或 深度学习 应用程序提供一个包含大量软件包的服务器,或者已经花费数周的时间来确保您的应用程序可以在多个 linux 环境中构建和部署,那么 Docker 容器非常值得您花费时间。
安装添加docker源
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778[root@localhost ~]# sudo yum-config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repoLoaded plugins: fastestmirror, langpacksadding repo from: https://downloa ...
Kubernetes(k8s)集群安装JupyterHub以及Lab
背景
JupyterHub 为用户组带来了笔记本的强大功能。它使用户能够访问计算环境和资源,而不会给用户带来安装和维护任务的负担。用户——包括学生、研究人员和数据科学家——可以在他们自己的工作空间中完成他们的工作,共享资源可以由系统管理员有效管理。
JupyterHub 在云端或您自己的硬件上运行,可以为世界上的任何用户提供预先配置的数据科学环境。它是可定制和可扩展的,适用于小型和大型团队、学术课程和大型基础设施。
第一步、参考:https://cloud.tencent.com/developer/article/1902519 创建动态挂载存储
第二步、安装helm
12345root@hello:~# curl https://baltocdn.com/helm/signing.asc | sudo apt-key add -root@hello:~# sudo apt-get install apt-transport-https --yesroot@hello:~# echo "deb https://baltocdn.com/helm/stable/debian/ ...
kubernetes核心实战(九) --- Ingress
14、Ingress
检查是否有安装12345678910[root@k8s-master-node1 ~/yaml/test]# kubectl get pod,svc -n ingress-nginxNAME READY STATUS RESTARTS AGEpod/ingress-nginx-admission-create--1-74mtg 0/1 Completed 0 172mpod/ingress-nginx-admission-patch--1-5qrct 0/1 Completed 0 172mpod/ingress-nginx-controller-f97bd58b5-vr8c2 1/1 Running 0 172mNAME TYPE CLUSTER-IP ...
kubernetes核心实战(八)--- service
13、service四层网络负载
创建1234567891011121314151617181920212223242526272829303132[root@k8s-master-node1 ~/yaml/test]# [root@k8s-master-node1 ~/yaml/test]# vim my-app.yaml[root@k8s-master-node1 ~/yaml/test]# cat my-app.yamlapiVersion: apps/v1kind: Deploymentmetadata: labels: app: my-dep name: my-depspec: replicas: 3 selector: matchLabels: app: my-dep template: metadata: labels: app: my-dep spec: containers: - image: nginx name: nginx[root@k8s-master-no ...
在Kubernetes(k8s)中使用GPU
介绍
Kubernetes 支持对节点上的 AMD 和 NVIDIA GPU (图形处理单元)进行管理,目前处于实验状态。
修改docker配置文件
123456789101112131415161718192021222324252627282930313233root@hello:~# cat /etc/docker/daemon.json{ "default-runtime": "nvidia", "runtimes": { "nvidia": { "path": "/usr/bin/nvidia-container-runtime", "runtimeArgs": [] } }, "data-root": "/var/lib/docker", "e ...
kubernetes核心实战(五)--- StatefulSets
7、StatefulSetsStatefulSet 是用来管理有状态应用的工作负载 API 对象。
StatefulSet 用来管理 Deployment 和扩展一组 Pod,并且能为这些 Pod 提供序号和唯一性保证。
和 Deployment 相同的是,StatefulSet 管理了基于相同容器定义的一组 Pod。但和 Deployment 不同的是,StatefulSet 为它们的每个 Pod 维护了一个固定的 ID。这些 Pod 是基于相同的声明来创建的,但是不能相互替换:无论怎么调度,每个 Pod 都有一个永久不变的 ID。
StatefulSet 和其他控制器使用相同的工作模式。你在 StatefulSet 对象 中定义你期望的状态,然后 StatefulSet 的 控制器 就会通过各种更新来达到那种你想要的状态。
使用 StatefulSetsStatefulSets 对于需要满足以下一个或多个需求的应用程序很有价值:
稳定的、唯一的网络标识符。稳定的、持久的存储。有序的、优雅的部署和缩放。有序的、自动的滚动更新。在上面,稳定意味着 Pod 调度或重调度的整个过程是有持 ...