คู่มือ Preserve Data สำหรับ Container
คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี
ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง
คำสั่ง ชื่อเมนู Parameter และค่าตัวอย่างในกรอบ Code คงรูปแบบตามระบบเพื่อให้คัดลอกและตรวจสอบได้ถูกต้อง
Platform จะรักษาไฟล์ระบบที่ละเอียดอ่อนและการกำหนดค่า Container โดยอัตโนมัติเพื่อให้แน่ใจว่าการกำหนดค่าทั้งหมดของคุณจะปรากฏบน Container หลังจากการ Deploy ใหม่รายการเริ่มต้นประกอบด้วยข้อมูลต่อไปนี้:
-
กำหนดเองทั้งหมดที่ระบุไว้ก่อนหน้านี้การกำหนดค่า Container(ชอบเรียกใช้คำสั่ง,ลิงค์,ตัวแปรฯลฯ) จะไม่ได้รับผลกระทบ
- รวมถึงเนื้อหาของเล่ม(ค่าเริ่มต้นและแบบกำหนดเอง)
-
AutoFS และ NFSการกำหนดค่าที่เกี่ยวข้อง (/etc/autofs.Ruk-Com PaaS,/etc/auto.master,/etc/exports)
- การกำหนดค่า Firewall(/etc/nftables/container-definition.nft,/etc/nftables/ผู้ใช้กำหนด.nft,/etc/sysconfig/iptables-custom.php,/etc/sysconfig/iptables4-Ruk-Com PaaS,/etc/sysconfig/iptables6-Ruk-Com PaaS,/etc/iptables/rules.v4)
- ข้อมูลการเข้าถึง SSH(/root/.ssh/authorized_keys,/root/.ssh/authorized_keys2,/root/.ssh/id_rsa)
นอกจากนี้แต่ละContainer ที่จัดการโดย Platformมาพร้อมกับความพิเศษ/etc/Ruk-Com PaaS/redeploy.confไฟล์. โดยแสดงรายการการกำหนดค่าเฉพาะ Stack ของ Software ที่จำเป็นเพื่อให้แน่ใจว่า Container ทำงานได้การตั้งค่าเหล่านี้ยังได้รับการเก็บรักษาไว้โดยอัตโนมัติโดย Platform ในระหว่างการ Deploy Container อีกครั้งคุณสามารถเข้าถึงไฟล์ได้อย่างง่ายดาย (เช่นผ่านทางลัดรายการโปรดโดยเฉพาะในไฟล์ตัวจัดการไฟล์แบบฝัง) และแก้ไขหากจำเป็น
ที่Deploy ใหม่.confไฟล์จะถูกแบ่งออกเป็นส่วนระบบและส่วนที่กำหนดเอง
ไฟล์และโฟลเดอร์ระบบ
แต่ละ Container ที่จัดการ Platform จะมีรายการไฟล์การกำหนดค่าระบบที่กำหนดไว้ล่วงหน้าซึ่งควรได้รับการเก็บรักษาไว้ในระหว่างการ Deploy ใหม่คุณไม่จำเป็นต้องเปลี่ยนรายการนี้ด้วยตนเองเว้นแต่คุณจะรู้แน่ชัดว่ากำลังทำอะไรอยู่
รายการที่แน่นอนจะแตกต่างกันไปตามกลุ่ม Software ต่างๆแต่ยังมีไฟล์การกำหนดค่าทั่วไปหลายไฟล์ที่รวมอยู่ใน Container ทั้งหมด:
- /etc/Ruk-Com PaaS/redeploy.conf- บันทึกการกำหนดค่าการ Deploy ใหม่ในปัจจุบัน (เพื่อจัดเก็บรายการไฟล์และ Directory ที่ต้องการในระหว่างการ Deploy Container ครั้งต่อไปแต่ละครั้ง)
- ${home}/.bash_profile- มีการตั้งค่าเชลล์ SSH เริ่มต้น (ข้อความแนะนำเชลล์ไฟล์การกำหนดค่าที่จำเป็นที่จะดึงข้อมูลฯลฯ)
- /etc/nftables/container-definition.nft- มีกฎ Firewall เฉพาะ Image เริ่มต้น
- /etc/nftables/ผู้ใช้กำหนด.nft- ตั้งค่ากฎ Firewall แบบกำหนดเองที่ผู้ใช้กำหนด
บันทึก:สำหรับContainer ที่ใช้ Centos 7 รุ่นเก่าจะใช้การกำหนดค่า Firewall ต่อไปนี้แทน:
* _**/etc/sysconfig/iptables**_ - keeps the default firewall rules
* _**/etc/sysconfig/iptables-custom**_ - contains custom firewall rules
- /var/lib/Ruk-Com PaaS/keys- ร้านค้าอัปโหลดคีย์ส่วนตัว SSHซึ่งจำเป็นในการเข้าถึง Container ผ่าน SSH และสำหรับการโต้ตอบกับ Container อื่น
อีกด้วย,Deploy ใหม่.confสำหรับ Node แต่ละประเภทจะมีไฟล์เฉพาะ Stack ที่แตกต่างกัน
| สแต็ค | เส้นทาง |
|---|---|
| แมวตัวผู้ | /opt/tomcat/conf/Ruk-Com PaaS-ha.xml /opt/tomcat/conf/Ruk-Com PaaS-ssl.xml /opt/tomcat/conf/tomcat-env.sh /opt/tomcat/conf/variables.conf /opt/tomcat/temp/ /var/spool/cron/tomcat |
| ทอมอี | /opt/tomcat/temp/ /var/spool/cron/tomcat |
| GlassFish | /home/Ruk-Com PaaS/.ssh /home/Ruk-Com PaaS/.ssh2 /opt/glassfish/glassfish/domains/domain1/applications /opt/glassfish/glassfish/domains/domain1/config/admin-keyfile /opt/glassfish/glassfish/domains/domain1/config/domain.xml /opt/glassfish/hazelcast.xml /opt/glassfish/glassfish/domains/domain1/config/variables.conf /opt/glassfish/glassfish/domains/domain1/docroot /opt/glassfish/glassfish/nodes /root/contexturl /var/spool/cron/glassfish /var/lib/Ruk-Com PaaS/hooks |
| โกลัง | /home/Ruk-Com PaaS /var/lib/Ruk-Com PaaS/app.info /var/lib/Ruk-Com PaaS/keys /var/lib/Ruk-Com PaaS/vcs /var/spool/cron/golang |
| ปายรา | /home/Ruk-Com PaaS/.ssh /home/Ruk-Com PaaS/.ssh2 /opt/payara/glassfish/domains/domain1/applications /opt/payara/glassfish/domains/domain1/config/admin-keyfile /opt/payara/glassfish/domains/domain1/config/domain.xml /opt/payara/hazelcast.xml /opt/payara/glassfish/domains/domain1/config/variables.conf /opt/payara/glassfish/domains/domain1/docroot /opt/payara/glassfish/nodes /root/contexturl /var/spool/cron/payara /var/lib/Ruk-Com PaaS/hooks |
| รองเท้าบูทสปริง | /home/Ruk-Com PaaS/conf /home/Ruk-Com PaaS/APP /var/lib/Ruk-Com PaaS/keys /var/spool/cron/jvm |
| อาปาเช่ PHP | สำรอง:/etc/php.ini /etc/php.d/ /var/spool/cron/apache /var/www/.ssh/ |
| อาปาเช่รูบี้ | /var/lib/Ruk-Com PaaS/env /var/spool/cron/apache |
| โซฟาเบด | /เลือก//ฯลฯ/ |
| มาเรียดีบี | /etc/my.cnf /etc/php.ini /var/lib/mysql/.ssh/ /var/spool/cron/mysql |
| มาเวน | /opt/maven/.ssh/ /var/spool/cron |
| เมค Cache | /etc/sysconfig/memcached.conf |
| MySQL | /etc/my.cnf /etc/php.ini /var/lib/mysql/.ssh/ /var/spool/cron/mysql |
| NGINX (Load Balancer) | /etc/dhcp/dhcpd.conf /etc/nginx/conf.d /etc/nginx/neighbors /etc/nginx/nginx-Ruk-Com PaaS.conf /etc/nginx/tcpmaps/mappings.xml /etc/nginx/upstreams /var/lib/nginx/.ssh/ /var/spool/cron/nginx /var/lib/Ruk-Com PaaS/SSL |
| NGINX PHP | การสำรองข้อมูล:/etc/php-fpm.conf การสำรองข้อมูล:/etc/php.ini /etc/php.d/ /etc/sysconfig/php-fpm /var/lib/nginx/.ssh/ /var/spool/cron/nginx |
| NGINX รูบี้ | /var/lib/Ruk-Com PaaS/env /var/spool/cron/nginx |
| NodeJS | /home/Ruk-Com PaaS//.ssh/ home/Ruk-Com PaaS//.ssh2/ var/spool/cron/nodejs /home/Ruk-Com PaaS/ROOT |
| เพอร์โคนาดีบี | /etc/my.cnf /etc/php.ini /var/spool/cron/mysql |
| PostgreSQL | /etc/php.ini /var/lib/pgsql/.ssh/ /var/spool/cron/postgres ${home}/lib/ ${home}/share/ |
| วานิช | /etc/nginx /etc/วานิช /etc/sysconfig/วานิช /var/lib/วานิช /var/spool/cron/วานิช |
| ไวลด์ฟลาย | /opt/contexturl /home/Ruk-Com PaaS/.ssh/ /var/spool/cron/wildfly /opt/wildfly/domain /opt/wildfly/standalone /opt/wildfly/welcome-content/index.html /var/lib/Ruk-Com PaaS/hooks |
ไฟล์และโฟลเดอร์แบบกำหนดเอง
คุณสามารถเสริมรายการการกำหนดค่าระบบเริ่มต้นด้วยไฟล์และโฟลเดอร์ที่คุณกำหนดเอง (หากจำเป็น) เปิดDeploy ใหม่.confไฟล์และเพิ่มรายการลงใน “ไฟล์และโฟลเดอร์ที่กำหนดเอง” พร้อมเส้นทางแบบเต็มไปยังรายการที่ต้องการ (แต่ละรายการควรอยู่ในบรรทัดแยกกัน)
ขอแนะนำให้เพิ่มเฉพาะไฟล์การกำหนดค่าระบบที่จำเป็นเพื่อให้แน่ใจว่า Container สามารถทำงานได้ในระหว่างการ Deploy ใหม่ใช้ปริมาณ Containerสำหรับกรณีอื่นๆ (เช่นเพื่อเก็บข้อมูลการสมัครของคุณ)
หากจำเป็นคุณสามารถเก็บไฟล์การกำหนดค่าที่มีอยู่และเป็นเวอร์ชันใหม่ได้ (เช่นก่อนและหลังการ Deploy ใหม่) กล่าวคือสำเนาสำรองของไฟล์การกำหนดค่าที่มีอยู่จะถูกสร้างขึ้นก่อนที่จะแทนที่ไฟล์ต้นฉบับด้วยเวอร์ชันจากแท็กใหม่
หากต้องการสร้างข้อมูลสำรองคุณต้องระบุเส้นทางไปยังไฟล์ที่จำเป็นDeploy ใหม่.confและเพิ่ม “การสำรองข้อมูล:” คำนำหน้าบันทึก:
คัดลอกข้อความ
backup:{path_to_file}
บันทึก:การดำเนินการนี้ใช้ได้กับไฟล์เท่านั้น (ไม่ใช่ Directory)
หลังจากการ Deploy ใหม่การกำหนดค่าจาก Container เก่าสามารถรับรู้ได้อย่างง่ายดายโดยเหมาะสม “การสำรองข้อมูล" หรือ "การประทับเวลา” ส่วนขยายสามารถใช้สำหรับการย้อนกลับทันทีเมื่อไม่เข้ากันกับการกำหนดค่าใหม่หรือเพื่อการวิเคราะห์การเปลี่ยนแปลง:
- {ไฟล์_ชื่อ}- ไฟล์จาก Image เป้าหมายการ Deploy ใหม่ (จากแท็กใหม่)
- {file_name}.{ประทับเวลา}- เวอร์ชันสำรองของไฟล์ที่สร้างขึ้นก่อนการดำเนินการ Deploy ใหม่ (ไฟล์แยกต่างหากสำหรับการ Deploy ซ้ำแต่ละครั้งกับแท็กอื่น)
- {file_name}.สำรอง- การสำรองข้อมูลไฟล์ล่าสุด (แทนที่การสำรองข้อมูลที่มีชื่อเดียวกันก่อนหน้านี้โดยอัตโนมัติ)
ด้วยวิธีนี้คุณสามารถสลับไปใช้การตั้งค่าที่ใช้ก่อนหน้านี้ได้อย่างง่ายดายโดยการแทนที่ไฟล์ด้วยข้อมูลสำรอง (ผ่านการเปลี่ยนชื่อไฟล์หรือการคัดลอกเนื้อหา)
