Cephfs: Difference between revisions

From Hobbynet Admin Wiki
Jump to navigation Jump to search
Line 33: Line 33:
   #Hobbynet shared Directory's
   #Hobbynet shared Directory's
    
    
  [2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/bin                    /usr/local/hobbynet/bin ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/bin                    /usr/local/hobbynet/bin ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
  [2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/etc                    /usr/local/hobbynet/etc ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/etc                    /usr/local/hobbynet/etc ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
  [2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/lib                    /usr/local/hobbynet/lib ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/lib                    /usr/local/hobbynet/lib ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
  [2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/home                  /usr/local/hobbynet/home ceph name=HCCHC-170920-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170920-cephfs.key,noatime,_netdev 0 2
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/home                  /usr/local/hobbynet/home ceph name=HCCHC-170920-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170920-cephfs.key,noatime,_netdev 0 2
    
    
  #firewall
#firewall
  [2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/firewall/general      /usr/local/hobbynet/firewall/general ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/firewall/general      /usr/local/hobbynet/firewall/general ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2


= firewalling =  
= firewalling =  

Revision as of 17:55, 6 November 2020

doel

De shared storage is uit besteed aan bit, hier wat uitleg er voor

installatie bij hobbynet

Ken een ip toe uit de 2001:7b8:89:0::/64 standaard pakken wij het ipv4 adres van de interne interface en dat plakken we in het ipv6 adres dus 172.31.1.19 wordt 2001:7b8:89:0:172:31:1:19/64. En er moet route worden toegevoegd voor 2001:7b8:80::/48 naar 2001:7b8:89::1 je interface ziet er dan zo uit:

       ens224:
           dhcp6: no
           accept-ra: no
           addresses:
           - 2001:7b8:89:0:172:31:1:19/64
           routes:
           - to: 2001:7b8:80::/48
             via: 2001:7b8:89::1
           critical: true


eerst repo en dan hobby-cephfs

  apt install hobby-cephfs-repo
  apt install hobby-cephfs

fstab

read write

een read/write entry ziet er zo uit :

  [2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/site/etc/ssl /disk/site/etc/ssl ceph name=HCCHC-170920-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170920-cephfs.key,noatime,_netdev 0 2

1 regel

read only

een readonly entry ziet er zo uit :

  [2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/site/etc/ssl/wildcard.hcc.nl /disk/site/etc/ssl/wildcard.hcc.nl ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2

standaard mounts in fstab

deze mounts worden standaard in fstab geplaatst:

  #cephfs
  #Hobbynet shared Directory's
  
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/bin                    /usr/local/hobbynet/bin ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/etc                    /usr/local/hobbynet/etc ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/lib                    /usr/local/hobbynet/lib ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/home                   /usr/local/hobbynet/home ceph name=HCCHC-170920-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170920-cephfs.key,noatime,_netdev 0 2
  
#firewall
[2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]:/HCCHC/170920/disk/usr/local/hobbynet/firewall/general       /usr/local/hobbynet/firewall/general ceph name=HCCHC-170989-cephfs,secretfile=/etc/ceph/ceph.client.HCCHC-170989-cephfs.key,noatime,_netdev,ro 0 2

firewalling

In de algemene ipv6 firewall regels staan we al het verkeer van en naar 2001:7b8:80::/48 met uitzondering van port 22 (ssh) inkomend.
Voor inkommend staat dit in /usr/local/hobbynet/firewall/general/in_up.ip6:

  #drop ssh van cephstorage bit
  $IP6TABLES -A INPUT -p tcp -s 2001:7b8:80::/48 --dport 22  -j ACCEPT
  
  #overig verkeer van cephstorage bit moet mogen
  $IP6TABLES -A INPUT -s 2001:7b8:80::/48  -j ACCEPT

Voor uitgaand is dat in /usr/local/hobbynet/firewall/general/out_up.ip6

  #verkeer naar cephstorage bit moet mogen
  $IP6TABLES -A OUTPUT -d 2001:7b8:80::/48  -j ACCEPT


keys

RW user:

  [client.HCCHC-170920-cephfs]
  key = AQBOo5Zf3rJQCxAA/yqzR0OX9LajCv+waicd2w==
  caps mds = "allow rw path=/HCCHC/170920"
  caps mon = "allow r"
  caps osd = "allow rw pool=BITED-153874-cephfs_data namespace=HCCHC-01"


RO user:

  [client.HCCHC-170989-cephfs]
  key = AQBRo5Zfx9FzBRAAMuNwqySs17SJJJ9bPHnuew==
  caps mds = "allow r path=/HCCHC/170920"
  caps mon = "allow r"
  caps osd = "allow r pool=BITED-153874-cephfs_data namespace=HCCHC-01"

uitleg bit

Uit bit ticket 170920 https://status.bit.nl/tickets/?id=170920&query=f35a540e5379df8ed2c734707a7984e3

  Hieronder de uitleg voor het instellen van de Cephfs.
  
  1) Zorg ervoor dat de server een IP adres krijgt in de netwerk range 2001:7b8:89::/48
  2) Zorg ervoor dat er een route is ingesteld naar de Ceph storage omgeving
  
  /sbin/ip -6 route add 2001:7b8:80::/48 via 2001:7b8:89::1
  
  3) Installeer de Ceph tooling
  
  $ wget -qO- https://download.ceph.com/keys/release.asc | apt-key add -
  $ echo "deb http://ceph.download.bit.nl/debian-mimic bionic main" \
      | sudo tee /etc/apt/sources.list.d/ceph.list
  $ apt update
  $ apt install ceph-common
  
  4) Maak een bestand aan in /etc/ceph/ceph.conf met onderstaande informatie:
  
  
  [global]
  # IPs here instead of hostname so we work independent of DNS
  mon_host = [2001:7b8:80:1:0:1:1:1],[2001:7b8:80:1:0:1:1:2],[2001:7b8:80:3:0:2c:1:3],[2001:7b8:80:3:0:2c:1:4],[2001:7b8:80:2:0:2a:1:5]
  
  5) Plaats de client key waarmee de authenticatie plaatsvind op de Cephfs. De nodige gegevens hiervan zijn te vinden in de securebox.
  
  $ cat /etc/ceph/ceph.client.FOOBA-123456-cephfs.keyring
  [client.FOOBA-123456-cephfs]
  key = AQDpqB....
  caps mds = "allow rw path=/FOOBA/123456"
  caps mon = "allow r"
  caps osd = "allow rw pool=BITED-153874-cephfs_data namespace=FOOBA-01"
  
  6) Plaats de key zelf ook nog los in een file. Dit is dezelfde key als in stap 5 is gebruikt.
  
  $ cat /etc/ceph/ceph.client.FOOBA-123456-cephfs.key
  AQDpqB....
  
  7) Zet onderstaande regel in fstab
  
  mon1.ceph.bit.nl,mon2.ceph.bit.nl,mon3.ceph.bit.nl,mon4.ceph.bit.nl,mon5.ceph.bit.nl:/HCCHC/170920 /mnt/data ceph name=FOOBA-123456-cephfs,secretfile=/etc/ceph/ceph.client.FOOBA-123456-cephfs.key,noatime,_netdev 0 2
  
  Hierna zal het mogelijk moeten zijn om /mnt/data te mounten met Cephfs. Wanneer er alleen RO rechten toegestaan zijn, dan dien je vanaf stap 5 de key te gebruiken voor de RO user.

In orginele bit ticket ontbrak apt install ceph-common deze toegevoegd
In orginele bit ticket zat typo in mount path /HCCHC/17092 moest /HCCHC/170920 zijn gecorigeerd
De aan ons toegekende /48 wordt allen de 1e /64 gebruikt dus 2001:7b8:89:0::/64