45 lines
1.5 KiB
YAML
45 lines
1.5 KiB
YAML
# A Managed proxy backed by a libvirt/KVM hypervisor through the kvm2
|
|
# provider: the operator boots a stock Debian cloud image as a VM on the
|
|
# named host, with a NIC on the host's bridge (IP from the LAN's DHCP), and
|
|
# installs Squid via cloud-init. Requires a providers-config entry named
|
|
# "kvm2-home" (see providers-config.yaml) and the kvm-ssh Secret, which the
|
|
# kvm and kvm2 providers share (docs/kvm2-provider.md).
|
|
#
|
|
# placement.zone is the host name from kvm2.hosts (optional when only one
|
|
# host is configured); machineType and image are keys in the provider's
|
|
# machineTypes and images maps. The first Proxy for an image on a host
|
|
# waits for the image download; later ones reuse the cached copy.
|
|
apiVersion: crawl.example.com/v1alpha1
|
|
kind: Proxy
|
|
metadata:
|
|
name: proxy-kvm2-sample
|
|
spec:
|
|
mode: Managed
|
|
provider: kvm2-home
|
|
placement:
|
|
zone: beelink
|
|
machineType: small
|
|
image: debian-13
|
|
port: 3128
|
|
cloudInit:
|
|
inline: |
|
|
#cloud-config
|
|
packages:
|
|
- squid
|
|
write_files:
|
|
- path: /etc/squid/conf.d/proxy-operator.conf
|
|
content: |
|
|
http_port 3128
|
|
http_access allow all
|
|
via off
|
|
forwarded_for off
|
|
runcmd:
|
|
- systemctl restart squid
|
|
# Optional: log in with `ssh debian@<ip>` (the Debian image's default
|
|
# user) to look around; `virsh console <name>` on the host works too.
|
|
# ssh_authorized_keys:
|
|
# - ssh-ed25519 AAAA... you@laptop
|
|
attributes:
|
|
geo: home
|
|
purpose: crawl
|