Compare commits

...

19 Commits

Author SHA1 Message Date
FetenDridi
46806abf5f first commit 2025-01-15 08:39:16 +01:00
f232bd4026 Merge pull request 'requirements_udapted' (#19) from requirements_updated into main
Reviewed-on: felcloud/ansible_env_staging#19
2024-07-03 13:59:46 +00:00
safouenebg
f343aaebd8 requirements_udapted 2024-07-03 13:36:52 +00:00
8af377153e Merge pull request 'haproxy_update' (#17) from haproxy_cfg_update into main
Reviewed-on: felcloud/ansible_env_staging#17
2024-06-05 16:15:41 +00:00
57ecfe1c42 haproxy_config_vars 2024-06-04 08:13:21 +00:00
f0095830be haproxy_config_file 2024-06-03 15:14:26 +00:00
8b0e3073a8 haproxy_vars_updated 2024-06-03 14:06:09 +00:00
e262842ad4 haproxy_loop_changed 2024-06-03 11:35:06 +00:00
1f1e5fa852 haproxy_vars_changed 2024-06-02 16:43:17 +00:00
20c9f24169 haproxy_vars_changed 2024-05-31 18:33:45 +00:00
63030e0b95 Merge pull request 'Update Ceph infrastructure' (#12) from ceph_vexx into main
Reviewed-on: felcloud/ansible_env_staging#12
Reviewed-by: safouenebg <safouene@felcloud.tn>
2024-05-23 09:41:46 +00:00
b6931523d2
[Add] ceph variables 2024-03-23 16:18:51 +00:00
0da6cfbdb7
[Add] update ceph vexx infrastructure 2024-03-23 10:21:20 +00:00
0f911d9116
[Add] role ceph-init 2024-03-22 15:42:31 +01:00
aafcfe629f
[fix] typo 2024-02-22 17:53:15 +01:00
0083d45fc6
[Add] role names 2024-02-22 17:47:00 +01:00
8f957566fb
[Fix] fip bastion FIP name for emine ceph env 2024-02-22 17:05:18 +01:00
a0c9449c7c
[Fix] Floating IP creation 2024-02-18 00:18:37 +00:00
84edc361d9
[Add] add infrastructure for ceph on vexxhost 2024-02-17 23:03:04 +00:00
5 changed files with 253 additions and 31 deletions

5
ceph_vexx.sh Executable file
View File

@ -0,0 +1,5 @@
#!/bin/bash
export OS_CLOUD="vexxhost_sjc1"
export PULUMI_STACK="staging"
export PULUMI_SUB_STACK="ceph_vexx"
export PULUMI_CONFIG_PASSPHRASE_FILE="/etc/ansible/pulumi_passphrase"

14
group_vars/ceph_vexx Normal file
View File

@ -0,0 +1,14 @@
---
# linux users
users:
- name: emine
group: emine
groups: sudo
shell: '/bin/bash'
ssh_pub_keys:
- 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDQx/ruuz9HUmS44qSMckfpO/Gk6HukIEUO1DfxxiynMMPp6wsWSz799AgeIsu19qfG1T42hMBy1OoBKIJ91YCOKD43zHu5XoleHKZo2kXHHFsQdtZAm4WcRDMzDsbz5gNEboqKStD4bJ+74GORpnVTpypVWX8f2yahTheb38qRpAwmYOCviL4cak2d6RgVi5eWyvGsVJmcd//7301Dg2FH8l+CmSuRKRY6f27fwqvZUsWx8ZJI0z18q8IHAdqyt67WmY6dLYV+8vQLGAo50ElKPTxrIUnOUmiZZI9oaoqemH7hdiSYMUnp/26Ob0xPafcHsJT1+mqS8H3DDMJf5jsEPwSdR+3pnIMm8vwKW6PJVRZPO5p/lugza0XbPTwKWlZeb6poVs1I2pwScedPgVnLMRuWA4rtEamarPlQ2QZS04+2J3TvuOMcHI0vM/T269bTEOk7UghKz5Km3YYPrQVi728zitAc4BOzk5cxJ4GnO+ttEIHWnZT9Vn/slEHNy3NYnB1hX5a5++/fE1xC9KIBLWqiXONDHyPdsoYqrmtkc82rxkyMtwppY9vvAbkWwrSGSiGM7t/EceB2ZlC8EmzNc1tvDaYDmgGEFMDtsOBO6qNVKjxvP8fYdQgzaasarwcbCYG9VgwhEyUJVYM7s9I+VPZhkXI5ZEjXJ0uIHcbU+w== dell-xps'
- 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINgHtvs8XWPr9T1fjhO633kR9ULro0gpnjBc+gFmrI5I emine@felcloud.io'
# ceph
ceph_public_network: "172.39.15.0/24"

View File

@ -18,12 +18,15 @@ haproxy:
frontends:
- name: "{{ k8s_frontend_name }}"
mode: tcp
port: 80
ips:
- "{{ hostvars[inventory_hostname].ansible_host }}"
haproxy_ips:
- ip: "{{ hostvars[inventory_hostname].ansible_host }}:80"
tls: no
- ip: "{{ hostvars[inventory_hostname].ansible_host }}:443"
tls: yes
backends:
- name: "{{ k8s_backend_name }}"
frontend: "safouene-felcloud.io"
mode: tcp
servers:
- "server {{ groups[group][0] }} {{ hostvars[groups[group][0]].ansible_host }}:{{ NodePort }} check"

225
infra/ceph_vexx.json Normal file
View File

@ -0,0 +1,225 @@
{
"application_name": "ceph_vexx",
"bastion_to_use": "ceph_vexx",
"network": [{
"name": "ceph_network",
"bastion_access": "yes",
"subnet": {
"name":"ceph_network_subnet",
"ip_version": 4,
"cidr": "172.39.15.0/24",
"dns_servers": ["8.8.8.8"],
"linked_router": [{"router_name": "ceph_router"}]
},
"port": [
]
}],
"router": [{
"router_name": "ceph_router",
"router_external_gateway": "0048fce6-c715-4106-a810-473620326cb0",
"linked_subnets": [{
"router_interface_name": "ceph_router_interface",
"subnet_name": "ceph_network_subnet"}]
}],
"security_group":[
{
"name": "all_open",
"description": "Emine DEV environment is security group",
"rules": [
{
"name": "Ingress_ssh",
"description": "ssh traffic",
"direction": "ingress",
"port_range_max": 22,
"port_range_min": 22,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_http",
"description": "http traffic",
"direction": "ingress",
"port_range_max": 80,
"port_range_min": 80,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_https",
"description": "https traffic",
"direction": "ingress",
"port_range_max": 443,
"port_range_min": 443,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_squid",
"description": "Squid Proxy traffic",
"direction": "ingress",
"port_range_max": 3128,
"port_range_min": 3128,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_ping",
"description": "icmp traffic",
"direction": "ingress",
"port_range_max": 0,
"port_range_min": 0,
"protocol": "icmp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_nosqlclient",
"description": "nosqlclient traffic",
"direction": "ingress",
"port_range_max": 3000,
"port_range_min": 3000,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_nexus",
"description": "nexus repository traffic",
"direction": "ingress",
"port_range_max": 8081,
"port_range_min": 8081,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_nexus_docker_registry",
"description": "nexus repository traffic",
"direction": "ingress",
"port_range_max": 8082,
"port_range_min": 8082,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_ceph_osds",
"description": "Ceph OSDs traffic",
"direction": "ingress",
"port_range_max": 7300,
"port_range_min": 6800,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_ceph_mons",
"description": "Ceph Mons and Client traffic",
"direction": "ingress",
"port_range_max": 3300,
"port_range_min": 3300,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_ceph_mons_backup",
"description": "Ceph Mons and Client traffic",
"direction": "ingress",
"port_range_max": 6789,
"port_range_min": 6789,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
},
{
"name": "Ingress_mongodb",
"description": "mongodb traffic",
"direction": "ingress",
"port_range_max": 27017,
"port_range_min": 27017,
"protocol": "tcp",
"remote_ip_prefix": "0.0.0.0/0"
}
]
}
],
"instance": [{
"name": "stg-cephmon-00",
"az": "nova",
"flavor": "v3-starter-1",
"image": "Ubuntu 22.04 - Cloud Image",
"keypair": "dell XPS",
"security_group": ["all_open"],
"inventory_group": "mons",
"network": [{"name": "ceph_network"}]
},
{
"name": "stg-cephmon-01",
"az": "nova",
"flavor": "v3-starter-1",
"image": "Ubuntu 22.04 - Cloud Image",
"keypair": "dell XPS",
"security_group": ["all_open"],
"inventory_group": "mons",
"network": [{"name": "ceph_network"}]
},
{
"name": "stg-cephmon-02",
"az": "nova",
"flavor": "v3-starter-1",
"image": "Ubuntu 22.04 - Cloud Image",
"keypair": "dell XPS",
"security_group": ["all_open"],
"inventory_group": "mons",
"network": [{"name": "ceph_network"}]
},
{
"name": "stg-cephosd-00",
"az": "nova",
"flavor": "v3-starter-1",
"image": "Ubuntu 22.04 - Cloud Image",
"keypair": "dell XPS",
"security_group": ["all_open"],
"inventory_group": "osds",
"network": [{"name": "ceph_network"}],
"volume": ["osd-00"]
},
{
"name": "stg-cephosd-01",
"az": "nova",
"flavor": "v3-starter-1",
"image": "Ubuntu 22.04 - Cloud Image",
"keypair": "dell XPS",
"security_group": ["all_open"],
"inventory_group": "osds",
"network": [{"name": "ceph_network"}],
"volume": ["osd-01"]
},
{
"name": "stg-cephosd-02",
"az": "nova",
"flavor": "v3-starter-1",
"image": "Ubuntu 22.04 - Cloud Image",
"keypair": "dell XPS",
"security_group": ["all_open"],
"inventory_group": "osds",
"network": [{"name": "ceph_network"}],
"volume": ["osd-02"]
},
{
"name": "stg-ceph-bastion-00",
"az": "nova",
"flavor": "v3-starter-1",
"image": "Ubuntu 22.04 - Cloud Image",
"keypair": "dell XPS",
"security_group": ["all_open"],
"inventory_group": "ceph_vexx_bastion",
"network": [{
"name": "ceph_network",
"fip": {
"name": "fip_bastion",
"pool": "public"
}
}]
}
],
"volume": [
{"name": "osd-00", "description": "Ceph OSD 0", "size": 50, "availability_zone": "nova", "volume_type": "rbd"},
{"name": "osd-01", "description": "Ceph OSD 1", "size": 50, "availability_zone": "nova", "volume_type": "rbd"},
{"name": "osd-02", "description": "Ceph OSD 2", "size": 50, "availability_zone": "nova", "volume_type": "rbd"}
]
}

View File

@ -4,38 +4,13 @@
version: 0.0.4
scm: git
accept_hostkey: yes
name: base
- src: git@git.felcloud.io:felcloud/ansible_roles_ssh.git
version: 0.0.1
scm: git
accept_hostkey: yes
name: ssh
- src: git@git.felcloud.io:felcloud/ansible_roles_haproxy.git
version: 0.0.1
scm: git
accept_hostkey: yes
- src: git@git.felcloud.io:felcloud/ansible_roles_keepalived.git
version: 0.0.1
scm: git
accept_hostkey: yes
- src: git@git.felcloud.io:felcloud/ansible_roles_docker.git
version: 0.0.1
scm: git
accept_hostkey: yes
- src: git@git.felcloud.io:felcloud/ansible_roles_console.git
version: 0.0.6
scm: git
accept_hostkey: yes
- src: git@git.felcloud.io:felcloud/ansible_roles_mongodb.git
version: 0.0.1
scm: git
accept_hostkey: yes
- src: git@git.felcloud.io:felcloud/ansible_roles_nexus.git
version: 0.0.1
scm: git
accept_hostkey: yes