many improvements

This commit is contained in:
Guilherme Silva
2026-07-17 19:31:05 -03:00
parent 133c6e0863
commit ab7a180f9f
13 changed files with 182 additions and 68 deletions

View File

@@ -27,7 +27,7 @@ data "oci_identity_fault_domains" "fds" {
data "oci_mysql_mysql_configurations" "sei_mysql_configurations" {
compartment_id = var.ocid_compartment_app
state = "ACTIVE"
shape_name = "MySQL.4"
shape_name = var.mysql_shape
type = ["DEFAULT"]
}

104
mysql-sei.tf Executable file
View File

@@ -0,0 +1,104 @@
resource "oci_mysql_mysql_configuration" "sei_mysql_configuration" {
compartment_id = var.ocid_compartment_database
description = "Copy of: MySQL.2.Standalone\nDefault standalone configuration for the ${var.mysql_shape} MySQL shape"
display_name = "mysql-sei-initial-configuration"
parent_configuration_id = data.oci_mysql_mysql_configurations.sei_mysql_configurations.configurations[0].id
shape_name = var.mysql_shape
options {
name = "lower_case_table_names"
value = "CASE_SENSITIVE"
}
options {
name = "character_set_server"
value = "LATIN1"
}
options {
name = "collation_server"
value = "LATIN1_SWEDISH_CI"
}
options {
name = "character_set_client"
value = "LATIN1"
}
options {
name = "character_set_connection"
value = "LATIN1"
}
options {
name = "character_set_results"
value = "LATIN1"
}
options {
name = "collation_connection"
value = "LATIN1_SWEDISH_CI"
}
options {
name = "init_connect"
value = "SET NAMES latin1"
}
}
resource "oci_mysql_mysql_db_system" "sei_mysql_dbsystem" {
customer_contacts {
email = var.mysql_contacts_email
}
access_mode = "UNRESTRICTED"
admin_password = random_string.password_mysql_admin.result
admin_username = "admin"
availability_domain = data.oci_identity_availability_domains.ads.availability_domains[0].name
compartment_id = var.ocid_compartment_database
configuration_id = oci_mysql_mysql_configuration.sei_mysql_configuration.id
crash_recovery = "ENABLED"
data_storage_size_in_gb = var.mysql_database_storage_size
database_management = "ENABLED"
database_mode = "READ_WRITE"
description = "Instância MySQL SEI"
display_name = var.mysql_database_name
hostname_label = var.mysql_database_name
is_highly_available = var.mysql_highly_available
mysql_version = var.mysql_database_version
port = 3306
port_x = 33060
security_attributes = {}
shape_name = var.mysql_shape
state = "ACTIVE"
subnet_id = var.ocid_subnet_database
data_storage {
is_auto_expand_storage_enabled = false
}
deletion_policy {
automatic_backup_retention = "RETAIN"
final_backup = "REQUIRE_FINAL_BACKUP"
is_delete_protected = true
}
encrypt_data {
key_generation_type = "SYSTEM"
}
maintenance {
window_start_time = "SUNDAY 00:00"
}
read_endpoint {
exclude_ips = []
is_enabled = false
}
secure_connections {
certificate_generation_type = "SYSTEM"
}
source {
source_type = "NONE"
}
}

View File

@@ -22,7 +22,8 @@ resource "oci_core_instance" "memcached-instance" {
}
metadata = {
ssh_authorized_keys = tls_private_key.master_ssh_key.public_key_openssh
#ssh_authorized_keys = tls_private_key.master_ssh_key.public_key_openssh
ssh_authorized_keys = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDTA1O8yeocPs5MjopLtfRA2PzH+gbNtUm06H8I2YkPeavlFOWO4Xfkg+uNMWUltHguWQ60+E2H+YodIB1VDmVS9/efWWmEvaXi5a6s4GDVkaoNOcSSM4IME5yONBeKkx7JTNf9Jdg01p0yEYqb7rgmYSYrhWYz5Rmk/VXSj6IODBHkWPxVJruXnhcHvjDGw0+okj0F17raY/5FnQsRF0A9penjR6EHFrxSKQVDxzN7q4Pba3yLHwbhlqmaXgKl95lMSq5e8hNsHWCsrY4bazHvh3aKgPBnflCQ8TKFyptVQpUK0oumAQ7n2qSDmRRztvuTB6LChFLCXo55n354u8Dd9UYrbasLv43T59FgfOMIEgIPQhctThYcbLIYisQvA01KCAKmOWXrF9+JK43m4U14CP7aZYuH0Bq9e+Z2ZIRRiQbCoQOCme3RgNzpA49cE+L1ee3yKX4q7N2/m3jxbZO8wm3jRy6Y+xQWNEBqb7ipiz4mGiNww09hO/wMPyUqUvc="
user_data = "${base64encode(file("utils/cloud-init-memcached.yaml"))}"
}

View File

@@ -12,7 +12,7 @@ resource "oci_core_instance" "sip-instance" {
create_vnic_details {
subnet_id = var.ocid_subnet_app
assign_public_ip = false
assign_public_ip = true
nsg_ids = [ oci_core_network_security_group.sip-servers-nsg.id ]
}

View File

@@ -12,7 +12,7 @@ resource "oci_core_instance" "solr-instance" {
create_vnic_details {
subnet_id = var.ocid_subnet_app
assign_public_ip = false
assign_public_ip = false`
nsg_ids = [ oci_core_network_security_group.solr-server-nsg.id ]
}

View File

@@ -1,31 +1,31 @@
#================================================================================================================================================================================================
# Parameters to authenticate with Oracle Cloud Infrastructure
tenancy_ocid = ""
user_ocid = ""
fingerprint = ""
private_key_path = "/home/opc/.oci/terraform_key.pem"
region = "sa-saopaulo-1"
tenancy_ocid = "ocid1.tenancy.oc1..aaaaaaaacjlkusgiuurcxl3aun3cubeohplc73z4dmzkrfxr2utn4jcmhoua"
user_ocid = "ocid1.user.oc1..aaaaaaaaa53ciz3hwz7hcy3elmwhshbgccip3escjrwfv7gj2epckfgi4ria"
fingerprint = "85:12:60:87:db:dd:c8:ca:69:98:22:93:6f:b0:22:2e"
private_key_path = "/Users/guilherme.silva/data/ORACLE/ssh-keys/terraform-guilherme-silva.pem"
region = "us-ashburn-1"
#================================================================================================================================================================================================
# The environment that you're creating resources for: test, dev, prod, or staging
environment="hml"
#================================================================================================================================================================================================
# The environment compartments
ocid_compartment_app = ""
ocid_compartment_database = ""
ocid_compartment_security = ""
ocid_compartment_networking = ""
ocid_compartment_app = "ocid1.compartment.oc1..aaaaaaaamrvydbfbzcb3ys7dln2sl2giax43iuf6zi6uny3inhtu46ummv7a"
ocid_compartment_database = "ocid1.compartment.oc1..aaaaaaaamrvydbfbzcb3ys7dln2sl2giax43iuf6zi6uny3inhtu46ummv7a"
ocid_compartment_security = "ocid1.compartment.oc1..aaaaaaaamrvydbfbzcb3ys7dln2sl2giax43iuf6zi6uny3inhtu46ummv7a"
ocid_compartment_networking = "ocid1.compartment.oc1..aaaaaaaamrvydbfbzcb3ys7dln2sl2giax43iuf6zi6uny3inhtu46ummv7a"
#================================================================================================================================================================================================
# The environment networks
ocid_vcn_3_tier = ""
ocid_subnet_app = ""
ocid_subnet_database = ""
ocid_subnet_public = ""
ocid_vcn_3_tier = "ocid1.vcn.oc1.iad.amaaaaaa6g6dsryau6nt4gzyxxyfk7p5lqfw7hpeb6mwcbyx6ajaofcr777a"
ocid_subnet_app = "ocid1.subnet.oc1.iad.aaaaaaaavq5dwjkkdiwqtrbz24thcsrng22bnj5swd2jaaxfuxrmmi4wfipq"
ocid_subnet_database = "ocid1.subnet.oc1.iad.aaaaaaaa2k4ptjjqoondfuyhr26llwzdj6apmml2fu63ar4kpglnshq6cj5a"
ocid_subnet_public = "ocid1.subnet.oc1.iad.aaaaaaaavq5dwjkkdiwqtrbz24thcsrng22bnj5swd2jaaxfuxrmmi4wfipq"
#================================================================================================================================================================================================
# The CIDR networks
cidr_subnet_app = "172.20.2.64/26"
cidr_subnet_database = "172.20.2.128/26"
cidr_subnet_web = "172.20.2.0/26"
cidr_subnet_app = "10.0.0.128/25"
cidr_subnet_database = "10.0.0.128/25"
cidr_subnet_web = "10.0.0.0/25"
cidr_anywhere = "0.0.0.0/0"
#================================================================================================================================================================================================
# SEI Variables
@@ -45,7 +45,7 @@ sip_amount_ocpus = "1"
sip_fqdn = ""
#================================================================================================================================================================================================
# SOLR Variables
solr_amount_instances = "2"
solr_amount_instances = "1"
solr_prefix_hostname = "solr-server"
solr_shape = "VM.Standard.E4.Flex"
solr_amount_memory = "8"
@@ -57,14 +57,14 @@ solr_fqdn = ""
memcached_amount_instances = "1"
memcached_prefix_hostname = "memcached-server"
memcached_shape = "VM.Standard.E4.Flex"
memcached_amount_memory = "2"
memcached_amount_memory = "4"
memcached_amount_ocpus = "1"
#================================================================================================================================================================================================
# JodServer Variables
jod_amount_instances = "1"
jod_prefix_hostname = "jod-server"
jod_shape = "VM.Standard.E4.Flex"
jod_amount_memory = "2"
jod_amount_memory = "4"
jod_amount_ocpus = "1"
#================================================================================================================================================================================================
# Public Load Balancer Variables
@@ -82,3 +82,15 @@ enable_waf = false
# Boot Volume Backup Variables
enable_boot_volume_backup = false
#================================================================================================================================================================================================
#Mysql Configurations
mysql_database_name = "eproc-1g-criminal"
mysql_database_version = "8.4.9"
mysql_database_user_name = "admin"
mysql_database_storage_size = "500"
mysql_shape = "MySQL.8"
mysql_backup_retention_in_days = "30"
mysql_highly_available = "false"
mysql_contacts_email = "contato@guilhermesilva.com.br"
mysql_enable_heatwave = "false"
mysql_amount_nodes_heatwave = "0"
mysql_heatwave_shape = "HeatWave.512GB"

View File

@@ -16,7 +16,7 @@ packages:
- vim
- wget
- libreoffice
- java-1.8.0-openjdk
- jdk1.8
- google-noto-fonts-common.noarch
- fontawesome-fonts.noarch
- google-noto-sans-cjk-ttc-fonts.noarch
@@ -26,9 +26,5 @@ runcmd:
- [ sed, -i, 's/^SELINUX.*/SELINUX=disabled/', /etc/selinux/config]
- [setenforce, 0]
- [localectl, set-locale, LANG=pt_BR.ISO-8859-1]
- [nmcli, conn, modify, "System enp0s5", ipv6.method, disabled]
- [nmcli, conn, modify, "Wired Connection", ipv6.method, disabled]
- [nmcli, conn, up, "Wired Connection"]
- [systemctl, restart, NetworkManager]
final_message: "Jod Instance ready after $UPTIME seconds"

View File

@@ -15,7 +15,7 @@ package_upgrade: true
packages:
- gcc
- curl-devel
- java-1.8.0-openjdk
- jdk1.8
- php-opcache.x86_64
- glibc-langpack-pt
- langpacks-pt
@@ -26,10 +26,6 @@ runcmd:
- [setenforce, 0]
- [sed, -i, 's/^SELINUX.*/SELINUX=disabled/', /etc/selinux/config]
- [localectl, set-locale, LANG=pt_BR.ISO-8859-1]
- [nmcli, conn, modify, "System enp0s5", ipv6.method, disabled]
- [nmcli, conn, modify, "Wired Connection", ipv6.method, disabled]
- [nmcli, conn, up, "Wired Connection"]
- [systemctl, restart, NetworkManager]
- [systemctl, enable, memcached.service, --now]
final_message: "MemCache Instance ready after $UPTIME seconds"

View File

@@ -41,7 +41,7 @@ write_files:
runcmd:
- sudo systemctl disable firewalld.service --now
- sudo setenforce 0
- sudo dnf install httpd mod_ssl @php:8.2 php-bcmath.x86_64 php-gd.x86_64 php-soap.x86_64 php-pecl-zip.x86_64 php-pear gcc curl-devel php-devel zlib-devel pcre-devel php-intl.x86_64 java-1.8.0-openjdk php-opcache.x86_64 glibc-langpack-pt langpacks-pt php-mysqlnd.x86_64 -y
- sudo dnf install httpd mod_ssl @php:8.2 php-bcmath.x86_64 php-gd.x86_64 php-soap.x86_64 php-pecl-zip.x86_64 php-pear gcc curl-devel php-devel zlib-devel pcre-devel php-intl.x86_64 jdk1.8 php-opcache.x86_64 glibc-langpack-pt langpacks-pt php-mysqlnd.x86_64 -y
- sudo pecl install igbinary memcache uploadprogress
- echo "extension=memcache" | sudo tee -a /etc/php.d/20-memcache.ini
- echo "extension=igbinary" | sudo tee -a /etc/php.d/20-igbinary.ini

View File

@@ -41,7 +41,7 @@ write_files:
runcmd:
- sudo systemctl disable firewalld.service --now
- sudo setenforce 0
- sudo dnf install httpd mod_ssl @php:8.2 php-bcmath.x86_64 php-gd.x86_64 php-soap.x86_64 php-pecl-zip.x86_64 php-pear gcc curl-devel php-devel zlib-devel pcre-devel php-intl.x86_64 java-1.8.0-openjdk php-opcache.x86_64 glibc-langpack-pt langpacks-pt php-mysqlnd.x86_64 -y
- sudo dnf install httpd mod_ssl @php:8.2 php-bcmath.x86_64 php-gd.x86_64 php-soap.x86_64 php-pecl-zip.x86_64 php-pear gcc curl-devel php-devel zlib-devel pcre-devel php-intl.x86_64 jdk1.8 php-opcache.x86_64 glibc-langpack-pt langpacks-pt php-mysqlnd.x86_64 -y
- sudo pecl install igbinary memcache uploadprogress
- echo "extension=memcache" | sudo tee -a /etc/php.d/20-memcache.ini
- echo "extension=igbinary" | sudo tee -a /etc/php.d/20-igbinary.ini
@@ -92,4 +92,3 @@ runcmd:
- sudo systemctl restart NetworkManager
final_message: "SIP Instance ready after $UPTIME seconds"

View File

@@ -14,38 +14,31 @@ package_upgrade: true
packages:
- lsof
- java-17-openjdk
- java-17-openjdk-devel
- jdk-17-headful
runcmd:
- [systemctl, disable, firewalld.service, --now]
- [setenforce, 0]
- [sysctl, -p]
- [mkdir, /dados]
- [localectl, set-locale, LANG=pt_BR.UTF-8]
- [wget, https://objectstorage.sa-saopaulo-1.oraclecloud.com/p/sCbg0kkAI_DOehFCLxUFg_LN9ypX0vXddkxj7A__uxtCrD1AkBUZnH-8ixMgCPCI/n/gr2g2eizhkzs/b/bucket-sei/o/solr-9.6.1.tgz, -O, /tmp/solr-9.6.1.tgz]
- [tar, -xvf, /tmp/solr-9.6.1.tgz, -C, /tmp/]
- [/tmp/solr-9.6.1/bin/install_solr_service.sh, /tmp/solr-9.6.1.tgz]
- [sed, -i, 's/^SELINUX.*/SELINUX=disabled/', /etc/selinux/config]
- [/usr/libexec/oci-growfs, -y]
- IP=$(ip -o -4 addr show | awk '{print $4}' | cut -d/ -f1 | sed -n '2p') && sed -i "s|^#SOLR_HOST.*|SOLR_HOST=${IP}|" /etc/default/solr.in.sh
- [sed, -i, 's/^#SOLR_JAVA_MEM.*/SOLR_JAVA_MEM="-Xms512m -Xmx28g"/', /etc/default/solr.in.sh]
- [sed, -i, 's/^#SOLR_JETTY_HOST.*/SOLR_JETTY_HOST="0.0.0.0"/', /etc/default/solr.in.sh]
- [sed, -i, 's/^#SOLR_REQUESTLOG_ENABLED.*/SOLR_REQUESTLOG_ENABLED=false/', /etc/default/solr.in.sh]
- [sed, -i, 's|^#SOLR_OPTS.*|SOLR_OPTS="$SOLR_OPTS -Dsolr.allowPaths=/dados|-Djava.net.preferIPv4Stack=true"|', /etc/default/solr.in.sh]
- [service, solr, stop]
- [systemctl, enable, --now, solr.service]
- [systemctl, start, solr.service]
- [nmcli, conn, modify, "System enp0s5", ipv6.method, disabled]
- [nmcli, conn, modify, "Wired Connection", ipv6.method, disabled]
- [nmcli, conn, up, "Wired Connection"]
- [systemctl, restart, NetworkManager]
- [/usr/libexec/oci-growfs, -y]
- systemctl disable firewalld.service --now
- adduser solr
- setenforce 0
- sysctl -p
- sed -i 's/^SELINUX.*/SELINUX=disabled/' /etc/selinux/config
- localectl set-locale LANG=pt_BR.UTF-8
- wget https://objectstorage.sa-saopaulo-1.oraclecloud.com/p/sCbg0kkAI_DOehFCLxUFg_LN9ypX0vXddkxj7A__uxtCrD1AkBUZnH-8ixMgCPCI/n/gr2g2eizhkzs/b/bucket-sei/o/solr-9.6.1.tgz -O /tmp/solr-9.6.1.tgz
- wget https://objectstorage.sa-saopaulo-1.oraclecloud.com/p/JYd25xRgeGj98YqYiPCETtOJ0eBVlytt0d7lzAN4wOqrh_YEk1lfUgM5tCdw9CMO/n/idzvuvikb5ym/b/bucket-gise-dev/o/solr-v2.tar.gz -O /tmp/solr.tar.gz
- tar -xvf /tmp/solr-9.6.1.tgz -C /tmp/
- tar -xvf /tmp/solr.tar.gz -C /tmp/
- sh /tmp/sei-solr-9.6.1.sh
- IP=$(ip -o -4 addr show | awk '{print $4}' | cut -d/ -f1 | sed -n '2p') && sed -i "s|^#SOLR_HOST.*|SOLR_HOST=${IP}|" /opt/solr/bin/solr.in.sh
- sed -i 's/^#SOLR_JAVA_MEM.*/SOLR_JAVA_MEM="-Xms512m -Xmx28g"/' /opt/solr/bin/solr.in.sh
- sed -i 's/^#SOLR_JETTY_HOST.*/SOLR_JETTY_HOST="0.0.0.0"/' /opt/solr/bin/solr.in.sh
- sed -i 's/^#SOLR_REQUESTLOG_ENABLED.*/SOLR_REQUESTLOG_ENABLED=false/' /opt/solr/bin/solr.in.sh
- sed -i '$a\SOLR_OPTS="$SOLR_OPTS -Dsolr.allowPaths=/dados -Djava.net.preferIPv4Stack=true"' /opt/solr/bin/solr.in.sh
- systemctl daemon-reload
- service solr stop
- systemctl enable --now solr.service
- systemctl start solr.service
- /usr/libexec/oci-growfs -y
final_message: "SOLR Instance ready after $UPTIME seconds"

View File

@@ -79,3 +79,16 @@ variable "cidr_subnet_app" {}
variable "cidr_subnet_database" {}
variable "cidr_subnet_web" {}
variable "cidr_anywhere" {}
# The MySQL Variables
variable "mysql_database_name" {}
variable "mysql_database_version" {}
variable "mysql_database_user_name" {}
variable "mysql_database_storage_size" {}
variable "mysql_shape" {}
variable "mysql_backup_retention_in_days" {}
variable "mysql_highly_available" {}
variable "mysql_contacts_email" {}
variable "mysql_enable_heatwave" {}
variable "mysql_amount_nodes_heatwave" {}
variable "mysql_heatwave_shape" {}