From e8575df628bb8abcdd91e78965f939fba416e331 Mon Sep 17 00:00:00 2001 From: ston1th Date: Sun, 18 Apr 2021 12:39:35 +0200 Subject: [PATCH] added docs and new patch --- docs/proxmox_hcloud.txt | 177 ++++++++++++++++++ .../snippets_6.3-3.patch | 12 +- 2 files changed, 183 insertions(+), 6 deletions(-) create mode 100644 docs/proxmox_hcloud.txt rename snippets.patch => patches/snippets_6.3-3.patch (72%) diff --git a/docs/proxmox_hcloud.txt b/docs/proxmox_hcloud.txt new file mode 100644 index 0000000..239c78a --- /dev/null +++ b/docs/proxmox_hcloud.txt @@ -0,0 +1,177 @@ +echo "deb http://download.proxmox.com/debian/pve buster pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list +curl -sSL http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg | apt-key add - + +cat <>/etc/network/interfaces +auto eth0 +iface eth0 inet dhcp + dns-nameservers 1.1.1.1 8.8.8.8 + +EOF +rm /etc/network/interfaces.d/50-cloud-init +echo "alias ll='ls -lah'" >>/root/.bashrc +cat </root/.vimrc +syntax on +set mouse= +set ttymouse= +EOF +iface=enp7s0 +ip=$(ip a show $iface | grep "inet " | cut -d" " -f6 | cut -d"/" -f1) +sed -i "s/127.0.1.1/$ip/" /etc/hosts +cat <>/etc/network/interfaces +auto $iface +iface $iface inet static + mtu 1450 + +auto vmbr0 +iface vmbr0 inet static + address $ip/32 + bridge-ports $iface + bridge-stp off + bridge-fd 0 + mtu 1450 + post-up ip route add 172.16.0.1/32 dev vmbr0 + post-up ip route add 172.16.0.0/24 via 172.16.0.1 +EOF + +apt update && apt purge cloud-init -y && apt install ifupdown2 -y && systemctl restart networking + +# install ifupdown2 ? + +DEBIAN_FRONTEND=noninteractive apt dist-upgrade -y -o DPkg::options::="--force-confold"; apt autoremove -y; DEBIAN_FRONTEND=noninteractive apt install --assume-yes -o DPkg::options::="--force-confdef" -y proxmox-ve vim isc-dhcp-server libpve-network-perl; +systemctl disable hc-net-ifup@ +reboot +apt remove -y os-prober linux-image-amd64 'linux-image-4.19*'; apt autoremove -y; + +cat <>/etc/network/interfaces + +auto vmbr1 +iface vmbr1 inet static + address 10.0.0.254/24 + bridge-ports none + bridge-stp off + bridge-fd 0 + post-up echo 1 > /proc/sys/net/ipv4/ip_forward + post-up iptables -t nat -A POSTROUTING -s '10.0.0.0/24' -o eth0 -j MASQUERADE + post-down iptables -t nat -F +EOF +systemctl restart networking + +cat </etc/default/isc-dhcp-server +INTERFACESv4="vmbr1" +INTERFACESv6="" +EOF +cat </etc/dhcp/dhcpd.conf +default-lease-time 600; +max-lease-time 7200; + +subnet 10.0.0.0 netmask 255.255.255.0 { + range 10.0.0.1 10.0.0.253; + option domain-name-servers 1.1.1.1, 8.8.8.8; + option routers 10.0.0.254; +} +EOF +systemctl restart isc-dhcp-server + +# controllers +# id: router +# asn: 65534 +# peers: 172.16.0.2,172.16.0.3,172.16.0.4 +# gateway-nodes: pmx01, pmx02 + +# zones +# id: evpn +# tag: 10000 +# controller: router +# mtu 1400 + +# vnets +# name: vnet2 +# zone: evpn +# tag: 11000 +# anycast: 10.0.0.1/24 + +# /etc/frr/frr.conf + bgp listen range 172.16.0.0/24 + +pvecm add 172.16.0.2 + +# vxlan zone +# id: vxlan +# peer: 172.16.0.2,172.16.0.3,172.16.0.4 +# mut: 1400 + +# vnets +# name: vnet1 +# zone: vxlan +# tag: 100000 + +fallocate -l 10G /var/osd.img +losetup -l -P /dev/loop1 /var/osd.img +wipefs -a /dev/loop1 +lsblk +sed -i "s/'mpath'/'mpath', 'loop'/g" /usr/lib/python3/dist-packages/ceph_volume/util/disk.py + +/usr/share/perl5/PVE/Diskmanage.pm +get_disks +$dev !~ m/^loop\d+$/; + +get_sysdir_info +my $data = {}; +if ($sysdir =~ /loop\d+/) { +$data->{size} = 1024; +$data->{rotational} = 1; +$data->{vendor} = 'unknown'; +$data->{model} = 'unknown'; +return $data; +} +systemctl restart pvedaemon + + +cat <<'EOF'> /var/lib/vz/snippets/9000_bootstrap +#cloud-config +package_update: true +package_upgrade: true +ntp: + enabled: true + servers: ["pool.ntp.org"] +ssh_deletekeys: true +ssh_genkeytypes: ["ed25519", "rsa"] +runcmd: +- "apt-get -y clean" +- "apt-get -y autoremove --purge" +- "bash -c 'rm /home/ubuntu/.ssh/authorized_keys; exit 0'" +- "bash -c 'find /var/log -type f | while read f; do echo -ne >$f; done; exit 0'" +- "bash -c 'rm -rf /var/lib/cloud/*; exit 0'" +power_state: + mode: poweroff +EOF + + +curl -sSL https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img >/tmp/bionic-server-cloudimg-amd64.img + +qm destroy 9000 +qm create 9000 --memory 512 --net0 virtio,bridge=vmbr1 +qm importdisk 9000 /tmp/bionic-server-cloudimg-amd64.img local +qm set 9000 --scsihw virtio-scsi-pci --scsi0 local:9000/vm-9000-disk-0.raw +qm set 9000 --ide0 local:cloudinit +qm set 9000 --boot c --bootdisk scsi0 +qm set 9000 --serial0 socket --vga serial0 +qm set 9000 --cicustom "user=local:snippets/9000_bootstrap" +qm set 9000 --ipconfig0 ip=dhcp,ip6=dhcp +qm set 9000 --kvm 0 +qm set 9000 --balloon 0 +qm set 9000 --cpu kvm64 + +qm start 9000 +sleep 10;while :; do qm status 9000|grep -q stopped && break; done +qm set 9000 --cicustom "" +qm set 9000 --ipconfig0 "" +qm template 9000 + + +# iptables +iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 222 -j DNAT --to 10.0.0.11:22 +iptables -t nat -A POSTROUTING -s '10.0.0.0/24' -o eth0 -j MASQUERADE + +# ceph +https://www.netways.de/blog/2018/11/14/ceph-mimic-using-loop-devices-as-osd/ diff --git a/snippets.patch b/patches/snippets_6.3-3.patch similarity index 72% rename from snippets.patch rename to patches/snippets_6.3-3.patch index 57c4113..96af6ee 100644 --- a/snippets.patch +++ b/patches/snippets_6.3-3.patch @@ -1,6 +1,6 @@ ---- PVE/Storage.pm.old 2020-11-02 19:09:57.318839122 +0100 -+++ PVE/Storage.pm 2020-11-02 19:10:52.910426246 +0100 -@@ -363,6 +363,15 @@ +--- PVE/Storage.pm.old 2021-04-18 12:35:48.201033594 +0200 ++++ PVE/Storage.pm 2021-04-09 23:28:07.554075001 +0200 +@@ -420,6 +420,15 @@ return $plugin->get_subdir($scfg, 'iso'); } @@ -15,9 +15,9 @@ + sub get_vztmpl_dir { my ($cfg, $storeid) = @_; - ---- PVE/API2/Storage/Status.pm.old 2020-11-02 19:09:03.207241634 +0100 -+++ PVE/API2/Storage/Status.pm 2020-11-02 19:09:26.631067308 +0100 + +--- PVE/API2/Storage/Status.pm.old 2021-04-18 12:36:10.512862744 +0200 ++++ PVE/API2/Storage/Status.pm 2021-04-09 23:28:46.429777635 +0200 @@ -424,6 +424,8 @@ raise_param_exc({ filename => "missing '.tar.gz' or '.tar.xz' extension" }); }