局域网自动激活windows
原理解析windows会自动查询当前网络下默认DNS后缀的_vlmcs._tcp的SRV记录,如果查询成功就会尝试通过该记录进行激活。
什么是 DNS SRV 记录?DNS“服务” (SRV) 记录为特定的服务(如 IP语音 (VoIP))、即时通讯等)指定主机和端口。大多数其他 DNS 记录只指定一个服务器或一个 IP 地址,但 SRV 记录还包括该 IP 地址的一个端口。一些互联网协议需要使用 SRV 记录才能运作。
因此我们想要实现当前局域网下windows自动激活,就需要准备两样东西,一个是当前网络域,一个是能添加此域的SRV记录。
如何修改或指定当前网络域DNS后缀?其原理就是DHCP服务在分发IP地址时,会同时通知客户端域名后缀,因此需要能够管理DHCP服务的配置。
例如openwrt
openwrt大部分固件好像默认的域名都是 lan,那么我们就需要添加 _vlmcs._tcp.lan 的SRV解析,如果是其他域名,添加对应域名的解析即可。
如果你不确,可以查看一下网络详情的“连接特定的 DNS 后缀”,来查看具体的后缀信息。如果为空,那就是没有配置。
添加DN ...
通过H3C的DHCP服务实现PXE同时支持uefi和legacy
大多数情况下,局域网内都已经有DHCP服务了,一般是通过路由器或则三层的交换机提供DHCP服务。
此时若需要PXE服务,那么势必会有DHCP冲突,即便是PXE的DHCP地址池配置与主DHCP服务相同,也会存在多个DHCP服务响应的问题,PXE客户端会有几率获取IP失败。而DHCP代理模式,也无法添加额外选项。
openwrt配置文档较多,就不多做介绍了,无非就是通过添加DHCP选项而已,看下DHCP标准文档和各DHCP服务的文档即可轻松搞定。
常见协议文档syslinux
PXElinux
RFC 2132
RFC 4578
RFC 5071
RFC 5494
RFC 5970
H3C 配置思路这里我用h3c,其他厂商设备同理,命令查下手册,大同小类。
h3c官网给的方案时使用 option 43选项,但是当同时存在option 66、67、150之一时,PXE的option 43优先级是最低的,其他选项会优先使用,因此我们不需要使用option 43选项。
# 开启DHCP服务dhcp enable
# 开启DHCP服务数据库,避免断电重启后重新分配IP情况dhcp server ...
sonarqube部署yaml
Docker仓库
apiVersion: apps/v1kind: Deploymentmetadata: labels: app: sonar name: sonar namespace: public-servicespec: selector: matchLabels: app: sonar template: metadata: labels: app: sonar spec: containers: - env: - name: crowd.application value: sonar - name: crowd.password value: *** - name: crowd.url value: https://***.com/crowd/ - name: ldap.bindDn value: cn=admin,dc=***,dc=com ...
yapi部署yaml
Docker仓库
apiVersion: apps/v1kind: Deploymentmetadata: labels: app: yapi name: yapi namespace: public-servicespec: selector: matchLabels: app: yapi template: metadata: labels: app: yapi spec: containers: - env: - name: YAPI_ADMIN_ACCOUNT value: admin@admin.com - name: YAPI_ADMIN_PASSWORD value: *** - name: YAPI_CLOSE_REGISTER value: "true" - name: YAPI_DB_AUTH_SOURCE value: admin ...
crowd部署yaml
Docker仓库
破解补丁
apiVersion: apps/v1kind: Deploymentmetadata: labels: app: crowd name: crowd namespace: public-servicespec: selector: matchLabels: app: crowd template: metadata: labels: app: crowd spec: containers: - env: - name: ATL_PROXY_NAME value: xxx.com - name: ATL_PROXY_PORT value: "443" - name: ATL_TOMCAT_SCHEME value: https - name: ATL_TOMCAT_SECURE value: "true" ...
skywalking部署helm
GitHub地址
官方helm chart尚未被谷歌官方helm仓库收录,目前下载官方chart上传至公司私有helm
--- elasticsearch: config: host: "elasticsearch-master.elasticsearch.svc.cluster.local" user: "***" password: "***" port: http: "9200" enabled: "false" oap: env: SW_AUTHENTICATION: "******" image: repository: "skywalking-oap-server"
log-pilot部署yaml
https://github.com/AliyunContainerService/log-pilot
apiVersion: v1kind: ConfigMapmetadata: labels: cattle.io/creator: norman name: filebeat namespace: kube-systemdata: filebeat.tpl: |- {{range .configList}} - type: log enabled: true paths: - {{ .HostDir }}/{{ .File }} multiline.pattern: '(^\d{4}-\d{1,2}-\d{1,2}\s\d{1,2}:\d{1,2}:\d{1,2}| ...
kibana部署helm
官方helm
apiVersion: v1kind: Secretmetadata: labels: cattle.io/creator: norman name: elastic-credentials namespace: kibanatype: Opaquedata: password: *** username: ***---apiVersion: v1kind: Secretmetadata: labels: cattle.io/creator: norman name: kibana namespace: kibanatype: Opaquedata: encryptionkey: ***elasticsearchHosts: "http://elasticsearch-master.elasticsearch.svc.cluster.local:9200" extraEnvs: - name: 'ELASTICSEARCH_USERNAME' valueFrom: secretKeyR ...
jira部署yaml
Docker仓库
破解补丁
apiVersion: apps/v1kind: Deploymentmetadata: labels: app: jira name: jira namespace: public-servicespec: selector: matchLabels: app: jira template: metadata: labels: app: jira spec: containers: - env: - name: ATL_PROXY_NAME value: ***.com - name: ATL_PROXY_PORT value: "443" - name: ATL_TOMCAT_SCHEME value: https - name: ATL_TOMCAT_SECURE value: "true" ...
jenkins部署yaml
Docker仓库
apiVersion: apps/v1kind: Deploymentmetadata: labels: app: jenkins-master name: jenkins namespace: public-servicespec: selector: matchLabels: app: jenkins-master template: metadata: labels: app: jenkins-master spec: containers: - env: - name: JAVA_OPTS value: -Duser.timezone=Asia/Shanghai image: jenkins/jenkins:latest imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 initialD ...